87
Diskretna matematika I N predavanja ak. god. 2011./2012. PMF–M O

Diskretna matematika (Skripta)

Embed Size (px)

DESCRIPTION

Diskretna matematika: vise opisa otvori file

Citation preview

Page 1: Diskretna matematika (Skripta)

Diskretnamatematika

I N

predavanja ak. god. 2011./2012.

PMF–M O

Page 2: Diskretna matematika (Skripta)
Page 3: Diskretna matematika (Skripta)

Sadržaj

0 Uvod 30.1 Neki primjeri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1 Prebrojavanja 71.1 Uvod i osnovni principi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Broj podskupova . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101.3 Broj podskupova ksirane veličine (binomni koe cijenti) . . . . . . . . . 131.4 Permutacije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.5 Multiskupovi i multinomni koe cijenti . . . . . . . . . . . . . . . . . . . . 221.6 Particije skupova (Relacije na skupovima) . . . . . . . . . . . . . . . . . . 261.7 Generiranje kombinatornih objekata . . . . . . . . . . . . . . . . . . . . . 29

2 Rekurzije, funkcije izvodnice i formula uključivanja–isključivanja 352.1 Uvod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.2 Fibonaccijevi brojevi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362.3 Linearne rekurzije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402.4 Funkcije izvodnice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.4.1 Catalanovi brojevi . . . . . . . . . . . . . . . . . . . . . . . . . . . 462.4.2 Bellovi brojevi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

2.5 Složenost algorirtama za sortiranje . . . . . . . . . . . . . . . . . . . . . . 522.5.1 Bubblesort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522.5.2 Mergesort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522.5.3 uicksort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

2.6 Formula uključivanja–isključivanja . . . . . . . . . . . . . . . . . . . . . . 55

3 Teorija grafova 593.1 Uvod i osnovne de nicije . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.2 Stabla i šume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

3.2.1 Minimalna razapinjuća stabla . . . . . . . . . . . . . . . . . . . . . 713.3 Planarnost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

1

Page 4: Diskretna matematika (Skripta)

S

3.3.1 Platonova tijela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773.4 Eulerovi i Hamiltonovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . 79

3.4.1 Eulerovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793.4.2 Hamiltonovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . 803.4.3 Problem trgovačkog putnika . . . . . . . . . . . . . . . . . . . . . 80

Indeks 83

Bibliogra ja 85

2

Page 5: Diskretna matematika (Skripta)

0Uvod

Sadržaj kolegija se sastoji od dviju cjelina: kombinatorike i teorije grafova. Sam naziv dis-kretna matematika dolazi od toga što obuhvaća proučavanje ne–kontinuniranih matema-tičkih objekata (koji se proučavaju u analizi i geometriji).

Kombinatorika (lat. combinare) se bavi razmještanjem objekata po određenim pravi-lima. U pravilu nas zanima da li je određeni razmještaj moguć, i ukoliko jest, na koliko senačina može postići.

Teorija grafova se bavi matematičkom strukturom zvanom graf koja opisuje poveza-nost sustava; tipično pomoću grafovamodeliramo transportne ili komunikacijske sustave,električne ili internetske mreže, ali i molekule ...

Kolegij se sastoji od tri dijela.Uprvomdijelu obrađuju se problemi prebrojavanja koristeći osnovne principe kao što

su princip bijekcije, sume, produkta i slično. Obrađuju se problemi vezani za podskupove,permutacije i particije.

Drugi dio je također posvećen prebrojavanju, ali s korištenjem naprednijih tehnikakao što su rekurzivne formule, funkcije izvodnice i formula uključivanja i isključivanja.

Treći dio je kratak uvod u teoriju grafova, s naglaskom na probleme vezane uz stabla,planarnost i postojanje Eulerovih tura i Hamiltonovih staza.

0.1 Neki primjeriPrimjer 0.1.1 (Deranžmani) Ukoliko imamon pisama in adresiranih omotnica, na ko-liko načina možemo staviti pisma u omotnice, tako da ni jedno pismo ne dođe u odgova-rajuću omotnicu?

Rješenje: Ukupan broj načina na koje možemo staviti pisma u omotnice je broj permu-tacija n objekata, a taj broj je n!. Odgovor na gornje pitanje je najbliži cijeli broj brojun!/e. ◻

Primjer 0.1.2 (Kirkmano e školarke) Petnaest školarki se šeta svakog dana u pet grupapo tri. Složite njihove šetnje u jednom tjednu tako da svaki par djevojčica šeta zajedno ugrupi samo jednom.

3

Page 6: Diskretna matematika (Skripta)

0. U

Rješenje: Ukoliko je to uopće moguće, trebat će im sedam dana. To je stoga što svakadjevojka mora šetati jednom s ostalih četrnaest, a svaki dan šeta s dvije. Ali pitanje da li sutakve šetnje uopće moguće je dosta teže. Problem je postavio i riješio Kirkman 1847. Tek1967. dokazano je da opće rješenje postoji točno onda kad je broj djevojčica kongruentans 3 modulo 6. ◻

Primjer 0.1.3 (Eulero i časnici) Dano nam je 36 časnika, koji pripadaju u 6 pukovnija iimaju 6 činova (svakoj kombinaciji čina i pukovnije odgovara točno jedan časnik). Moguli časnici biti posloženi u 6×6matricu, tako da se u svakom retku i stupcu svaki čin i svakapukovnija javljaju točno jednom?

Rješenje: Euler je ovaj problem postavio 1782. Problem nije bio riješen sve do 1900. Od-govor je ne (Euler je vjerovao da je odgovor ne, ali to nije uspio dokazati). Generaliziraniproblem s n2 časnika s n činova i pukovnija je rješen tek 1960. Rješenje postoji za sve nosim n = 2 i n = 6. ◻

Primjer 0.1.4 (Ramseyeva igra) Ova igra za dvije osobe zahtijeva list papira i dva pisalarazličitih boja. Najprije se nacrta 6 točaka na papiru, tako da ni jedna trojka točaka ne ležina istom pravcu. Tada igrači uzimaju svoja pisala i svaki naizmjenice povlači crtu izmeđudviju točaka. Prvi igrač koji nacrta trokut gubi igru (računaju se samo trokuti s vrhovimau odabranim točkama). Da li ova igra može završiti remijem?

Rješenje: Ne. Probajte igrati ovu igru. Koja je dobra strategija? ◻

Primjer 0.1.5 (Königsberški mosto i) U 17. stoljeću postojalo je sedam mostova na ri-jeci Pregel u istočnopruskom gradu Königsbergu (današnji Kalinjgrad u Rusiji). Građanitog grada su pokušavali napraviti šetnju od svoje kuće tako da svaki od sedammostova pri-jeđu točno jednom i da se vrate kući. Kako nikako nisu uspijevali, pitali su Eulera je li touopće moguće. Skica situacije u Königsbergu je bila:

..D

.

A

.

B

.

C

Rješenje: Euler je gornju skicu sveo na nešto što se danas zove graf:

4

Page 7: Diskretna matematika (Skripta)

0.1. Neki primjeri

...A

.

.

B .

.

C

.

.

D

Onda je rezonirao ovako: ukoliko željena šetnja postoji, tada svaki put kad neki vrh posje-timo pomoću jednog brida, drugi brid bi trebali upotrijebiti da bi smo napustili taj vrh. Toznači da bi svaki vrh trebao imati paran broj bridova. Kako to u ovom slučaju nije istina,tražena šetnja nije moguća. ◻

Zadatak 0.1Može li se skica „kućice” . nacrtati u jednom potezu bez podizanja olovke s papira?

Zahvaljujem se svima koji su pomogli da se isprave brojne greške u tekstu, naročitoprof. Vedranu Krčadincu.

5

Page 8: Diskretna matematika (Skripta)
Page 9: Diskretna matematika (Skripta)

1Prebrojavanja

1.1 Uvod i osnovni principiPrimjer 1.1.1 Ana je pozvala na rođendansku zabavu Peru, Karla, Dijanu, Evu, Zdenka iFranju. Kad su gosti stigli, međusobno su se rukovali. Do koliko rukovanja je došlo?

Rješenje: Kako se svaki od njih sedmero rukovao s preostalih šestero, dolazimo do broja

6 +⋯ + 6´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶

7 puta

= 6 ⋅ 7 = 42.

Ali time smo svako rukovanje brojali dvaput, pa je pravi odgovor 42/2 = 21. ◻

Tada krenu sjesti za stol. Ana sjedne za čelo stola, a ostali se dogovore da će se razmještatiza stolom svakih pola sata sve dok ne isprobaju sve različite razmještaje. Koliko će trajatinjihova zabava?

Rješenje: Dakle, trebaodrediti broj različitih razmještaja.Krenimood stolice koja je zdesnaAni. Na tu stolicu može sjesti bilo tko od šestoro gostiju. Ukoliko je, recimo, Pero sjeo doAne, na sljedeću stolicu zdesnamože sjesti bilo tko od preostalih petoro gostiju. AkoKarlosjedne na stolicu zdesna Ani, opet imamo pet mogućnosti za sljedeću stolicu, dakle brojnačina na koje možemo posjesti ljude na prve dvije stolice je

5 +⋯ + 5´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶

6 puta

= 6 ⋅ 5 = 30.

Slično, bez obzira tko je sjeo na prve dvije stolice, na treću stolicu može sjesti bilo tkood preostalih četvero gostiju, što nam daje 6 ⋅ 5 ⋅ 4 mogućnosti. Nastavimo li tim putemrezonirati, stižemo do 6 ⋅ 5 ⋅ 4 ⋅ 3 ⋅ 2 ⋅ 1 = 6! = 720mogućnosti. Dakle, njihova zabava ćetrajati 360 sati. što je 15 dana. ◻

Poslije večere dolazi ples (radi se o staromodnim ljudima koji plešu u parovima i par uvijekčine ljudi različitih spolova). Koliko se mogućih parova može formirati?

7

Page 10: Diskretna matematika (Skripta)

1. P

Rješenje: Kako postoje tri djevojke, a svaka može odabrati jednog od četvorice dečkiju,dolazimo do broja od 3 ⋅ 4 = 12 različitih parova. ◻

Poslije nekoliko dana plesanja Ana, Pero, Karlo i Dijana odluče igrati bridge. U nekomtrenutku Karlo kaže: čini mi se da sam dobio iste karte kao i u prethodnom dijeljenju. Tomi se čini teško moguće, odvrati Dijana. Koliko je to vjerojatno? (Špil ima 52 karte, svakiigrač dobija 13 karata.)

Rješenje: Rezoniramo na sljedeći način. Zamislimo da Karlo vuče jednu po jednu kartuiz špila. Prva karta može biti bilo koja od 52 karte, druga karta bilo koja od preostalih51, ... Dakle, dolazimo do 52 ⋅ 51⋯40 mogućnosto za 13 karata. Ali ovdje smo ubrojili imnogo istih „ruku”. Ukoliko, na primjer, Eva kibicira i gleda u Karlove karte nakon što ihje on posložio i pokuša pogoditi kojim ih je redom izvukao, dolazi do 13 ⋅ 12⋯1 = 13!mogućnosti. To znači da je broj različitih „ruku” u bridge–u jednak

52 ⋅ 51⋯4013!

= 635013559600.

Dakle, stvarno je mala vjerojatnost da je Karlo izvukao dvaput za redom iste karte. ◻

Na koncu odluče igrati šah. Ana, koja je odlučila da će samo gledati, namjesti tri šahovskeploče. Na koliko načina se mogu složiti parovi? (Ne računamo kao različito sparivanjeukoliko dva čovjeka za istom pločom zamijene mjesta i nije važno koji par sjedi za kojompločom.)

Rješenje (prva verzija): Krenemoodbroja 720koji nam je dao broj različitih razmještajaza stolom. Taj broj ćemo podijeliti s brojem razmještaja za stolom koje smatramo istim ukontekstu šahovskih parova. Najprije, možemo tri šahovske ploče posložiti na šest različi-tih načina tako da ne mijenjamo šahovske parove. Također, svaki par može, ali i ne mora,promijeniti strane, što daje 2 ⋅ 2 ⋅ 2 = 8 različitih načina. Dakle, 720 razmještaja dolazi ugrupu od 6 ⋅ 8 = 48, pa je traženi broj 720/48 = 15. ◻

Rješenje (druga verzija): Kako je Pero najmlađi, pustimo njega prvog da odredi svogpartnera. On to može učiniti na pet načina. Tko je najmlađi među ostalim bira sljedećii može odabrati partnera na tri načina, i time smo odredili parove. Dakle, traženi broj je5 ⋅ 3 = 15. ◻

Ostatak ovog poglavlja ćemo potrošiti na formalizaciju i generalizaciju problema izprethodnog primjera.

Ono što možemo uočiti je da umjesto Ane i njenog društva možemo gledati bilo kojiskup od sedam elemenata, na primjer {1,2, . . . ,7}. Očita generalizacija gornjih problemaje da umjesto broja sedam uzmemo proizvoljan n ∈ N. Stoga ćemo se u nastavku poglavlja(a i cijelog kolegija) baviti prebrojavanjemrazličitih objekata vezanih za skup{1,2, . . . , n}za proizvoljan prirodan broj n. Osnovni principi kojima ćemo se služiti su sljedeći.

8

Page 11: Diskretna matematika (Skripta)

1.1. Uvod i osnovni principi

Princip dvostrukog brojanja Ukoliko isti skup prebrojimo na dva različita načina, od-govori će se poklapati.

Princip bijekcije Dva skupa su iste veličine (imaju isti broj elemenata, isti kardinalitet)akko postoji bijekcija između njih.

Princip sume Broj elemenata unijemeđusobno disjunktnih skupova jednak je sumi brojaelemenata skupova. Formalno, za S1, . . . , Sn, Si ∩ Sj = ∅ za i ≠ j, vrijedi

∣n

⋃i=1

Si∣ =n

∑i=1∣Si∣.

Princip produkta (jednostavna formulacija) Broj elemenataunijemmeđusobnodisjun-ktnih skupova, od kojih svaki ima n elemenata je nm.

Princip produkta (općenita formulacija)

Skupovna verzija Neka je n ∈ N, a S1, . . . , Sn konačni skupovi. Tada vrijedi

∣n

∏i=1

Si∣ =n

∏i=1∣Si∣,

gdje∏ni=1 Si = S1×⋯×Sn označavaKartezijev produkt skupovaS1, . . . , Sn.

Funkcijska verzija Neka je S skup funkcija f s {1,2, . . . , n} u neki skupX . Pre-postavimo da postoji k1 izbora za vrijednost f(1), k2 izbora za vrijednostf(2), ...,kn izbora za vrijednost f(n). Tada je broj elemenata skupaS k1⋯kn.

Računalna verzija Neka je S skup lista duljine n sa svojstvima:

• postoji izbor od k1 različitih prvih elemenata liste u S,• za svaki i > 1 i svaki izbor prvih i − 1 elemenata liste u S, postoji izbor

od ki različitih i–tih elemenata liste

Tada postoji k1⋯kn listi u S.

Princip kvocijenta Ukoliko skup S ima particiju od q skupova, od kojih svaki ima r ele-menata, onda vrijedi q = ∣S∣/r.Princip kvocijenta je zapravo samo reformulacija principa produkta, ali dobro ga jeimati na umu kao zaseban princip.

Princip razlike Ukoliko jeX konačan skup i S ⊆X , onda je ∣X ∖ S∣ = ∣X ∣ − ∣S∣.

Svi ovi principi su jednostavne posljedice osnovnih svojstava skupova.

Ovdje (a tako ćemo i nadalje) koristimo notaciju ∣S∣ = broj elemenata skupa S.

9

Page 12: Diskretna matematika (Skripta)

1. P

Zadatak 1.1Koje smo principe zapravo koristili pri rješavanju problema iz Primjera 1.1.1?

Još dva principa ćemokoristiti u ovomkolegiju. Prvi smo već sreli pa ćemo ga samonavesti.

Princip (matematičke) indukcije

Drugi princip je

Dirichletov princip Ukoliko skup S koji ima više od n elemenata particioniramo u nskupova (tj. odaberemo particiju skupa S koja ima n elemenata), tada barem jedanelement particije ima više od jednog elementa.Dokaz trivijalno slijedi po kontrapoziciji.Postoji i generalizacija ovog principa.Ukoliko skupS koji ima više od kn elemenataparticioniramo u n skupova, tada barem jedan element particije ima barem k + 1elemenata. Dokaz je, naravno, identičan.

Zadatak 1.2Pokažite da u skupu od šestero ljudi postoji barem troje ljudi koji se svi međusobno znaju,ili barem troje ljudi od kojih se nitko međusobno ne pozna (Pretpostavljamo da ukolikoosobaA zna osobuB, onda i osobaB zna osobuA.)

1.2 Broj podskupovaSada ćemo formulirati naš prvi opći kombinatorni problem:Koliko imapodskupova skupasn elemenata? Ili formalnije: Koji je kardinaltet partitivnog skupa skupaS, ako je ∣S∣ = n?

Krenimo od malih skupova.Prazan skup ( koji je isto skup) ima samo jedan podskup:∅.Jednočlan skup, recimo {a}, ima dva podskupa:∅, {a}.Dvočlani skup, recimo {a, b}, ima četiri podskupa:∅, {a}, {b}, {a, b}.Tročlani skup, recimo {a, b, c}, ima osam podskupova: ∅, {a}, {b}, {c}, {a, b}, {b, c},{a, c}, {a, b, c}.Dakle, imamo sljedeću tablicu:

broj elemenata 0 1 2 3broj podskupova 1 2 4 8 .

Pomoću ove tablice možemo lako naslutiti da je traženi broj 2n, što ćemo i dokazati (ito na više načina).

Pretpostavimo da je skup koji nas zanimaA = {a1, . . . , an}. Kreirajmo sada neki pod-skup odA. U njega možemo, ali i ne moramo uključiti element a1, dakle u ovom korakumožemo donijeti dvije različite odluke. Bez obzira što odlučili o a1, možemo ali i ne mo-ramo uključiti a2 u taj podskup, znači opet imamodvije različite odluke, stoga po principuprodukta brojmogućnosti vezanih zaa1 ia2 je2⋅2 = 4. Sadanastavimoovim rezoniranjemi dolazimo do 2n. Time smo dokazali sljedeći teorem.

10

Page 13: Diskretna matematika (Skripta)

1.2. Broj podskupova

Teorem 1.2.1 Skup od n elemenata ima 2n podskupo a.

Prethodni dokaz ovog teorema možemo ilustrirati sljedećim dijagramom za slučaj skupa{a, b, c}.

..a ∈ A.

b ∈ A

.

c ∈ A

.

{a, b, c}

.

DA

.

{a, b}

.

NE

.

DA

.

c ∈ A

.

{a, c}

.

DA

.

{a}

.

NE

.

NE

.

DA

.

b ∈ A

.

c ∈ A

.

{b, c}

.

DA

.

{b}

.

NE

.

DA

.

c ∈ A

.

{c}

.

DA

.

.

NE

.

NE

.

NE

Dokaz (druga verzija): U ovom dokazu ćemo numerirati podskupove, tj. naći ćemo bi-jekciju s {0,1, . . . ,2n − 1} uP(S). Ideju ćemo opet ilustrirati na skupu {a, b, c}. Za od-govarajući podskup gledamonjegove elemente jedan po jedan i pišemo 1 ukoliko podskupsadrži a, a 0 ukoliko ne sadrži, i tako dalje za b i c. Dakle, podskupu {a, c} pridružujemotrojku brojeva 101. Na taj način svakom podskupu pridružujemo jedan niz od tri brojke.Kako se ti nizovi sastoje od nula i jedinica, trebali bi nas podsjetiti na binarni zapis brojeva.Ukoliko izbrišemo vodeće nule iz našeg zapisa, uistinu i dobijemo binarni zapis:

∅⇐⇒ 000⇐⇒ (0)2 = 0{c}⇐⇒ 001⇐⇒ (1)2 = 1{b}⇐⇒ 010⇐⇒ (10)2 = 2{b, c}⇐⇒ 011⇐⇒ (11)2 = 3{a}⇐⇒ 100⇐⇒ (100)2= 4{a, c}⇐⇒ 101⇐⇒ (101)2= 5{a, b}⇐⇒ 110⇐⇒ (110)2= 6{a, b, c}⇐⇒ 111⇐⇒ (111)2= 7

Time smo konstrirali traženu bijekciju za n = 3.Lako se vidi da ovaj postupak možemo proširiti na proizvoljan n. Formalno, konstru-

iramo bijekciju između partitivnog skupa skupa S i skupa funkcija sa S u {0,1}. FunkcijafY koja odgovara skupu Y je zadana pomoću

fY (x) =⎧⎪⎪⎨⎪⎪⎩

1 x ∈ Y,0 x ∉ Y.

Obratno, funkciji f ∶ S → {0,1} odgovara skup Y = {x ∈ S ∶ f(x) = 1}. Funkcija fY sezove karakteristična funkcija skupa Y .

11

Page 14: Diskretna matematika (Skripta)

1. P

Ukoliko je (a uvijek to možemo pretpostaviti) S = {0,1, . . . , n − 1}, tada funkcijuf ∶ S → {0,1}možemo predstaviti pomoću n–torke (f(0), . . . , f(n− 1)). Dakle, pod-skupove od S možemo predstaviti n–torkama koje se sastoje od nula i jedinica.

Sljedeći korak je da predstavimo te n–torke kao zapis u bazi 2 cijelog brojaN = f(n − 1)2n−1 +⋯ + f(1)2 + f(0). ◻

Zadatak 1.3Dovršite prethodni dokaz.

Ova verzija dokaza nam daje zgodnu numeraciju podskupova od {0, . . . , n − 1}. Odgo-varajući podskup Sk lako konstruiramo iz binarnog zapisa broja k. Također, skup Sk ovisisamo o k, a ne o n.

Dokaz (treća verzija): Dokazat ćemo teorem pomoću indukcije. Baza indukcije je očitozadovoljena. Pretpostavimo da tvrdnja teorema vrijedi za skupove sn−1 elemenata. Nekaje S skup s n elemenata. Fiksirajmo neki element a ∈ S. Podijelimo podskupove od S udvije klase: oni koji sadrže a i oni koji ne sadrže a. Oni podskupovi koji ne sadrže a supodskupovi skupa S′ = S ∖ {a} koji ima n − 1 elemenata, stoga takvih podskupova ima2n−1. Oni podskupovi koji sadrže a se mogi napisati kao unija od {a} i nekog podskupa izS′, stoga i takvih ima 2n−1. Dakle, po principu sume, broj poskupova odS je 2n−1+2n−1 =2n, čime smo dokazali korak indukcije. ◻

Dokaz (četvrta verzija): Neka jeF (n)broj podskupovan–članog skupa.Uočimoda svepodskupove od {0, . . . , n} možemo dobiti iz podskupova skupa {0, . . . , n − 1} tako dasvaki takav skup proširimona dvamoguća načina: ili ništa ne dirajući ili ubacujući elementn. Dakle, vrijedi relacija F (n) = 2F (n − 1). Kako je F (0) = 1, lako se vidi da je F (n) =2n. ◻

Zbog čega smo dokazivali teorem 1.2.1 na toliko različitih načina? Zbog toga što je svakidokaz ilustrirao jednu tehniku dokazivanja kombinatornih teorema:

prvi dokaz svođenje dokaza na prebrojavanje nezavisnih odluka

drugi dokaz svođenje dokaza na nalaženje bijekcije s podskupa prirodnih brojeva u skupkoji prebrojavamo

treći dokaz dokazivanje pomoću matematičke indukcije

četvrti dokaz kreiranje rekurzivne formule

Sve te metode ćemo često koristiti u nastavku kolegija.

12

Page 15: Diskretna matematika (Skripta)

1.3. Broj podskupova ksirane veličine (binomni koe cijenti)

1.3 Broj podskupova ksirane veličine (binomnikoe cijenti)

Teorem 1.3.1 Neka je S n–člani skup. Broj podskupo a s k (0 ≤ k ≤ n) elemenata od S je(nk) = n!/k!(n−k)!.

Napomena: Podsjetimo se da je po konvenciji 0! = 1.

Dokaz: Na koliko načinamožemo iz skupaS odabrati k elemenata?Očito postojinmo-gućih izbora za „prvi” element, (n− 1) za „drugi” element,..., te (n− k + 1) za „k–ti” ele-ment, tj. po principu produkta n(n− 1)⋯(n−k + 1) = n!/(n−k)! mogućnosti. Ali mi smoriječi prvi, drugi, ... stavili u navodnike zbog toga što u podskupu elementi nisu uređeni,tj. ne razlikujemo koji element je prvi, drugi itd. Stoga dobijeni broj moramo podijeliti sbrojem različitih redoslijeda k elemenata koje smo izabrali. Rezonirajući kao gore, vidimoda imamo k izbora za „prvi” element, k − 1 izbora za „drugi” element, itd. Dakle, ukupnoimamo k! izbora za redoslijed. Time smo dokazali teorem. ◻

S ovom kombinatornom interpretacijom binomnih koe cijenata, cijeli niz identiteta s bi-nomnim koe cijentima se može i kombinatorno dokazati.

Propozicija 1.3.2 Vrijede sljedeće identitete:

(a) (nk) = (n

n−k),

(b) k(nk) = n(n−1k−1),

(c) (n+1k ) = (n

k−1) + (nk),

(d) ∑nk=0 (

nk) = 2n,

(e) ∑nk=0 (

nk)2 = (2nn ).

Dokaz: (a) Odabir podskupa s k elemenata je ekvivalentan odabiru n − k elemenata(odabiru podskupaA ⊂ S odgovara odabir podskupa S ∖A).

(b) Poslužit ćemo se sportskim žargonom pri dokazu. Između n sportaša želimo oda-brati k–članu ekipu u kojoj će jedan sportaš biti kapetanmomčadi. Iz teorema 1.3.1znamo da ekipu možemo odabrati na (nk) načina. Za svaki mogući izbor ekipe, ka-petanamožemo izabrati nak načina. To odgovara lijevoj strani izraza. Alternativno,možemo najprije izabrati kapetana (tomožemo učiniti nan načina), a onda izabratiostatak ekipe (njihk−1 izmeđupreostalihn−1 sportaša.)Toodgovara desnoj straniizraza. Princip dvostrukog brojanja kaže da dva razičita brojanja moraju dovesti doistog rezultata, čime smo dokazali tvrdnju.

13

Page 16: Diskretna matematika (Skripta)

1. P

(c) Pretpostavimo da imamo razred s n+ 1 učenika, od kojih je jedan na neki način iz-dvojen od ostalih, te (opet) želimo izabrati ekipu od k učenika. To možemo napra-viti ili tako da uključimo tog izdvojenog učenika (a u tom slučaju trebamo izabratipreostalih k−1 učenika između preostalihn), ili gamožemo izbaciti iz kombinacijaza ekipu (u tom slučaju trebamo izabrati cijelu ekipu između preostalih n učenika).

(d) Ovo je jednostavno — svih podskupova po teoremu 1.2.1 ima 2n.

(e) Desna strana odgovara broju načina na koji možemo izabrati ekipu odn članova od2n sportaša. Pretpostavimo sada da semeđu 2n sportaša nalazin dječaka in djevoj-čica. Na koliko načinamožemo odabrati ekipu od k djevojčica in−k dječaka?Ovajbroj je očito (nk)(

nn−k) = po dijelu (a) = (nk)

2. Sada samo sumiramo po mogućem

broju djevojčica u ekipi (formalno gledano, primjenimo princip sume). ◻

Zadatak 1.4Probajte dokazati propoziciju 1.3.2 koristeći algebarske tehnike.

Katkada se k–člani podsup skupa S naziva k–kombinacija skupa S. Dakle, (nk) je brojk–kombinacija n–članog skupa.

Prošle godine smo sreli binomne koe cijente u tzv. binomnom teoremu.

Teorem 1.3.3 (Binomni teorem)

(a + b)n =n

∑k=0(nk)an−kbk, za n ∈ N, a, b ∈ C. (1.1)

Relaciju (1.1) nazivamo binomnom formulom.

Dokaz: Promotrimo izraz(a + b)⋯(a + b)´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶

n puta

.

Ovaj izraz možemo raspisati tako da iz svake zagrade odaberemo ili a ili b, i to na sve mo-guće načine, te pomnožimo izabrane članove i onda sve sumiramo. Izraz bk se dobija kadaje b odabrano iz k zagrada, a a iz n − k zagrada (čim smo izabrali b iz k zagrada, odmahsmo izabrali i a iz n− k zagrada). Postoji (nk) načina na koji možemo izabrati tih k b–ova,pa je koe cijent uz an−kbk upravo (nk). ◻

Zadatak 1.5Dajte algebarski dokaz teorema 1.3.3. Uputa: indukcija!

Cijeli niz činjenica o binomnim koe cijentima se može dobiti koristeći binomni teorem.Na prijer, propozicija 1.3.2 (d) odmah slijedi ukoliko u binomnu formulu uvrstimo a = 1,b = 1.

14

Page 17: Diskretna matematika (Skripta)

1.3. Broj podskupova ksirane veličine (binomni koe cijenti)

Korolar 1.3.4 Za n > 0, broj podskupo a n–članog skupa s parnim i neparnim brojemelemenata je jednak (dakle, 2n−1).

Dokaz (algebarski): Ubacimo a = 1, b = −1 u binomnu formulu:

0 = (1 − 1)n =n

∑k=0(nk)(−1)k povlači ∑

0≤k≤nk paran

(nk) = ∑

0≤k≤nk neparan

(nk). ◻

Dokaz (kombinatorni): Ukoliko je n neparan, tada je k paran akko je n − k neparan,stoga svaki odabir skupa s parnim brojem elemenata je (uzimanjem komplementa) auto-matski i odabir skupa s neparnim brojem elemenata, tj. imamo bijekciju sa skupa podsku-pova s parnim brojem elemenata u skup podskupova s neparnim brojem elemenata, čimesmo dokazali tvrdnju za slučaj da je n neparan.

Ukoliko jenparan, gornji postupaknijemoguć. Stoga promotrimopreslikavanjeA↦A△{n}, gdje jeA ⊂ {1, . . . , n}, a△ označava simetričnu razliku (ovo preslikavanje uba-cujen uA ukolikon ∉ A, a ukoliko jen ∈ A onda ga izbacuje). Ovo preslikavanje je bijek-cija na partitivnom skupu od {1, . . . , n}, te mijenja kardinalitet skupa za 1, tj. prebacujeskupove s parnim brojem elemenata u skupove s neparnim brojem elemenata i obrnuto.Time smo dokazali tvrdnju korolara. ◻

Zadatak 1.6Dokažite da jeA↦ A△ {n} bijekcija na partitivnom skupu od {1, . . . , n}.

Korolar 1.3.4 možemo i generalizirati.

Korolar 1.3.5 Neka je n djeljiv s 8. Tada je broj podskupo a čiji je broj elemenata djeljiv s 4jednak 2n−2 + 2(n−2)/2.

Dokaz: Označimo sA traženi broj, a sB broj podskupova čiji je broj elemenata kongru-entan s 2 (mod 4). Iz korolara 1.3.4 slijediA +B = 2n−1.

Uvrstimo a = 1, b = i u binomnu formulu. Budući da je 1 + i =√2eiπ/4, a n je

višekratnik broja 8, slijedi (1 + i)n = 2n/2. Dakle, 2n/2 = ∑nk=0 (

nk)ik. Uzimajući u obzir

da je ik = 1, i, .1,−i za redom k ≡ 0,1,2,3 (mod 4), slijediA −B = 2n/2. Rješavanjemlinearnog sustava dvije jednadžbe s dvije nepoznanice dolazimo do tražene formule. ◻

Propozicija 1.3.2 (c) omogućava da konstruiramo tzv. „Pascalov trokut” (ne, Pascal nijeprvi koji ga je konstruirao).

15

Page 18: Diskretna matematika (Skripta)

1. P

...1 .. 7 .. 21 .. 35 .. 35 .. 21 .. 7 .. 1

.

.

1 .

.6 .

.

15 .

.

20 .

.

15 .

.6 .

.

1

.

.

1 .

.

5 .

.

10 .

.

10 .

.

5 .

.

1

.

.

1 .

.

4 .

.

6 .

.

4 .

.

1

.

.

1 .

.

3 .

.

3 .

.

1

.

.

1 .

.

2 .

.

1

.

.

1 .

.

1

.

.

1

Svaki element osim prvog i zadnjeg u retku je dobijen zbrajanjem dva broja koja su iznadnjega. k–ti element u n–tom retku je (nk) ( krećemo od nultog retka i nultog stupca).

Nešto rijeđa verzija Pascalovog trokuta je Pascalov desni trokut:

11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 1

tj.

0 1 2 3 4 5 6

0 (00)

1 (10) (1

1)

2 (20) (2

1) (2

2)

3 (30) (3

1) (3

2) (3

3)

4 (40) (4

1) (4

2) (4

3) (4

4)

5 (50) (5

1) (5

2) (5

3) (5

4) (5

5)

6 (60) (6

1) (6

2) (6

3) (6

4) (6

5) (6

6)

Sada se na primjer Propozicija 1.3.2 (d)može iskazati kao tvrdnja da je suma elemenatau n–tom retku Pascalovog trokuta jednaka 2n (opet krećemo od nultog retka).

Što dobijemo kad zbrajamo elemente po stupcima? Probajmo npr. zbrojiti elemente udrugom stupcu (i tu krećemo od nultog): 1+3+6+10 = 20, a taj broj se javlja u sljedećemretku i sljedećem stupcu zdesna. To nas dovodi do sljedećeg rezultata.

Teorem 1.3.6 (Chu Shih–Chieh) Neka je n ≥ k. Tada vrijedi

n

∑r=k(rk) = (n + 1

k + 1). (1.2)

16

Page 19: Diskretna matematika (Skripta)

1.3. Broj podskupova ksirane veličine (binomni koe cijenti)

Dokaz (algebarski):

n

∑r=k(rk) = [(k

k) + (k + 1

k)] + (k + 2

k) +⋯ + (n

k)

= [(k + 1k + 1

) + (k + 1k)] + (k + 2

k) +⋯ + (n

k)

= [(k + 2k + 1

) + (k + 2k)] + (k + 3

k) +⋯ + (n

k)

= (k + 3k + 1

) +⋯ + (nk) = ⋯ = ( n

k + 1) + (n

k)

= (n + 1k + 1

).

Ovdje smo na više mjesta koristili propoziciju 1.3.2 (c). ◻

Dokaz (kombinatorni, 1. verzija): Neka je zadan skupS = {x1, . . . , xn+1}. Tada desnastrana formule (1.2) odgovara broju k + 1–članih podskupova skupa S. Označimo s Pskup k + 1–članih podskupova od S, te de nirajmo sljedeće skupove:

P1 = {A ⊆ P ∶ x1 ∈ A},P2 = {A ⊆ P ∶ x1 ∉ A, x2 ∈ A},P3 = {A ⊆ P ∶ x1, x2 ∉ A, x3 ∈ A},⋮

Pn−k+1 = {A ⊆ P ∶ x1, x2, . . . , xn−k ∉ A, xn−k+1 ∈ A}.

Lako se vidi da skupovi Pi, i = 1, . . . , n − k + 1 čine particiju skupa P (npr. ukolikoA∩Pi = ∅, i = 1, . . . , n−k+1, tadax1, . . . , xn−k+1 ∉ A; to značiA ⊆ {xn−k+2, . . . , xn},te ∣A∣ ≤ n−(n−k+2)+1 = k−1), te da vrijedi ∣Pi∣ = (n+1−ik

), čime smonašli kombinatorniprikaz lijeve strane formule (1.2). ◻

Dokaz (kombinatorni, 2. verzija): Desnu stranu tumačimo kao i u 1. verziji kombina-tornog dokaza, s time da preciziramo S = {1,2, . . . , n + 1}.

Lijevu stranu tumačimo na sljedeći način. Podskupove podijelimo s obzirom na naj-veći broj u danom podskupu. Podskup s k + 1 elemenata s najvećim elementom r + 1 semože kreirati na (rk) načina. Budući da r+1 nemože biti manji od k+1, a ni veći odn+1,slijedi da se podskup može kreirati na∑n

r=k (rk) načina. ◻

Specijalan slučaj teorema 1.3.6 je formula za zbroj prvih n brojeva:

1 + 2 +⋯ + n = (11) + (2

1) + (3

1) +⋯ + (n

1) = (n + 1

2) = n(n + 1)

2.

17

Page 20: Diskretna matematika (Skripta)

1. P

Ali pomoću teorema 1.3.6 možemo naći formulu za ∑nk=1 k

p, za bilo kakav p ∈ N! Naprimjer, za p = 2 postupak je sljedeći. Služeći se formulom

k2 = k + k(k − 1) = (k1) + 2(k

2)

traženu sumu možemo ovako izračunati:

n

∑k=1

k2 =n

∑k=1(k1) + 2

n

∑k=2(k2) = (n + 1

2) + 2(n + 1

3) = n(n + 1)(2n + 1)

6.

Zadatak 1.7Kako bi ste došli do formule za p > 2?

Često se javlja potreba da se da približna ocjena za faktorijel nekog broja. U tu svrhu seobično koristi Stirlingova formula

n! ∼√2πn(n

e)n

.

Preciznije, vrijedi

limn→∞

n!√2πn(n/e)n

= 1.

Primjer 1.3.7 Dokažite kombinatornim argumentima relaciju (nm)(mk) = (nk)(

n−km−k).

Rješenje: Lijeva strana: neka je dan n–člani skup S. Biramo uređeni par (X,Y ), gdje jeX m–člani podskup od S, a Y k–člani podskup odX .

Desna strana: najprije odabiremo k–člani podskupY odS, onda od preostalih eleme-nata biramom − k-člani podskupZ , te kreiramo uređeni par (Z ∪ Y,Y ). ◻

Primjer 1.3.8 Dokažite kombinatornimargumentima relaciju (tzv.Vandermondeovuko-nvoluciju)

r

∑k=0(mk)( n

r − k) = (m + n

r).

Rješenje: Desna strana odgovara broju odabira r–članog podskupam+n–članog skupaS. Lijeva strana također odgovara broju odabira r–članog podskupam+n–članog skupaS, s time da odabiremo r–člane podskupove na sljedeći način. Particioniramo skup S nadva skupaA iB, gdje jeAm–člani, aB n–člani skup. Svaki odabir r–članog skupa od Sodgovara odabiru k–članog podskupa odA i r−k–članog podskupa odB, za proizvoljank između (i uključivo) 0 i r. ◻

18

Page 21: Diskretna matematika (Skripta)

1.3. Broj podskupova ksirane veličine (binomni koe cijenti)

Primjer 1.3.9 Dokažite kombinatornim argumentima relaciju

∑i≥0(n2i) = 2n−1, ∀n ∈ N.

Rješenje: Po konvenciji (nm) = 0 zam > n.Lijeva stranaodgovarabrojuodabira parnogpodskupan–članog skupaS = {a1, . . . , an}.Do nekog parnog podskupa skupa S, možemo doći i tako da biramo hoće li a1 biti

element tog skupa, hoće li a2 biti element tog skupa, ... Kada dođemo do elementa an,više nemamo mogućnost odabira: ili smo do sada odabrali neparan broj elemenata te mo-ramo odabrati an, ili smo da sada odabrali paran broj elemenata te ne možemo odabratian. Dakle, donijeli smo n − 1 odabira između dviju opcija. ◻

Primjer 1.3.10 Dokažite kombinatornim argumentima relacijun

∑i=0

i(ni) = n2n−1, ∀n ∈ N.

Rješenje: Desna strana odgovara broju odabira uređenog para (x,A), gdje je x elementn–članog skupa S, aA je podskup skupa S ∖ {x}.

Lijeva strana odgovara broju odabira uređenog para (x,B), gdje jeB i–člani podskupod S, a x neki element izB, gdje je i bilo koji broj između (i uključivo) 0 i n.

No, svaki odabir uređenog para (x,A), gdje je x element n–članog skupa S, a A jepodskup skupa S ∖ {x} odgovara odabiru uređenog para (x,B), gdje je B = A ∪ {x},i obrnuto: svaki odabir uređenog para (x,B), gdje je B i–člani podskup od S, a x nekielement izB, gdje je i bilo koji broj između (i uključivo) 0 i n odgovara odabiru uređenogpara (x,A), gdje jeA = B ∖ {x}. ◻

Primjer 1.3.11 Neka su k,n ∈ N. Izračunajte kombinatornim argumentomn

∑r=k(nr)(r

k).

Rješenje: Izrazmožemo intepretirati kaobroj odabira r–članih skupovan–članog skupa,te k–članih podkupova odabranog r–članog skupa, gdje je r prozvoljan broj između (iuključivo) k i n.

Nomogli smo prvo odabrati k–člani podskupn–članog skupa (štomožemo napravitina (nk) načina), a zatim odlučiti koje ćemo preostale elemente uključiti u nadskup izabra-nog k–članog skupa (što, zaključujući kao u primjeru 1.3.9, možemo napraviti na 2n−knačina). ◻

Zadatak 1.8Dokažite kombinatornim argumentima relaciju

n+r−k∑j=r(j − 1r − 1)(n − j

k − r) = (n

k), 1 ≤ r ≤ k ≤ n.

19

Page 22: Diskretna matematika (Skripta)

1. P

Zadatak 1.9Dokažite kombinatornim argumentima relaciju

k

∑i=0(n + i

n) = (n + k + 1

n + 1), ∀k,n ∈ N0.

1.4 PermutacijePostoje dva načina na koja možemo shvatiti pojam permutacije. Neka jeX konačan skup.Permutacija od X (u aktivnom smislu) je bijekcija s X u X . Da bi smo objasnili pasivansmisao, pretpostavimoda su elementi uX uređeni, npr.X = {x1, . . . , xn}. Tada je pasivnareprezentacija permutacije π uređena n–torka (π(x1), . . . , π(xn)). Katkad koristimo iovakav zapis za permutaciju:

(x1 x2 . . . xn

y1 y2 . . . yn) , gdje je yi = π(xi), i = 1, . . . , n.

Teorem 1.4.1 Broj permutacija n–članog skupa je n!.

Dokaz: Pretpostavimo da je n–člani skup skup {1, . . . , n}. Tada je permutacija uređenan–torka brojeva iz {1, . . . , n}. Postoji n–mogućnosti za izbor prvog elementa, n−1mo-gućnosti za izbor drugog elementa, itd. ◻

Postoji još jedan, kraći zapis permutacije, tzv. ciklički zapis. Najprije ćemo uvesti pojamciklusa. Kažemo da je permutacija π ciklus ili ciklička permutacija ukoliko vrijedi

x1 ↦ x2 ↦ ⋯↦ xn ↦ x1,

gdje su x1, . . . , xn elementi odX u nekom redoslijedu. Ciklus zapisujemo(x1 x2 . . . xn) (ne miješati s pasivnom formom permutacije!).

Kako je (xi . . . xn x1 . . . xi−1) očito isti ciklus kao i (x1 x2 . . . xn), ciklički zapisnije jedinstven.

Propozicija 1.4.2 Svaka se permutacija može zapisati kao kompozicija ciklusa na među-sobno disjunktnim skupo ima.Ta reprezentacija je jedinstvena, do na redoslijed ciklusa i oda-bira početnih točaka ciklusa.

Napomena: U ovom slučaju svaki ciklus nadopunjavamo do funkcije na cijelom počet-nom skupu tako da na ostatku skupa ciklus djeluje kao identiteta.

Dokaz: Dokaz će biti konstruktivne prirode.Neka jeπ permutacija na skupuX . Sljedećialgoritam konstruira tražene cikluse:

20

Page 23: Diskretna matematika (Skripta)

1.4. Permutacije

postoji element izX koji nije ni u jednom ciklusu� odaberi neki takav x� neka jem najmanji prirodan broj takav da je πm(x) = x� konstruiraj ciklus (x π(x) . . . πm−1(x)) sve konstruirane ciklusePokažimo sada da ovaj algoritam zaista generira tražene cikluse. Najprije ćemo po-

kazati da je (x π(x) . . . πm−1(x)) zaista ciklus. Problem može nastati jedino ukolikoπi(x) = πj(x) za 0 < i < j <m. Ali budući da je π bijekcija, slijedilo bi x = πj−i(x), štoje u kontradikciji s izborom brojam.

Pokažimo sada da konstruirani ciklusi koriste međusobno disjunktne skupove eleme-nata izX . Pretpostavimo da je

πi(x) = πj(y) (1.3)

i pretpostavimo da je x izabran prije y. Ukoliko je πm(y) = y, tada iz (1.3) slijedi

πm(x) = πj+(m−i)(y) = πj−i(πm(y)) = πj−i(y),

dakle πm+i−j(x) = y, što je u kontradikciji s činjenicom da smo pretpostavili da y nije uciklusu od x.

Očito je da svaki element odX leži u nekom od konstruiranih ciklusa.Konačno, kompozicija ovih ciklusa jednaka je π. Zaista, neka je z ∈ X proizvoljan.

Tada postoji y iz nekog ciklusa i i ∈ N takav da vrijedi z = πi(y). Tada se djelovanjepermutacije π na element z podudara s djelovanjem ciklusa koji sadrži y, dok drugi ciklusinemaju efekta na z (u svjetlu dane napomene). ◻

Primjer 1.4.3 Permutacija

(1 2 3 4 5 63 6 4 1 5 2

)

se u cikličkoj notaciji može zapisati kao (1 3 4)(2 6)(5). To je jedna od 36 različitihverzija za ovu permutaciju (ima 3! = 6načina da posložimo cikluse i 3⋅2⋅1 = 6mogućnostiza izbor početnih točaka). Katkada se jednočlani ciklusi, kao gore (5), ne zapisuju.

Broj permutacija n–članog skupa koji se sastoji od k ciklusa se naziva Stirlingov broj prvevrste, u oznaci s(n, k) (katkada se koristi de nicija po kojoj je (−1)n−ks(n, k) broj per-mutacija n–članog skupa koji se sastoji od k ciklusa).

Neka je S skup od n elemenata, a k ≤ n. Za uređenu k–torku (x1, . . . , xk) među-sobno različitih elemenata iz S kažemo da je k–permutacija (ili parcijalna permutacija).

Na k–permutaciju možemo gledati kao na pasivnu formu injekcije {1, . . . , k} → S(očito {1, . . . , k}možemo zamijeniti s bilo kojim k–članim skupom kojem smo nekakoporedali elemente). Stoga je pitanje koliko ima k–permutacija skupa S ekvivalentno pita-nju koliko ima injekcija s k–članog u n–člani skup.

Teorem 1.4.4 Broj k–permutacija n–članog skupa je n!/(n−k)!.

21

Page 24: Diskretna matematika (Skripta)

1. P

Dokaz: Promotrimo injekciju f ∶ {1, . . . , k} → S, gdje je ∣S∣ = n. Za f(1) možemouzeti bilo koji element izS, dakle imamo nmogućnosti. Za f(2)možemo uzeti bilo kojielement iz S ∖ {f(1)}, dakle imamo n − 1 mogućnosti. Nastavljajući ovaj postupak, ukonačnici dolazimo do izbora f(k) za koji možemo uzeti bilo koji element izS ∖ {f(1), . . . , f(k − 1)}, dakle imamo n− (k − 1)mogućnosti. Princip produkta namdaje n ⋅ (n − 1)⋯(n − k + 1) = n!/(n−k)! mogućnosti odabira funkcije f . ◻

Katkada se broj k–permutacija n–članog skupa zapisuje kao P (n, k) ili P nk .

Primjer 1.4.5 Dokažite kombinatornim argumentima relaciju

P (n, k) = nP (n − 1, k − 1).

Rješenje: Lijeva stranaodgovarabrojuodabira uređenihk–torkin–članog skupaS.Desnustranu možemo interpretirati opet kao broj odabira uređenih k–torki skupa S, s time danajprije odaberemo prvi element k–torke, recimo x, a onda odaberemo uređenu (k −1)–torku skupa S ∖ {x}. ◻

Primjer 1.4.6 Dokažite kombinatornim argumentima relacijuP (n+1, k) = P (n, k)+P (n, k − 1).

Rješenje: Lijeva strana odgovara broju odabira uređenih k–torkun+1–članog skupaS.Neka je x ∈ S proizvoljan, ali ksiran element iz S. Desnu stranu možemo interpretiratikao broj odabira uređenih k–torki skupa S, s time da da skup uređenih k–torku podi-jelimo u dvije klase: klasu onih k–torki sastavljenu od elemenata skupa S ∖ {x}, i klasuonih k–torki skupaS koje sadrže x. Kako xmože doći na bilo koje od kmjesta u k–torci,dolazimo do traženog izraza. ◻

1.5 Multiskupovi i multinomni koe cijenti

Na općenito pitanje:Na koliko načina se može odabrati k objekata iz skupa od n objekata?odgovor možemo dati tek ukoliko preciziramo:

(a) da li je redoslijed važan ili ne?

(b) smije li se neki objekt više puta pojaviti kao izbor (dozvoljavamo li ponavljanja)?

To nas dovodi do sljedećeg teorema.

Teorem 1.5.1 Broj odabira k objekata iz skupa od n objekata je dan sljedećom tablicom

22

Page 25: Diskretna matematika (Skripta)

1.5. Multiskupovi i multinomni koe cijenti

redoslijed važan(„kombinacije”)

redoslijednevažan

ponavljanjadoz oljena nk (n+k−1

k)

ponavljanja nisudoz oljena

n!/(n−k)! (nk)

Dokaz: Stupac „redoslijed važan” je lako riješiti. Ukoliko su ponavljanja dozvoljena, pos-toji n izbora za svaki od k objekata. Ukoliko ponavljanja nisu dozvoljena, traženi broj jebroj k–permutacija n–članog skupa.

U stupcu „redoslijed nevažan” ukoliko ponavljanja nisu dozvoljena, zapravo brojimok–podskupove n–skupa. Preostali element tablice je nešto teže izračunati, pa ćemo dokaznapraviti pomoću dvije leme. ◻

Lema 1.5.2 Brojmogućnosti izborak objekata izn–članog skupa uzmogućnost ponavljanjai nevažan redoslijed je jednak broju načina odabiran nenegativnih cijelih brojeva čiji je zbrojjednak k.

Dokaz: Neka nam je dano k objekata iz skupa a1, . . . , an. Neka je xi broj ponavljanjaobjekta ai. Tada je xi ≥ 0,∑n

r=1 xi = k.Obrnuto, brojevima x1, . . . , xn, xi ≥ 0, i = 1, . . . , n, x1 + ⋯ + xn = k pridružimo

izbor objekata tako da objekt ai izaberemo xi puta.

Lema 1.5.3 Broj n–torki nenegativnih cijelih brojeva x1, . . . , xn za koje vrijedix1 +⋯ + xn = k je dan s (n+k−1k

).

Dokaz: Zamislimon+k−1praznina, i ondanjihn−1označimo.Neka jex1 broj prazninaprije prve oznake, xi broj praznina između (i − 1)–e i i–te oznake, za 2 ≤ i ≤ n − 1 i xn

broj praznina poslije (n− 1)–e oznake. Tada je xi ≥ 0,∑xi = (n+ k − 1)− (n− 1) = k.Obrnuto, neka su dani x1, . . . , xn koji zadovoljavaju uvjete iz iskaza leme. Tada sta-

vimo oznaku poslije x1 praznina, poslije x2 praznina, ..., poslije xn−1 daljnjih praznina.Dakle, ostalo je još xn praznina, budući da je broj preostalih praznina dan s

n + k − 1 − (x1 +⋯ + xn−1) − (n − 1) = n + k − 1 − (k − xn) − (n − 1) = xn.

Gra čki prikaz postupka je dan na sljedećoj slici:

◻⋯◻´¹¹¸¹¹¶

x1

2� ◻⋯◻´¹¹¸¹¹¶

x2

2� ◻⋯◻´¹¹¸¹¹¶

x3

2� ◻ ⋯ ◻ 2� ◻⋯◻´¹¹¸¹¹¶

xn

Broj izbora oznaka je očito (n+k−1n−1 ) = (n+k−1

n+k−1−(n−1)) = (n+k−1

k). ◻

23

Page 26: Diskretna matematika (Skripta)

1. P

Primjer 1.5.4 Neka je n = 3, k = 4. Tada ◻ ◻ 2� ◻ 2�◻ odgovara vrjednostima x1 = 2,x2 = 1, x3 = 1. Obrnuto, x1 = 0, x2 = 0, x3 = 4 odgovara sljedećoj slici: 2�2� ◻ ◻ ◻ ◻.Primjer 1.5.5 Dokažite kombinatornim argumentom relacijun3 = (n1)+6(

n2)+6(n3) za

sve n ∈ N.

Rješenje: Lijeva strana odgovara broju odabira uređene trojken–članog skupaS, uzmo-guća ponavljanja.

Skup uređenih trojaka skupaS, uz moguće ponavljanja, možemo podijeliti u tri klase:

• trojke u kojima su svi elementi isti — takvih očito ima n = (n1),

• trojke u kojima su dva elementa ista— takvih ima 2 ⋅(n2) ⋅3, budući da dva elementamožemo odabrati na (n2) načina, na dva načina možemo odlučiti koji će se elementponavljati, te postoji tri načina kako ih poredati ((x,x, y), (x, y, x), (y, x, x)),

• trojke u kojima su svi elementi različiti— takvih ima 3! ⋅(n3), budući da tri elementamožemo odabrati na (n3) načina, te ih možemo poredati na 3! načina. ◻

Katkada se odabir k objekata iz n–članog skupa, uz ponavljanja i nevažan redoslijed zovek–kombinacija s ponavljanjem.

Da bi smo formalizirali pristup kombinatornim problemima koja uključuju ponavlja-nja, uvesti ćemopojammultiskupa.To je objekt poput skupa, ali u kojem se elementimoguponavljati. Precizno, konačni multiskupM na skupu S je uređeni parM = (S,m), gdjejem ∶ S → N0 funkcija za koju je∑x∈S m(x) konačan broj. Za x ∈ S se brojm(x) zovekratnost od x. Broj elemenata multiskupaM , u oznaci ∣M ∣ je∑x∈S m(x).

Obično umjesto {a, a, b, c, c, d, d, d} pišemo {a2, b, c2, d3}.Ako suM = (S,m) iM ′ = (S,m′) dvamultiskupa na istom skupu, onda kažemo da

jeM ′ podmultiskup odM (u oznaciM ′ ⊆M ) ako jem′(x) ≤m(x) za sve x ∈ S.Sada možemo prethodni rezultat ovako formulirati:

Neka je k ∈ N i S n–člani skup. Neka jeM = (S,m)multiskup takav da jem(x) ≥ k zasvaki x ∈ S. Tada je broj k–podmultiskupova odM jednak (n+k−1k

).Uvedimo sada pojam permutacije multiskupova. Neka je M = (S,m) multiskup.

Analogno pojmu permutacije skupa, svaku uređenu n–torku (x1, . . . , xn), gsje su xi ∈ SzovemopermutacijamultiskupaM . Za razlikuodpermutacija skupa, ovdje je dozvoljenoda neki elementi xi budu isti, ali ne smije biti više ponavljanja od kratnosti tog elememta.

Teorem 1.5.6 Neka jeM = {xn11 , xn2

2 , . . . , xnk

k } zadani multiskup. Neka je n = n1+⋯+nk. Tada je broj permutacija odM jednak

n!

n1!n2!⋯nk!.

24

Page 27: Diskretna matematika (Skripta)

1.5. Multiskupovi i multinomni koe cijenti

Napomena: Katkada se koristi oznaka

( n

n1, . . . , nk

) = n!

n1!n2!⋯nk!,

uz n = n1 +⋯ + nk, i taj broj zovemomultinomni koe cijent.

Dokaz: Trebamo odrediti na koliko načinamožemo sastaviti uređenun–torku s elemen-tima izM . Prvo odaberemo na koja ćemo mjesta staviti elemente x1 (njih n1), tj. trebamoodabrati n1 mjesta od njih n, a to možemo napraviti na ( nn1

) načina. Dalje odredimo nakoja ćemo mjesta staviti elemente x2; sada trebamo odabrati n2 mjesta od njih n−n1, štomožemo napraviti na (n−n1

n2) načina. Nastavljanjem ovog postupka, te pomoću principa

produkta dolazimo do zaključka da je broj permutacija dan s

( nn1

)(n − n1

n2

)(n − n1 − n2

n3

)⋯(n − n1 − n2 −⋯ − nk−1

nk

) =

n!

�����(n − n1)!n1!⋅ �����(n − n1)!((((((((n − n1 − n2)!n2!

⋅ ((((((((n − n1 − n2)!

(((((((((((n − n1 − n2 − n3)!n3!

⋅ ((((((((((((n − n1 −⋯ − nk−1)!

(n − n1 − n2 −⋯ − nk)!nk!= n!

n1!n2!⋯nk!. ◻

Slično kao i binomni koe cijenti, i multinomni koe cijenti se javljaju pri raspisivanju al-gebarskih izraza.

Teorem 1.5.7 (Multinomni teorem) Vrijedi

(x1 + x2 +⋯ + xk)n = ∑0≤r1,r2,...,rk≤nr1+⋯+rk=n

( n

r1, r2, . . . , rk)xr1

1 xr22 ⋯x

rkk ,

za sve x1, x2, . . . , xk ∈ C, n ∈ N.

Zadatak 1.10Dokažite kombinatorno teorem1.5.7.Dokaz je analogandokazubinomnog teorema1.3.3.

Često se u enigmatskim časopisima pojavljuju anagrami, tj. pitanja koliko se različitih ri-ječi može formirati pomoću slova iz neke zadane riječi. Naravno, bit zagonetke je da riječitrebaju pripadati nekom zadanom jeziku (tj. trebaju se nalaziti u standardnom rječnikutog jezika). Postoje dvije strategije za rješavanje ovog problema:

(a) najprije formiramo sve potencijalne riječi, a onda potražimonalazi li se neka od njihu rječniku,

(b) prolazimo kroz rječnik, i provjeravamo za svaku riječ da li je sastavljena od slova izzadane riječi.

25

Page 28: Diskretna matematika (Skripta)

1. P

Da bismo procijenili koja je metoda bolja, trebamo znati broj potencijalnih riječi i brojriječi u rječniku. Broj potencijalnih riječi možemo izračunati pomoću teorema 1.5.6.

Primjer 1.5.8 Ukoliko je zadana riječ , broj potencijalnih riječi je( 102,3,2,1,1,1

) = 10 ⋅ 9 ⋅ 8 ⋅ 7 ⋅ 6 ⋅ 5 = 151200.

Zadatak 1.11Koliko ima potencijalnih riječi ukoliko ne moramo iskoristiti sva slova?

1.6 Particije skupova (Relacije na skupovima)Prisjetimo se sljedećeg rezultata.

Teorem 1.6.1 Neka je R relacija ekvivalencije na skupu X . Tada klase ekvivalencije for-miraju particiju skupa X . Obrnuto, za danu particiju skupa X , postoji jedinstvena relacijaekvivalencije čije su klase elementi particije.

Dakle, broj particija skupa jednak je broju relacija ekvivalencije na tom skupu. Taj brojćemo zvati Bellov broj.

Prije nego li se pozabavimo Bellovim brojevima, prisjetimo se još jednog pojma veza-nog za relacije. Kažemo da je relacijaR totalni uređaj ukoliko je relacija re eksivna, antisi-metrična, tranzitivna i zadovoljava svojstvo trihotomije (za x, y vrijedi ili (x, y) ∈ R i/ili(y, x) ∈ R i/ili x = y).

Teorem 1.6.2 Broj totalnih uređaja na n–skupu je n!.

Napomena: Zapravo ćemo pokazati da za dani uređaj R na n–skupu, njegove elementemožemo numerirati x1, . . . , xn tako da vrijedi (xi, xj) ∈ R akko i ≤ j, i to možemoučiniti na jedinstveni način.

Dokaz: Neka jeX n–člani skup iR uređaj naX . Prvo ćemo pokazati da postoji „zadnji”element u X , element x takav da, ukoliko je (x, y) ∈ R, onda nužno y = x. Pretposta-vimo da takav x ne postoji. Tada za svaki x postoji y ≠ x takav da (x, y) ∈ R. Krenimos x = x1, i odaberimo x2, x3, . . . takve da vrijedi (xi, xi+1) ∈ R, za sve i. Iz tranzitiv-nosti i re eksivnosti slijedi (xi, xj) ∈ R za sve i ≤ j. Kako je X konačan, u nekom tre-nutku dolazimo do xj takvog da vrijedi xi = xj za neki i < j. No tada (xj−1, xj) ∈ R i(xj, xj−1) = (xi, xj−1) ∈ R, budući da je i ≤ j − 1. Iz antisimetričnosti slijedi xj = xj−1,što je u kontradikciji s konstrukcijom niza.

Taj „zadnji” element niza je jedinstven. Zaista, pretpostavimo da je i z „zadnji” ele-ment. Tada ili (x, z) ∈ R ili (z, x) ∈ R. U oba slučaja slijedi x = z.

Označimo „zadnji” element s xn. Tada zbog trihotomije vrijedi (x,xn) ∈ R za sve x.Sada nastavljamo tako da nađemo „zadnji” element skupaX∖{xn}, koji označimo sxn−1,itd.

To znači i da se naš intuitivni pojam uređaja poklapa s formalnom de nicijom.

26

Page 29: Diskretna matematika (Skripta)

1.6. Particije skupova (Relacije na skupovima)

U konačnici smo dobili jedinstveni način numeracije elemenata iz X . Nadalje, očitosvakoj numeraciji elemenata iz X odgovara jedan totalni uređaj (zadan s (xi, xj) ∈ Rako i ≤ j). Dakle, broj totalnih uređaja odgovara broju uređenih n–torki iz X , tj. brojupermutacija. ◻

Vratimo se pitanju broja particija. SBn ćemo označavati n–ti Bellov broj (to je broj parti-cijan–skupa ili broj relacija ekvivalencijen–skupa). Lako se vidi da jeB3 = 5 (particije od{1,2,3} su {{1,2,3}}, {{1,2},{3}}, {{1,3},{2}}, {{2,3},{1}}, {{1},{2},{3}}).Slično vidimo da jeB2 = 2,B1 = 1, a po de niciji stavljamoB0 = 1.

Za razliku od broja podskupova i permutacija, ne postoji jednostavna formula za Bel-love brojeve. Jedan način računanja Bellovih brojeva je dan sljedećim teoremom.

Teorem 1.6.3 Vrijedi

Bn =n

∑k=1(n − 1k − 1

)Bn−k, za sve n ∈ N. (1.4)

Dokaz: Neka jeX = {1, . . . , n} i uzmimo neku particijuA1, . . . ,Al odX . Neka jeAj

skup koji sadrži element n. Dakle,Aj = Y ∪ {n}, gdje je Y ⊆ {1, . . . , n − 1}. OstaliAi,i ≠ j čine particiju skupa {1, . . . , n − 1} ∖Aj . Skupovi Y i Ai, i ≠ j potpuno određujuparticiju.

Ukoliko je ∣Y ∣ = k − 1 postoji (n−1k−1) mogućnosti za izbor skupa Y , te Bn−k moguć-nosti za izbor ostalih elemenata particije. Kako za k možemo uzeti bilo koji broj između(i uključivo) 1 i n, slijedi tražena formula. ◻

Pojam particije možemo povezati s još jednim fundamentalnim pojmom u matematici:sa surjekcijama. Neka je f ∶ A → B surjekcija, ∣A∣ = m, ∣B∣ = n. Na primjer, A ={1, . . . ,m}, B = {1, . . . , n}. Tada A = ⋃n

j=1 f−1(j), i f−1(i) ∩ f−1(j) = ∅ za i ≠ j.

Zaista, prvo svojstvo slijedi iz surjektivnosti, dok k ∈ f−1(i) ∩ f−1(j) povlači f(k) = i if(k) = j, dakle i = j. Zapravo, vrijedi i više.

Propozicija 1.6.4 Funkcija f ∶ A → B je surjekcija akko je {f−1(y) ∶ y ∈ B} particija odA.Zadatak 1.12Dovršite dokaz propozicije 1.6.4.

Kod surjekcija vidimo da je broj elemenata particije jednak kardinalitetu kodomene.Broj particija od k elemenata n–skupa označava se sa S(n, k) i zove Stirlingovim

brojem druge vrste. Očito je S(n, k) = 0 za k = 0 ili k > n. Također se lako vidi davrijedi S(n,1) = S(n,n) = 1. Nadalje,Bn = ∑n

k=1 S(n, k).

Teorem 1.6.5 Vrijedi

S(n + 1, k) = S(n, k − 1) + kS(n, k), za sve k,n ∈ N.

27

Page 30: Diskretna matematika (Skripta)

1. P

Dokaz: Particije skupaX = {1,2, . . . , n+ 1} od k elemenata možemo podijeliti u dvijeskupine: one za koje je skup {n + 1} element particije, i ostale. Brojanje particija u prvojskupini je jednostavno: ostalih n elemenata odX možemo particionirati u k − 1 skupovana S(n, k − 1) načina.

Ukoliko {n + 1} nije član particije, tada izbacivanjem elementa n + 1 iz elementaparticije u kojoj se nalazi dovodi do stvaranja particije od k elemenata skupa {1, . . . , n},recimo A1, . . . ,Ak. Tu istu particiju skupa {1, . . . , n} bi dobili da smo izbacili elementn + 1 iz bilo kojeg od skupovaA1, . . . ,Ak. Drugim riječima, svakoj k–članoj particiji od{1, . . . , n} odgovara točno k različitih k–članih particija skupa X . Dakle, postoji točnokS(n, k) particija odX kod kojih {n + 1} nije član particije. ◻

Teorem 1.6.5 nam daje mo-gućnost zapisa „Stirlingovogtrokuta”.

..n. k

1 2 3 4 5

1 12 1 13 1 3 14 1 7 6 15 1 15 25 10 1

Teorem 1.6.6 Broj surjekcija sa skupaA, ∣A∣ = n u skupB, ∣B∣ = k je k!S(n, k).

Dokaz: Možemo pretpostaviti k ≤ n,A = {1, . . . , n},B = {1, . . . , k}. Svaka surjekcijaf generira particiju ⋃k

i=1 f−1(i). Ali toj particiji odgovara više surjekcija; da bi A1 bio

element particije generirane funkcijom f , nije nužno da je A1 = f−1(1). Kako particijenisu uređene, skupA1 može odgovarati skupu f−1(j) za bilo koji j ∈ {1, . . . , k}. Dakle,postoji k mogućnosti za izbor broja j1 takvog da je A1 = f−1(j1), k − 1 mogućnostiza izbor broja j2 takvog da je A2 = f−1(j2), itd. Stoga se svaka od S(n, k) k–članihparticija n–članog skupa može urediti na k! načina, tj. postoji k! različitih surjekcija kojeodgovaraju toj particiji. ◻

Zadatak 1.13Dokažite: broj rasporeda n različitih kuglica u k jednakih kutija tako da niti jedna kutijane ostane prazna je S(n, k).

Primjer 1.6.7 Dokažite relaciju S(n,2) = 2n−1 − 1.

Rješenje: Relaciju ćemo dokazati kombinatornim argumentom. Lijeva strana odgovarabroju particija n–članog skupa S na dva dijela. Dvočlanu particiju {A,B} skupa S mo-žemo odrediti tako da za svaki element skupa S biramo da li se nalazi u A ili B. Takvihodabiramo imamo 2n. No time smo računali i odabire {S,∅} i {∅, S}. Konačan broj oda-bira dobijemo kad broj odabira 2n − 2 podijelimo s 2, budući da smo dvaput brojali svakuparticiju (particija {A,B} je jednaka particiji {B,A}). ◻

28

Page 31: Diskretna matematika (Skripta)

1.7. Generiranje kombinatornih objekata

Primjer 1.6.8 Dokažite relaciju S(n,n − 1) = (n2).

Rješenje: Koliko iman−1–članih particijan–članog skupa?U svakom članu particije senalazi točno jedan element, osim u jednom koji sadrži točno dva elementa. Broj traženihparticija odgovara broju odabira ta dva elementa. ◻

Primjer 1.6.9 Dokažite analogon Chu Shih–Chiehovog teorema:

S(n + 1, k + 1) =n

∑i=k(ni)S(i, k), za sve n ≥ k.

Rješenje: Lijeva strana odgovara broju odabira k+1–članih particijan+1–članog skupaS.

Nekuk+1–članuparticiju skupaSmožemoodabrati na sljedeći način. Izdvojimonekielement x ∈ S. On se mora nalaziti u nekom članu particije A. Ako A imam elemenata,onda ga možemo odabrati na ( n

m−1) načina. Preostaje nam particionirati skup S ∖A na kdijelova, što možemo napraviti na S(n + 1 −m,k) načina. Dakle lijeva strana je jednakabroju

n+1∑m=1( n

m − 1)S(n + 1 −m,k).

Zamijenom indeksa i→ n + 1 −m dobijamon

∑i=0( n

n − i)S(i, k) =

n

∑i=0(ni)S(i, k) =

n

∑i=k(ni)S(i, k),

budući da S(i, k) = 0 za i < k. ◻

1.7 Generiranje kombinatornih objekataUkoliko neki problem zahtjeva ispitivanje svih objekata neke vrste (podskupovi, permu-tacije, ...) potreban nam je algoritam koji će generirati te objekte. Obično je konceptualnonajjednostavniji rekurzivni algoritam. Npr. sljedeći algoritam generira partitivni skup od{1, . . . , n}.Uočite kako algoritamnalikuje dokazu rekurzivne relacijeF (n+1) = 2F (n),F (0) = 1 iz teorema 1.2.1.

Ako je n = 0, vrati {∅}. � generiraj partitivni skup od {1, . . . , n − 1}� napravi kopiju svakog podskupa i dodaj mu element n� vrati sve kreirane skupove

Simbolički se ovaj algoritam može prikazati na sljedeći način:

P(∅) = {∅}P({1, . . . , n}) = {Y,Y ∪ {n} ∶ Y ∈ P({1, . . . , n − 1})} za n > 0Na sličan način, koristeći rekurzivne relacije

29

Page 32: Diskretna matematika (Skripta)

1. P

• (nk) = (n−1k−1) + (

n−1k),

• n! = n(n − 1)!,

• Bn = ∑nk=1 (

n−1k−1)Bn−k,

možemo konstruirati algoritme za k–podskupove, permutacije i particije.Ali postoji problem s ovim pristupom: čak i za nevelike vrijednosti broja n, broj obje-

kata je vrlo velik, te može biti toliko velik da ne stane u memoriju. Ono što trebamo sualgoritmi koji generiraju jedan po jedan objekt, dakle nerekurzivno. Takvi algoritmi ćeimati ovakav oblik:

Generiraj prvi objekt� procesiraj dani objekt� generiraj novi objekt nisu izgenerirani svi objekti

Važno je primjetiti da ovakav algoritam pretpostavlja da objekti imaju nekakav pore-dak (uređaj), tj. sam algoritam generira neki poredak (uređaj) objekata.

Za podskupove jedan nerekurzivan algoritam je opisan sljedećim kôdom:

Prvi podskup je Y = ∅ poslije Y� nađi zadnji element i koji nije u Y (gledajući od kraja)� ukoliko nema takvog objekta, onda je Y zadnji podskup� izbaci iz Y sve elemente poslije i, dodaj i u Y , te vrati ovaj skup

Primjer 1.7.1 Za {1,2,3} generirani skupovi će biti redom ∅, {3}, {2}, {2,3}, {1},{1,3}, {1,2}, {1,2,3}.

Drugi način generiranja podskupova je da iskoristimo drugu verziju dokaza teorema 1.2.1:za svaki brojN između 0 i 2n−1, napišimo brojN u bazi 2, dani zapis interpretirajmo kaoniz (a1, . . . , an), te kreirajmo podskup Y = {j ∶ aj = 1}. Ovaj postupak ima dodatnuprednost što nam omogućava „slučajan pristup” podskupovima; nismo ovisni o njihovomporetku.

Važno je uočiti da ova dva algoritma ne kreiraju isti poredak podskupova.

U slučaju k–podskupova postoje dva „prirodna” uređaja. Npr. za n = 5, k = 3:

123,124,125,134,135,145,234,235,245,345

123,124,134,234,125,135,235,145,245,345

Prvi niz možemo generirati sljedećim algoritmom (za k = 3, n proizvoljan):

i (1, . . . , n − 2) j (i + 1, . . . , n − 1)

l (j + 1, . . . , n)� procesiraj {i, j, l}

30

Page 33: Diskretna matematika (Skripta)

1.7. Generiranje kombinatornih objekata

Problem s ovim algoritmom je što ovisi o izboru broja k (postoji kompliciranija verzijakoja nema tu manu).

Drugi uređaj ima jednu prednost: najprije dolaze 3–podskupovi od {1,2,3,4} u nji-hovom prirodnom poretku, onda dolaze podskupovi koji sadrže 5, dobijeni tako da doda-jemo52–podskupovimaod{1,2,3,4}. Sljedeći algoritamopisuje generiranjek–podskupovau ovom poretku.

Prvi podskup je Y = {1, . . . , k} poslije Y = {y1, . . . , yk} (gdje je y1 < . . . < yk) je� nađi prvi i takav da je yi + 1 ∉ Y� povećaj yi za 1, stavi yj = j za j < i i vrati novi Y� ovaj postupak propada ukoliko je i = k, yk = n; u tom slučaju

Y = {n − k + 1, . . . , n} je zadnji skup

Primjer 1.7.2

{ ..1,3,5}Ð→ {2, ..3,5}Ð→ { ..1,4,5}Ð→ { ..2,4,5}

..i

Prvi poredak nazivamo leksikografskim poretkom: ukoliko simbole 1, . . . , n shva-timo kao slova alfabeta, a svaki k–podskup kao riječ, onda prvi poredak odgovara leksiko-grafskom uređaju. Drugi poredak nazivamo obrnutim leksikografskim poretkom: opetsimbole 1, . . . , n shvatimo kao slova alfabeta, ali u obrnutom poretku (npr. 5→ a, 4→ b,3→ c, 2→ d, 1→ e), obrnemo ih, te ih upišemo u rječnik u obrnutom redoslijedu.

Primjer 1.7.3abc abd abe acd ace ade bcd bce bde cde

543 542 541 532 531 521 432 431 421 321

345 245 145 235 135 125 234 134 124 123

I za permutacije postoji više „prirodnih” poredaka. Sljedeći algoritamgenerira permutacijeu leksikografskom poretku:

Prva permutacija je dana s xi = i, i = 1, . . . , n poslije (x1, . . . , xn) je� nađi najveći j za koji je xj < xj+1 (idući od kraja)� ako takav j ne postoji, gotovi smo� izmjeni vrijednost od xj s vrijednošću najmanjeg xk koji je veći

od xj uz k > j� obrni niz vrijednosti od xj+1, . . . , xn i vrati permutaciju

Kako točno radi ovaj algoritam?

31

Page 34: Diskretna matematika (Skripta)

1. P

Prva dva koraka j je najmanji indeks takav da smo već generirali sve permutacije kojepočinju s (x1, . . . , xj, . . .). Dakle, sljedeća permutacija će povećati vrijednost odxj .

Zadnja dva koraka Budući da xj+1 > . . . > xn, element xk je najmanji element veći odxj koji može doći poslije x1, . . . , xj−1 u permutaciji. Prije promjene imamo

xj+1 > . . . > xk−1 > xk > xj > xk+1 > . . . > xn,

a poslije promjene imamo

xj+1 > . . . > xk−1 > xj > xk > xk+1 > . . . > xn.

Primjer 1.7.4 Neka je trenutna permutacija (4,3,6,5,2,1). Algoritam prvo nalazi j =2, xj = 3. Trenutna permutacija je zadnja (u leksikografskom poretku) od permutacijaoblika (4,3, . . .), te treba slijediti prva oblika (4,5, . . .), tj. (4,5,1,2,3,6). Zaista, algo-ritam nalazi k = 4, xk = 5 ( kako su vrijednosti poslije xj opadajuće, možemo ići od krajatražeći prvi broj veći od xj). Tada zamjenimo vrijednosti na drugoj i četvrtoj poziciji, štonam daje (4,5,6,3,2,1); te konačno obrnemo vrijednosti na pozicijama od 3 do 6, štonam daje (4,5,1,2,3,6).

Primjer 1.7.5

1234Ð→ 1243

1243Ð→ 1342 Ð→ 1324

1324Ð→ 1342

1342Ð→ 1432 Ð→ 1423

Napomena: Ovaj algoritam vrijedi i za permutacije multiskupova, a poznavali su ga još ustaroj Indiji (Nārāyana Pandita, 14. stoljeće).

Leksikografski poredak se obično generira sljedećim algoritmom:

1. Nađi najveći j takav da se xj može povećati.

2. Povećaj xj , ali što je moguće manje.

3. Nađi leksikografski „najkraći” način da se x1, . . . , xj nadopuni.

Što učiniti ako želimo doći do npr. 2092–te permutacije (u leksikografskom poretku) brojeva1, . . . ,9?

Pretpostavimo da je prvi broj u permutaciji 1 (najmanji koji imamo). Ostaje nam 8 brojeva.Kako se maksimalna permutacija koja počinje s 1 nalazi na 40320–om mjestu (8! = 40320), a2092 < 40320, znamo da se u našoj permutaciji na prvom mjestu nalazi 1.

32

Page 35: Diskretna matematika (Skripta)

1.7. Generiranje kombinatornih objekata

Sada stavimo sljedeći najmanji broj na drugo mjesto, dakle 2. Maksimalna permutacija kojapočinje s (1,2, . . .) zauzima 5040–to mjesto. Budući da je 2092 < 5040, 2 se zaista nalazi nadrugom mjestu u našoj permutaciji. Sada stavimo 3 na treće mjesto. Maksimalna permutacija kojapočinje s (1,2,3, . . .) se nalazi na 720-om mjestu. Kako je 2092 > 720, to znači da je permutacijana 2092-om mjestu „veća” od svih permutacija koje počinju s (1,2,3, . . .).

Stoga zamijenimo3 s4.Maksimalnapermutacija koja počinje s(1,2,4, . . .) se nalazi namjestu720 + 720 = 1440, što je i dalje manje od 2092. Zato umjesto 4 stavimo 5. Maksimalna permuta-cija koja počinje s (1,2,5, . . .) se nalazi na mjestu broj 1440 + 720 = 2160, što je veće od 2092.Dakle, naša permutacija počinje s (1,2,5, . . .).

Stavljajućiminimalni slobodan broj u našu permutaciju, dolazimo do permutacije koja počinjes (1,2,5,3, . . .). Maksimalna permutacija koja tako počinje se nalazi na mjestu broj 1440 + 5! =1570, stoga zamijenimo3 s4, štonas dovodi domaksimalnepozicije broj1440+120+120 = 1690.Kako smo dobili broj koji je i daljemanji od 2092, umjesto 4 stavljamo 6, što namdajemaksimalnupoziciju broj 1810. Stavljajući umjesto 6 broj 7, dolazimo domaksimalne pozicije broj 1930. Kakoi 8 daje broj koji je manji od 2092, stavljamo na koncu 9, i dobijamo maksimalnu poziciju broj2170, što znači da naša permutacija počinje s (1,2,5,9, . . .).

Nastavljanjem ovog postupka, stižemo do permutacije (1,2,5,9,6,3,7,8,4).

Zadatak 1.14Probajte obrazložiti gornji „algoritam”.

33

Page 36: Diskretna matematika (Skripta)
Page 37: Diskretna matematika (Skripta)

2Rekurzije, funkcijeizvodnice i formulauključivanja–isključivanja

2.1 UvodU ovom poglavlju ćemo proučavati tri važne tehnike koje se često koriste pri rješavanjukombinatornih problema.

Rekurzivna relacija izražava vrijednost funkcije f u točki n, n ∈ N u terminima vri-jednosti funkcije f u točkama k, k < n. Jedan jednostavan primjer smo već vidjeli: brojF (n) podskupova n–skupa zadovoljava relaciju F (n + 1) = 2F (n). Ova relacija, za-jedno s početnom vrijednosti F (0) = 1, jedinstveno određuje vrijednost od F (n) zasvaki n ∈ N.

Korištenje funkcija izvodnica je često povezano s rekurzivnim relacijama, ali su takvefunkcije i drugdje vrlo korisne.Funkcija izvodnica je formalni red potencija čiji su koe ci-jenti članovi nekogbrojevnogniza.Osnovnu ideju ćemo ilustrirati na prethodnoj rekurziji.De niramo (formalno) funkciju ϕ(t) = ∑∞n=0F (n)tn. Tada je

2tϕ(t) =∞∑n=0

2F (n)tn+1 =∞∑n=0

F (n + 1)tn+1 = ϕ(t) − 1.

Dakle, ϕ(t) = 11−2t . Ova funkcija ima (geometrijski) razvoj ϕ(t) = ∑∞n=0(2t)n. Uspore-

dimo li ovaj red s početnim, slijediF (n) = 2n. Kako red∑∞n=0(2t)n konvergira za ∣t∣ < 1/2,naša manipulacija je bila korektna.

Pretpostavimo da je zadana familija skupova, te da je dan broj elemenata koji se na-laze u presjeku bilo koje moguće podfamilije. Tada imamo dovoljno podataka da izraču-namo koliko elemenata se ne nalazi ni u jednomod skupova zadane familije skupova. For-mula uključivanja–isključivanja, skraćeno FUI (eng. PIE) je formula za izračunavanjetog broja. U najjednostavnijem slučaju FUI se svodi na sljedeću skupovnu relaciju:

∣X ∖ (A ∪B)∣ = ∣X ∣ − ∣A∣ − ∣B∣ + ∣A ∩B∣.

35

Page 38: Diskretna matematika (Skripta)

2. R, –

2.2 Fibonaccijevi brojevi

U 13. stoljeću je talijanski matematičar Leonardo da Pisa, zvan Fibonacci, proučavao slje-deći (nerealističan) problem.

Seljak uzgaja zečeve. Svaki par zečeva, starih barem dva mjeseca, dobiju svakog mje-seca par mladih: zeca i zečicu. Zečevi nikad ne umiru. Ako na početku krećemo s jednimnovorođenim parom, koliko će biti ukupno parova zečeva nakon nmjeseci?

Za male vrijednosti od nmožemo lako izračunati traženi broj. Za općeniti nmožemoovako razmišljati: broj novih parova je jednak broju parova koji su mjesec dana prije imalibarem dva mjeseca. Ukoliko s Fn označimo broj parova u n–tom mjesecu, onda iz pret-hodnog razmišljanja slijedi rekurzivna formula

Fn+1 = Fn + Fn−1, n = 2,3,4, . . . (2.1)

Kako znamo da jeF1 = F2 = 1, možemo izračunatiFn, za bilo kojin. Zgodno je de niratiF0 = 0, tako da (2.1) vrijedi za sve n ∈ N0. Brojeve Fn zovemo Fibonaccijevim brojevima(ime im je dao francuski matematičar Lucas).

Fibonaccijevi brojevi su jako česti u matematici, a naročito u kombinatorici. Na pri-mjer, promotrimo sljedeći problem.Na koliko načina se može prirodni brojn zapisati kaosuma jedinica i dvojki?

Označimo s Jn taj broj. Očito je J1 = 1, J2 = 2, J3 = 3. Neka je n ≥ 2. Svaki rastav odnmora završavati s 1 ili 2. Ako završava s 1, preostali brojevi daju n − 1, a ako završava s 2preostali brojevi dajun−2. Dakle,Jn = Jn−1+Jn−2. Ukoliko de niramoJ0 = 1 iJ−1 = 0,opet dobijemo Fibonaccijeve brojeve (pomaknute za jedno mjesto, tj. Jn = Fn+1).

Brojevi Jn se mogu gra čki prikazati tako da jedinicama pridružimo 1 × 1 kvadratea dvojkama 1 × 2 domine. Tada Jn predstavlja broj načina na koji možemo popločati skvadratima i dominama ploču 1×n (takvu ploču ćemo nadalje zvati n–ploča). Time smodobili kombinatornu interpretaciju Fibonaccijevih brojeva.

..1

.2

.3

.4

.5

.6

.7

.8

.9

.10

Slika 2.1: Gra čki prikaz 10–ploče popločane s 4 kvadrata i 3 domine.

Formula za Fibonaccijeve brojeve je jedan primjer rekurzivne relacije, točnije, tročlanerekurzivne relacije s konstantnim koe cijentima. Općenito, (k + 1)–člana rekurzivna re-lacija (ili kraće rekurzija), izražava vrijednostF (n) funkcijeF u terminima k prethodnihvrijednosti F (n − 1), F (n − 1), . . . , F (n − k); koja je linearna ukoliko ima oblik

F (n) = a1(n)F (n − 1) + a2(n)F (n − 2) +⋯ + ak(n)F (n − k),

a s konstantnim koe cijentima ukoliko su a1, . . . , ak konstantne funkcije.

36

Page 39: Diskretna matematika (Skripta)

2.2. Fibonaccijevi brojevi

Č: Funkcija koja zadovoljava (k + 1)–članu rekurziju je jedinstvenoodređena svojim vrijednostima u prvih k prirodnih brojeva.

Fibonaccijevi brojevi zadovoljavaju cijeli niz identiteta koji ćemo dokazati koristeći sekombinatornom interpretacijom brojeva Jn.

Propozicija 2.2.1 Vrijede sljedeće relacije:

(a) ∑nk=0Fk = Fn+2 − 1,

(b) ∑nk=0F2k+1 = F2n+2,

(c) F 2n + F 2

n−1 = F2n−1.

Dokaz: (a) Ekvivalentno je dokazati∑n−1k=0 Jk = Jn+1 − 1.

Desna strana odgovara brojupopločavanja (n+1)–ploče kodkojeg koristimobarem jednudominu (postojeJn+1 popločavanja (n+1)–ploče i točno jedno popločavanje koje koristisamo kvadrate). Popločavanja (n + 1)–ploče kod kojeg koristimo barem jednu dominutako da zadnja domina pokrivamjesta (k+1) i (k+2) ima točnoJk. Kakokmože biti bilokoji broj između (i uključivo) 0 in−1, slijedi da i lijeva strana odgovara broju popločavanja(n + 1)–ploče kod kojeg koristimo barem jednu dominu.

(b) Ekvivalentno je dokazati∑nk=0 J2k = J2n+1.

Desna strana odgovara broju popločavanja (2n + 1)–ploče. Budući da je ploča neparneduljine, postoji barem jedan kvadrat. Zadnji se kvadratmora nalaziti na neparnommjestu,recimo (2k + 1). Postoji J2k popločavanja (2n + 1)–ploče kod kojeg se zadnji kvadratnalazi na mjestu (2k + 1). Kako k može biti bilo koji broj između (i uključivo) 0 i n,slijedi tvrdnja.

(c) Ekvivalentno je dokazati J2n−1 + J2

n−2 = J2n−2.Da bismo dokazali ovu identitetu uvesti ćemo novi pojam. Kažemo da je n–ploča slom-ljiva na mjestu k ukoliko se ploča može rastaviti na dvije ploče, jednu koja pokriva mjestaod 1 do k, i drugu koja pokrivamjesta od k+1 don. Drugim riječima, ploča nije slomljivana mjestu k ako i samo ako domina pokriva mjesta k i k + 1. Naprimjer, ploča sa slike 2.1nije slomljiva na mjestima 2, 4 i 8, dok je na ostalim mjestima slomljiva.

Desna strana identitete odgovara broju popločavanja (2n − 2)–ploče. Lijevu stranumožemoovako interpretirati: ukoliko je ploča slomljiva namjestun−1, tada je broj poplo-čavanja i lijeve i desne polovice ploče jednak Jn−1, a ukoliko ploča nije slomljiva namjestun − 1 onda se ploče koje pokrivaju mjesta od 1 do n − 2, odnosno mjesta od n do 2n − 2mogu pokriti na Jn−2 načina. ◻

Dokaz (pomoćumatematičke indukcije): Identitete (a) i (b) se jednostavno dokazuju, dok jedokaz relacije (c) nešto složeniji. Najprije raspišemo lijevu stranu relacije (c).

F 2n + F 2

n−1 = (Fn−1 + Fn−2)2 + F 2n−1 = F 2

n−1 + F 2n−2 + 2Fn−1Fn−2 + F 2

n−1

= F 2n−1 + F 2

n−2 + Fn−1(Fn−2 + Fn−1) + Fn−1Fn−2

= F 2n−1 + F 2

n−2 + FnFn−1 + Fn−1Fn−2.

37

Page 40: Diskretna matematika (Skripta)

2. R, –

Odavde vidimo da nam, da bi smo iskoristili princip matematičke indukcije, treba i relacija

FnFn−1 + Fn−1Fn−2 = F2n−2.

Sada ćemo simultano dokazati ove dvije relacije koristeći matematičku indukciju. Baze se lako pro-vjere. Pretpostavimo sada da vrijedi

F 2n−1 + F 2

n−2 = F2n−3 i FnFn−1 + Fn−1Fn−2 = F2n−2.

Tada

F 2n + F 2

n−1 = F 2n−1 + F 2

n−2 + FnFn−1 + Fn−1Fn−2 = F2n−3 + F2n−2

= F2n−1,

Fn+1Fn + FnFn−1 = (Fn + Fn−1)Fn + (Fn−1 + Fn−2)Fn−1

= F 2n + F 2

n−1 + Fn−1Fn + Fn−2Fn−1 = F2n−1 + F2n−2

= F2n. ◻

Propozicija 2.2.2 Vrijedi

(n0) + (n − 1

1) + (n − 2

2) +⋯ = Fn+1, za sve n ≥ 0.

Dokaz: Dokazat ćemo

(n0) + (n − 1

1) + (n − 2

2) +⋯ = Jn, za sve n ≥ 0.

Desna strana odgovara broju popločavanja n–ploče. Lijevu stranu interpretiramo na slje-deći način. Ukoliko popločavanje n–ploče koristi k domina, onda popločavamo s n − 2kkvadrata, tj. s ukupnon−k pločica. Broj načina na kojimožemo izabrati k domina izmeđun − k pločica je (n−kk ). Za broj k očito vrijedi 0 ≤ k ≤ n

2 . ◻

..1

.2

.3

.4

.5

.6

.7

.8

.9

.10

Slika 2.2: Postoji (73) popločavanja 10–ploče koja koriste tri domine. Takva popločavanjakoriste točno 7 pločica i potpuno su određena ukoliko znamo koje tri od sedam pločica sudomine. Na slici su četvrta, peta i šesta pločica domine.

Zadatak 2.1Riješite sljedeće zadatke koristeći se popločavanjima.

1. Jm+n = JmJn + Jm−1Jn−1,

38

Page 41: Diskretna matematika (Skripta)

2.2. Fibonaccijevi brojevi

2. ∑i≥0∑j≥0 (n−ij )(n−ji) = J2n+1,

3. ∑nk=1 (

nk)Jk−1 = J2n−1,

4. J2n − J2

n−2 = J2n−1,

5. 2Jn = Jn+1 + Jn−2,

6. 3Jn = Jn+2 + Jn−2,

7. ∑pi=0 (

pi)Jn−i = Jn+p.

Pogledajmo sada kako možemo riješiti rekurziju za Fibonaccijeve brojeve. Dati ćemodvije metode, koje ćemo kasnije generalizirati.

Prva metoda: Kako je naša rekurzija linearna, ukoliko nađemo neka rješenja, tada će injihova linearna kombinacija opet biti rješenje.

Zaista, neka F iG zadovoljavaju rekurziju. De niramoHn = aFn + bGn. Tada

Hn = a(Fn−1 + Fn−2) + b(Gn−1 +Gn−2) = (aFn−1 + bGn−1) + (aFn−2 + bGn−2)=Hn−1 +Hn−2.

Vrijednosti od a i bmožemo odabrati tako što iskoristimo početne vrijednosti od F .No kako naći bilo kakvo rješenje naše rekurzije?Probajmo semalo igrati kalkulatorom. Znamo da Fibonaccijevi brojevi brzo rastu. Ali

koliko brzo? Izračunajmo omjere susjednih Fibonaccijevih brojeva:11 = 1, 2

1 = 2, 32 = 1.5, 5

3 = 1.6̇, 85 = 1.6, 13

8 = 1.625, 2113 = 1.615, 34

21 = 1.619 . . .,5534 = 1.617 . . .,

8955 = 1.618 . . .,

14489 = 1.617 . . .,

233144 = 1.618 . . .,

377233 = 1.618 . . .

Izgleda da je taj omjer približno 1.618, ako ignoriramo prvih nekoliko vrijednosti.To znači da se Fibonaccijevi brojevi ponašaju (otprilike) kao geometrijski niz. Stoga je ra-zumno probati s Fn = cαn.

Iz rekurzije (2.1) slijedi αn−1(α2 − α − 1) = 0. Rješenja kvadratne jednadžbeα2 − α − 1 = 0 su α1 = 1+

√5

2 , α2 = 1−√5

2 . Kako i F 1n = c1αn

1 i F 2n = c2αn

2 zadovoljavajurekurziju, to je i Fn = c1αn

1 + c2αn2 rješenje rekurzije (2.1). Uvrštavanjem početnih uvjeta

F0 = 0, F1 = 1 slijedi c1 + c2 = 0, c1α1 + c2α2 = 1, odakle slijedi c1 = 1√5, c2 = − 1√

5.

Stoga

Fn =1√5[(1 +

√5

2)n

− (1 −√5

2)n

] .

Napomena: Vrijedi 1+√5

2 = 1.618 . . ., 1−√5

2 = −0.618 . . .. Dakle, (1+√5

2 )nje dominan-

tan član.

39

Page 42: Diskretna matematika (Skripta)

2. R, –

Druga metoda: De niramo funkciju ϕ pomoću reda potencija ϕ(t) = ∑∞n=0Fntn. Tadavrijedi

tϕ(t) =∞∑n=0

Fntn+1 =

∞∑n=1

Fn−1tn,

t2ϕ(t) =∞∑n=0

Fntn+2 =

∞∑n=2

Fn−2tn.

Kako je Fn = Fn−1 + Fn−2, „skoro” pa da vrijedi ϕ(t) = (t + t2)ϕ(t). Lako se provjeri davrijedi (t + t2)ϕ(t) = ϕ(t) − t, dakle ϕ(t) = t

1−t−t2 .Sada rastavimo t

1−t−t2 na parcijalne razlomke. Neka je 1 − t − t2 = (1 − αt)(1 − βt).Tada suα i β rješenja jednadžbe x2 −x−1 = 0, dakleα = 1+

√5

2 , β = 1−√5

2 . Sljedeći korakje da nađemo koe cijente a i b tako da vrijedi

t

1 − t − t2= a

1 − αt+ b

1 − βt.

Standardnim postupkom dolazimo do a = 1√5, b = − 1√

5.

Dakle,

ϕ(t) = a

1 − αt+ b

1 − βt= a

∞∑n=0

αntn + b∞∑n=0

βntn =∞∑n=0(aαn + bβn)tn.

Uspoređivanjemm koe cijenata u dva rastava funkcije ϕ u red potencija slijedi

Fn = aαn + bβn = 1√5[(1 +

√5

2)n

− (1 −√5

2)n

] .

2.3 Linearne rekurzijeProcedura za rješavanje opće linearne rekurzije s konstantnim koe cijentima je slična onojza Fibonaccijeve brojeve. Promotrimo rekurziju

F (n) = a1F (n − 1) + a2F (n − 2) +⋯ + akF (n − k). (2.2)

Kao i kod Fibonaccijevih brojeva, pokušajmo naći rješenje oblika F (n) = αn. Uvrštava-njem slijedi da αmora biti korijen jednadžbe

xk − a1xk−1 − a2xk−2 −⋯ − ak = 0. (2.3)

Jednadžbu (2.3) zovemo karakterističnom jednadžbom pridruženoj (2.2).Ukoliko ova jednadžba ima k različitih realnih korijena, dobivamo k nezavisnih rje-

šenja rekurzije. Uzimanjem njihove linearne kombinacije, i ubacivanjem k početnih vri-jednosti od F , dobivamo k linearnih jednadžbi s k nepoznanica, koje imaju jedinstveno

40

Page 43: Diskretna matematika (Skripta)

2.3. Linearne rekurzije

rješenja ( kao što ste vidjeli na kolegiju Linearna algebra 1). Time smo dobili traženo rje-šenje.

No ukoliko se neki korijeni ponavljaju (zanemarit ćemo slučaj nerealnih korijena), ne-ćemodobiti odgovarajući broj rješenja.U tom slučaju radimo sljedeće.Neka je, na primjer,α korijen kratnosti d. Tada se može lako provjeriti da d funkcija n ↦ αn, n ↦ nαn, …,n ↦ nd−1αn zadovoljava rekurziju (2.2). Na taj način dolazimo do traženog broja (parti-kularnih) rješenja.

Općenito, nema jednstavne formule za rješenje linearne rekurzije. No ako je rekurzijaoblika

F (n) = a1F (n − 1) + a2F (n − 2) +⋯ + akF (n − k) + g(n),

onda znamo da se opće rješenje može dobiti kao suma općeg rješenja pripadne homogenerekurzije (2.2) i nekog partikularnog rješenja (analogno situaciji kod rješenja nehomoge-nog sustava linearnih jednadžbi). Ukoliko je g polinom, onda će partikularno rješenje bitioblika: rj. hom. rekurzije + polinom.

Primjer 2.3.1 (Hanojski tornjevi) Imamo n kolutova, različitih veličina, koji se nalazeposlagani na štapu, od najvećeg prema najmanjem, s tim da je najveći na dnu. Imamo jošdva štapa, i želimo sve kolutove prebaciti na drugi štap, jedan po jedan, tako da kolutovibudu u istom rasporedu. Ni u jednom trenutku ni jedan kolut ne smije biti smješten iznadmanjeg koluta. Pitanje je koji je minimalan potreban broj koraka?

Drveni model Hanojskih tornjeva za n = 8možete vidjeti na slici 2.3.

Slika 2.3: Hanojski tornjevi

Označimo s an traženi broj koraka za n kolutova. Očito je a1 = 1. Nadalje, a2 = 3:prebacimoprvi kolut na drugi štap, drugi kolut na treći štap, a ondamanji kolut prebacimona veći.

A za proizvoljann? Jasno je da bi smomogli pomaknuti najveći kolut, treba nam jedanprazan štap, što znači da smo svih n−1 ostalih kolutova pomakli na drugi štap. Da bi smodošli u ovu fazu, treba nam an−1 koraka. Tada pomaknemo najveći kolut na slobodni štap,i onda nam još treba an−1 koraka da stavimo n − 1 ostalih kolutova na najveći kolut.

41

Page 44: Diskretna matematika (Skripta)

2. R, –

Dakle, an = 2an−1 + 1.Rješenje pripadne homogene rekurzije je očito c2n. Trebamo još naći neko partiku-

larno rješenje. Probajmo s an = c2n + b. Uvrštavanjem slijedi b = −1, a iz a1 = 1 slijedic = 1. Dakle, an = 2n − 1.

Ovaj problem je povezan s legendomovijetnamskom ili indijskomhramuukojem sve-ćenici prebacuju 64 zlatna diska s jednog stupa na drugi po gore opisanim pravilima. Le-genda kaže da će u trenutku kada dovrše proces doći do smaka svijeta. Uz pretpostavku dase jednoprebacivanjemoženapraviti za jednu sekundu, proces bi trajao otprilike5.82⋅1011godina. Više o problemu Hanojskih tornjeva možete pročitati u Wikipedijinom člankuhttp://en.wikipedia.org/wiki/Towers_of_hanoi.

Primjer 2.3.2 (Deranžmani) Deranžmannekog skupa je permutacija tog skupakojanemaksnih točaka.

Neka jed(n)broj deranžmana skupa{1,2, . . . , n}. Svaki deranžmanbrojnpreslikavauneki broj i < n.Očito je da se isti broj deranžmanadobije za svaku vrijednost od i (1 ≤ i ≤n−1), stogamožemo doći do d(n) tako da izračunamo broj deranžmana koji preslikavajun u i, te taj broj pomnožimo s n − 1. Neka je π deranžman takav da je π(n) = i. Tadaimamo dva slučaja:1. slučaj: π(i) = n, tj. i i n se zamijenjuju. Tada se π na ostatku skupa opet ponaša kaoderanžman. Dakle, takvih deranžmana ima d(n − 2).2. slučaj: π(i) ≠ n; recimo π(j) = n, j ≠ i. De niramo permutaciju π′ na {1, . . . , n−1}formulom

π′(k) =⎧⎪⎪⎨⎪⎪⎩

π(k), k ≠ j,i, k = j.

Permutacija π′ je opet deranžman. S druge strane, svaki deranžman π′ skupa{1, . . . , n − 1} se može „proširiti” do deranžmana skupa {1, . . . , n} na sljedeći način:

π(k) =

⎧⎪⎪⎪⎪⎨⎪⎪⎪⎪⎩

π′(k), k takav da je π′(k) ≠ i,i, k = n,n, k takav da je π′(k) = i.

Dakle, takvih deranžmana ima d(n − 1).Dobili smo rekurziju

d(n) = (n − 1)(d(n − 1) + d(n − 2)). (2.4)

Početne vrijednosti za ovu rekurziju su d(1) = 0, d(2) = 1.

Teorem 2.3.3 Broj deranžmana n–skupa je dan formulom

d(n) = n!(n

∑i=0

(−1)ii!) = ⌊n!

e⌋ , n ∈ N. (2.5)

Napomena: U teoremu 2.3.3 ⌊⋅⌋ je oznaka za najbliži cijeli broj.

42

Page 45: Diskretna matematika (Skripta)

2.3. Linearne rekurzije

Dokaz: Dabi smodokazali teorem, trebamopokazati da funkcijaf(n) = n! (∑ni=0(−1)ii! )

zadovoljava rekurziju za d(n) i pripadne početne uvjete.Lako se provjeri f(1) = 0, f(2) = 1. Nadalje

(n−1) (f(n − 1) + f(n − 2)) = (n−1)(n−1)!n−1∑i=0

(−1)ii!+(n−1)(n−2)!

n−2∑i=0

(−1)ii!

= (n − 1)(n − 2)! ((n − 1) + 1)n−2∑i=0

(−1)ii!+ (n − 1)(n − 1)!(−1)

n−1

(n − 1)!

= n!n−2∑i=0

(−1)ii!+(−1)n−1(n−1) = n!

n−2∑i=0

(−1)ii!+(−1)n−1 n!

(n − 1)!+(−1)nn!

n!= f(n).

Još treba dokazati drugu jednakost u (2.5):

∣d(n) − n!

e∣ = n! ∣

∞∑i=0

(−1)ii!−

n

∑i=0

(−1)ii!∣ < n! ∣(−1)

n+1

(n + 1)!∣ = 1

n + 1≤ 1

2.

(Red∑∞i=0(−1)ii! alternira i opadajući je pa apsolutnoj vrijednosti; stoga je razlika između

n–tog člana i sume reda manja od (n + 1)–og člana.) ◻

No kako smo uopće došli do formule (2.5)?Krenimo od rekurzije (2.4) koju možemo zapisati u obliku

d(n) − nd(n − 1) = −(d(n − 1) − (n − 1)d(n − 2)).

Iteriranjem ove relacije slijedi

d(n) − nd(n − 1) = −(d(n − 1) − (n − 1)d(n − 2))= (−1)2(d(n − 2) − (n − 2)d(n − 3))= . . .= (−1)n−2(d(2) − 2d(1)) = (−1)n−2

= (−1)n.

Dakled(n) − nd(n − 1) = (−1)n.

Odavde slijedid(i)i!− d(i − 1)(i − 1)!

= (−1)i

i!.

Sumiranjem gornje relacije po svim i od 2 do n, dobijamo

d(n)n!− d(1)

1!=

n

∑i=2

(−1)ii!=

n

∑i=0

(−1)ii!

.

43

Page 46: Diskretna matematika (Skripta)

2. R, –

Primjer 2.3.4 (In olucije) Koliko ima permutacija n–skupa sa svojstvom da su svi pri-padni ciklusi duljine 1 ili 2?

Označimo taj broj sa s(n). Lako se vidi da vrijedi s(3) = 4 (takve permutacije su(1) (2) (3), (1 2) (3), (1 3) (2), (1) (2 3)), s(2) = 2, s(1) = 1.

Opet ćemo takve permutacije podijeliti u dvije klase:

A one kojima je n ksna točka, i

B one kojima n nije ksna točka.

Involucija u klasi A ima očito s(n − 1). Za involucije u klasi B razmišljamo na sljedećinačin. Ako takva permutacija preslikava n u i, tada, po pretpostavci, sadrži ciklus (i n), ana preostalihn−2 brojeva djeluje kao permutacija s ciklusima duljine 1 ili 2. Kako postojin − 1 izbora za i, takvih permutacija ima (n − 1)s(n − 2).

Dakle, rekurzija za s(n) je

s(n) = s(n − 1) + (n − 1)s(n − 2).

Propozicija 2.3.5 Vrijedi

(a) broj s(n) je paran za n ≥ 2,

(b) s(n) >√n! za n ≥ 2.

Dokaz: Obje tvrdnje ćemo dokazati matematičkom indukcijom. Za bazu uzimamo n =2,3. Lako se provjeri da su u oba slučaja baze zadovoljene.(a) Pretpostavimo da su s(n − 1) i s(n − 2) parni brojevi. Tada je broj s(n) očito paran.(b) Pretpostavimo da vrijedi s(n − 1) >

√(n − 1)! i s(n − 2) >

√(n − 2)!. Tada

s(n) = s(n − 1) + (n − 1)s(n − 2) >√(n − 1)! + (n − 1)

√(n − 2)!

=√(n − 1)!(1 +

√n − 1) >

√(n − 1)!

√n =√n!.

(Relacija 1 +√n − 1 >

√n slijedi iz (1 +

√n − 1)2 = n + 2

√n − 1.) ◻

Napomena: (b) je prilično dobra ocjena.

2.4 Funkcije izvodniceS redovima koji će se javljati pri korištenju funkcija izvodnica baratati ćemo isključivo kaos formalnim redovima potencija, tj. neće nas zanimati pitanje konvergencije redova. Tako-đer, koristiti ćemo operacije zbrajanja,množenja, integriranja i deriviranja redova koristeći

44

Page 47: Diskretna matematika (Skripta)

2.4. Funkcije izvodnice

sljedeće formule:

(∞∑n=0

antn) + (

∞∑n=0

bntn) = (

∞∑n=0(an + bn)tn) ,

(∞∑n=0

antn) ⋅ (

∞∑n=0

bntn) = (

∞∑n=0

cntn) , gdje su cn =

n

∑i=0

aibn−i,

d

d t(∞∑n=0

antn) =

∞∑n=1

nantn−1 =

∞∑n=0(n + 1)an+1tn,

∫∞∑n=0

antn =

∞∑n=0

ann + 1

tn+1 =∞∑n=1

an−1n

tn.

Primjer 2.4.1 Odredite funkcije izvodnice za sljedeće nizove:a) an = 1,b) an = n,c) an = 3n + 5,d) an = 2n,

e) an =⎧⎪⎪⎨⎪⎪⎩

0, n paran,1, n neparan.

,

f ) an = 1n+2 .

Rješenje: a) U ovom slučaju formulu za funkciju izvodnica direktno dobijemo korište-njem formule za sumu geometrijskog reda: f1(x) = ∑∞n=0 anxn = ∑∞n=0 xn = 1

1−x .b) Funkcija izvodnica je dana redom f2(x) = ∑∞n=0 nxn. Krenut ćemo od geometrijskogreda (tj. reda iz a) dijela), koji ćemo najprije derivirati, te potom pomnožiti s x:

∞∑n=0

xn = 1

1 − xÔ⇒

∞∑n=0

nxn−1 = 1

(1 − x)2Ô⇒

∞∑n=0

nxn = x

(1 − x)2= f2(x).

c) Očito za traženu funkciju izvodnicu f3(x) = ∑∞n=0(3n + 5)xn vrijedif3(x) = 3f2(x) + 5f1(x) = 3x

(x−1)2 +5

1−x .d) I ovdje ćemo se poslužiti geometrijskim redom:f4(x) = ∑∞n=0 2nxn = ∑∞n=0(2x)n = 1

1−2x .e) I ovdje se postupak svodi na korištenje formule za sumu geometrijskog reda:f5(x) = ∑∞n=0 x2n+1 = x∑∞n=0(x2)n = x

1−x2 .f ) Opet krećemo od geometrijskog reda, koji ćemo najprije pomnožiti s x, potom integri-rati (po x), te na koncu podijeliti s x2:

∞∑n=0

xn = 1

1 − xÔ⇒

∞∑n=0

xn+1 = x

1 − xÔ⇒

∞∑n=0

xn+2

n + 2= ∫

x

1 − xdx = −x−ln(1−x)

Ô⇒∞∑n=0

xn

n + 2= x − ln(1 − x)

x2. ◻

45

Page 48: Diskretna matematika (Skripta)

2. R, –

Primjer 2.4.2 Nađite funkciju izvodnicu za niz (an) koji zadovoljava rekurzivnu relacijuan − 5an−1 + 6an−2 = 5n, uz početne uvjete a0 = 0, a1 = 1. Uz pomoć funkcije izvodnicenađite formulu za opći član niza (an).

Rješenje: De niramo f(x) = ∑∞n=0 an. Lako se vidi da vrijedi xf(x) = ∑∞n=1 an−1xn,x2f(x) = ∑∞n=2 an−2xn. Stoga∞∑n=2(an−5an−1+6an−2) = f(x)−a0−a1x−5(xf(x)−a0x)+6x2f(x) = f(x)(1−5x+6x2)−x.

S druge strane∞∑n=2

5nxn =∞∑n=2(5x)n = (5x)2

∞∑n=0(5x)n = 25x2

1 − 5x.

Dakle vrijedi f(x)(1 − 5x + 6x2) − x = 25x2

1−5x , odakle slijedi f(x) = 20x2+x(1−5x)(1−5x+6x2) .

Rastavimo funkciju f na parcijalne razlomke: f(x) = A1−5x +

B1−2x +

C1−3x (budući da

1−5x+6x2 = (1−2x)(1−3x)). Standardnim postupkom dobijamoA = 25/6,B = 22/3,C = −23/2, dakle f(x) = 25/6∑∞n=0(5x)n + 22/3∑∞n=0(3x)n − 23/2∑∞n=0(3x)n, što povlačian = 25/65n + 22/32n − 23/23n. ◻

Catalanovi i Bellovi brojevi će nam poslužiti kao ilustracije upotrebe funkcija izvodnica ukombinatorici.

2.4.1 Catalanovi brojeviCatalanovi brojevi se javljaju pri prebrojavanju zapanjujuće mnogo kombinatornih obje-kata. Jedan od problema gdje se javljaju Catalanovi brojevi je sljedeći.

..A(0,0)

.

B(3,3)

Na koliko različitih načina možem doći odA do B, koristeći se crtama, tako da uvijekidemo desno ili gore, te tako da se nikad neprelazi dijagonalaAB?

Drugi problem gdje se javljaju Catalanovi brojevi je sljedeći. Na koliko načina mo-žemo napisati sumu odn članova korištenjem zagrada, a tako da sumumožemo izračunatizbrajanjem po dva člana u svakom koraku? Na primjer, za n = 4 imamo pet mogućnosti:(((a + b) + c) + d), ((a + (b + c)) + d), (a + ((b + c) + d)), (a + (b + (c + d))) i((a + b) + (c + d)). (U slučaju algebarskih sustava koji nisu asocijativni, ovi izrazi bi upravilu imali različite vrijednosti.)

Riješimo najprije ovaj problem, pa ćemo se onda vratiti na problem broja puteva.Neka je Zn traženi broj. Svaki izraz u zagradi ima oblik (E1 + E2), gdje su E1 i E2

izrazi u zagradama koji imaju (recimo) k i n − k članova, za neki 1 ≤ k ≤ n − 1. Postoji

46

Page 49: Diskretna matematika (Skripta)

2.4. Funkcije izvodnice

Zk mogućnosti zaE1 i Zn−k zaE2. Zbrajanjem po svim mogućim k-ovima dolazimo dosljedeće (nelinearne) rekurzije:

Zn =n−1∑k=1

ZkZn−k, n ≥ 2.

Vratimo se na problem puteva.Odgovor na pitanje je 5, a ti putevi su:DGDGDG,DGDDGG,DDGGDG,

DDGDGG,DDDGGG, gdje jeD oznaka za „desno”, a G za „gore”.Što je s brojem „desno—gore” puteva u kvadratun×n koji se nalaze ispod dijagonale?

Označimo taj broj puteva s pn. Svaki „dobar” put od A(0,0) do B(n,n)mora „dotaći”dijagonalu barem jedanput (uA) prije dolaska u točkuB. Pretpostavimo da jeC(m,m)točka u kojoj je put zadnji put dotakao dijagonalu prije dolaska u točku B. Očito je 0 ≤m < n. Postoji pm mogućnosti za izbor puta odA doC . Tada put mora doći doD(m + 1,m), te na koncu doći do E(n − 1, n − 1), ali ne smije otići iznad linije DE,jer inače C ne bi bila zadnja točka gdje se dotiče dijagonala. Kako su D i E nasuprotnivrhovi kvadrata sa stranicama duljine n−m− 1, postoji pn−m−1 „dobrih” puteva odD doE. Kako je 0 ≤m ≤ n − 1, slijedi

pn =n−1∑m=0

pmpn−m−1. (2.6)

Skicu gornjeg postupka možete pogledati na slici 2.4.

..A.

B

.

C

.

D

.

E

Slika 2.4: broj „dobrih” puteva

Koja je veza između pn i Zn? Kako je Zn+1 = ∑nk=1ZkZn−k+1 = ∑n−1

k=0 Zk+1Zn−k, uzoznaku Ck = Zk+1, slijedi Cn = ∑n−1

k=0 CkCn−k−1. Dakle, rekurzija za brojeve Cn je ista

47

Page 50: Diskretna matematika (Skripta)

2. R, –

kao i za brojeve pn. Kako jeC1 = Z2 = p1 = 1,C2 = Z3 = p2 = 2, slijediCn = Zn+1 = pn,i te brojeve zovemoCatalanovim brojevima. Konvencija je da de niramoC0 = 1.

Nađimo sada formulu zaCn. Neka je F (t) = ∑∞n=0Cntn. Tada je

F 2(t) =∞∑n=0

antn, gdje je an =

n

∑k=0

CkCn−k = Cn+1.

Ovdje smo iskoristili relaciju (2.6). Dakle,

tF 2(t) =∞∑n=0

Cn+1tn+1 = F (t) − 1,

tj. tF 2(t) − F (t) + 1 = 0. Rješavanjem ove kvadratne jednadžbe slijedi

F (t) = 1 ±√1 − 4t2t

.

Koji predznak odabrati? Znamo da vrijedi F (0) = C0 = 1. Ako odaberemo + predznak,tada vrijedi

1 = F (0) = limt→0

F (t) = limt→0

1 +√1 − 4t2t

= limt→0

1 +√1 − 4t2t

⋅ 1 −√1 − 4t

1 −√1 − 4t

= limt→0

4t

2t(1 −√1 − 4t)

=∞.

S druge strane, ako odaberemo − predznak, dobijemo limt→0F (t) = 1. Dakle

F (t) = 1 −√1 − 4t2t

.

Još nam ostaje razviti ovu funkciju u red. Ovdje ćemo se poslužiti poopćenimbinomnimteoremom, koji kaže

(1 + t)r =∞∑n=0(rn)tn, za svaki r ∈ R,

gdje je „binomni koe cijent” (rn) de niran s

(rn) = r(r − 1)⋯(r − n + 1)

n!, uz konvenciju (r

0) = 1.

Dakle,

F (t) = 1

2t(1 − (1 − 4t)1/2) = 1

2t(1 −

∞∑n=0(1/2n)(−4t)n)

= 1

2t(1 − 1 −

∞∑n=1(1/2n)(−1)n4ntn) = 1

2

∞∑n=1(1/2n)(−1)n+14ntn−1

= 1

2

∞∑n=0( 1/2n + 1

)(−1)n4n+1tn.

48

Page 51: Diskretna matematika (Skripta)

2.4. Funkcije izvodnice

Stoga

Cn =1

2( 1/2n + 1

)(−1)n4n+1 = 1

2(−1)n4n+1

12(12 − 1)⋯ (

12 − n)

(n + 1)!

= 1

2(−1)n4n+11

2

1

(n + 1)!(−1

2)⋯(−2n − 1

2)

= (−1)n4n 1

(n + 1)!1 ⋅ 3⋯(2n − 1)

2n(−1)n = 1

(n + 1)!2n(2n − 1)!!

= (vidi Zadatak 2.4) = 1

(n + 1)!2n(2n)!2nn!

= 1

n + 1(2nn).

Dakle,Zn = Cn−1 = 1n(2n−2n−1 ), pn = Cn = 1

n+1(2nn).

Zadatak 2.2Korištenjem poopćenog binomnog teorema dokažite da za svaki k ∈ N vrijedi

1

(1 − x)k=∞∑n=0(n + k − 1

n)xn.

Zadatak 2.3Korištenjem poopćenog binomnog teorema dokažite da vrijedi

1√1 − x

=∞∑n=0(n − 3/2

n)xn.

Zadatak 2.4Dokažite (2n − 1)!! = (2n)!2nn! .

Gdje se još javljaju Catalanovi brojevi?Na primjer,Cn−2 je broj načina na koji možemo podijeliti konveksann–terokut u tro-

kute povlačeći n−3međusobno nepresijecajućih dijagonala, što je prvi dokazao Euler. Zan = 5 postojiC3 = 5 načina:

. . . . .

2.4.2 Bellovi brojeviProbajmo sada naći funkciju izvodnicu za Bellove brojeve.

Lako se vidi da se rekurzija (1.4) može i ovako napisati:

Bn =n−1∑i=0(n − 1

i)Bi. (2.7)

49

Page 52: Diskretna matematika (Skripta)

2. R, –

De niramo F (t) = ∑∞n=0Bntn. Ovdje se ispostavlja da uobičajeni „trikovi” ne prolaze.Stoga je potreban novi pristup: pomnožimo funkciju F s funkcijom t↦ et. Tada

F (t)et = (∞∑n=0

Bntn)(

∞∑n=0

1

n!tn) =

∞∑n=0(

n

∑r=0

Br1

(n − r)!) tn

=∞∑n=0

1

n!(

n

∑r=0

Brn!

(n − r)!) tn.

Sada smo vrlo blizu situacije u kojoj bi mogli iskoristiti (2.7), ali nema načina da ubacimonedostajući r! u desnu stranu. Stoga, promijenimo malo pravila: ako ne možemo naći za-tvorenu formulu za F (t) = ∑∞n=0Bntn, probajmo naći zatvorenu formulu za F (t) =∑∞n=0 Bn

n! tn.

S novom funkcijom F dobivamo slijedeće

F (t)et =∞∑n=0

1

n!(

n

∑r=0

Br

r!

n!

(n − r)!) tn =

∞∑n=0

1

n!(

n

∑r=0(nr)Br) tn =

∞∑n=0

1

n!Bn+1t

n

=∞∑n=0(n + 1) Bn+1

(n + 1)!tn =

∞∑n=1

nBn

n!tn−1 = F ′(t).

Stoga F ′(t)/F (t) = et, što povlači lnF (t) = et +C , tj.

F (t) = eet+C .

Iz F (0) = B0 = 1 slijediC = −1, dakle

F (t) = eet−1.

Funkcije izvodnice oblikaF (t) = ∑∞n=0 ann! t

n zovemo eksponencijalnim funkcijamaizvodnica (EFI). EFI je zapravo funkcija izvodnica za niz an

n! .Čemu uvoditi novu vrstu funkcija izvodnica? Ukoliko ne možemo naći običnu funk-

ciju izvodnica, i EFI moži dobro doći. Na primjer, iz

∞∑n=0

Bn

n!tn = eet−1 = e∑∞r=1 tr

r! =∞∏r=1

etr

r! =∞∏r=1(∞∑k=0(t

r

r!)k 1

k!)

= (1 + t1

1!+ ( t

1

1!)2 1

2!+ ( t

1

1!)3 1

3!+⋯) × (1 + t2

2!+ ( t

2

2!)2 1

2!+ ( t

2

2!)3 1

3!+⋯)×

× (1 + t3

3!+ (t

3

3!)2 1

2!+ (t

3

3!)3 1

3!+⋯) ×⋯,

uspoređujući koe cijente od tn na objema stranama, slijedi

Bn = ∑1⋅r1+2⋅r2+⋯+k⋅rk=n

n!

(1!)r1r1!(2!)r2r2!⋯(k!)rkrk!.

50

Page 53: Diskretna matematika (Skripta)

2.4. Funkcije izvodnice

Kao i za obične funkcije izvodnice, i kod eksponencijalnih funkcija izvodnica često pri-padne redove deriviramo (npr. kao u slučaju Bellovih brojeva), integriramo, zbrajamo,množimo itd. Ulogu geometrijskog reda ovdje igra red ex = ∑∞n=0 xn

n! . Za eksponencijalnufunkciju izvodnicu f(x) = ∑∞n=0 an

n! xn vrijedi

f ′(x) =∞∑n=−1

an+1n!

xn,

∫ f(x)dx =∞∑n=1

an−1n!

xn,

dakle, deriviranje i integriranje eksponencijalne funkcije izvodnice se svodi na pomak pri-padnog niza za jedno mjesto ulijevo ili udesno.

Primjer 2.4.3 Odredite eksponencijalne funkcije izvodnice za sljedeće nizove:a) an = n!,b) an = an,c) an = n2,

d) an =⎧⎪⎪⎨⎪⎪⎩

0, n neparan,1, n paran.

Rješenje: a) f(x) = ∑∞n=0 n!n!x

n = 11−x .

b) f(x) = ∑∞n=0 an

n! xn = eax.

c) Uvrštavanjem dobijamo f(x) = ∑∞n=0 n2

n! xn = ∑∞n=0 n

(n−1)!xn. Da bi smo došli do za-

tvorene formule za f krenut ćemo od reda za eksponecijalnu funkciju, kojeg ćemo najprijederivirati, potom pomnožiti s x, ponovno derivirati, te na koncu opet pomnožiti s x:

∞∑n=0

xn

n!= exÔ⇒

∞∑n=0

xn−1

(n − 1)!= exÔ⇒

∞∑n=0

xn

(n − 1)!= xexÔ⇒

∞∑n=0

nxn−1

(n − 1)!= ex+xex

Ô⇒∞∑n=0

nxn

(n − 1)!= xex + x2ex.

Dakle, f(x) = xex + x2ex.d) f(x) = ∑∞n=0 x2n

(2n)! = chx. ◻

Primjer 2.4.4 Odrediteniz čija je ekspoencijalna funkcija izvodnicadana funkcijomf(x) =(1 − 2x)−3/2.

Rješenje: Razvit ćemo funkciju f u red korištenjem poopćenog binomnog teorema:(1 − 2x)−3/2 = ∑∞n=0 (

−3/2n)(−2x)n. Raspišimo izraz (−3/2n

):

(−3/2n) =−3

2(−32 − 2)⋯(

−2n−12 )

n!= 1

2n(−1)n (2n + 1)!!

n!.

Stoga f(x) = ∑∞n=0 12n (−1)n

(2n+1)!!n! (−1)n2nxn = ∑∞n=0

(2n+1)!!n! xn, dakle traženi niz je

an = (2n + 1)!!. ◻

51

Page 54: Diskretna matematika (Skripta)

2. R, –

I neki drugi nizovi osim Bellovih brojeva imaju EFI jednostavnog oblika, na primjer

Zadatak 2.5Dokažite da je EFI za deranžmane dana s F (t) = e−t(1 − t)−1.

Zadatak 2.6Dokažite da je EFI za Stirlingove brojeve druge vrste S(n, r) dana s F (t) = 1

r!(et − 1)r.

U pravilu, rijetki su nizovi za koje je bilo koja vrsta funkcije izvodnice dana lijepomzatvorenom formulom.

Još jedna vrsta funkcija izvodnica koje imaju važnu ulogu u matematici je Dirichle-tova funkcija izvodnica, koja nizu (an) pridružuje funkciju f(s) = ∑∞n=1 an

ns . Ukolikoje, na primjer, an = 1, za svaki n ∈ N, pridružena Dirichletova funkcija izvodnica se zoveRiemannova zeta funkcija, u oznaci ζ(s), koja ima važnu ulogu u teoriji brojeva budućida

ζ(s) = ∏p prost

1

1 − p−s.

2.5 Složenost algorirtama za sortiranje

Kao ilustraciju korištenja rekurzija i funkcija izvodnica u primjenjenoj matematici, izra-čunati ćemo složenost za tri popularna algoritma za sortiranje: bubblesort, megesort i qu-icksort.

2.5.1 BubblesortUsporedimo prva dva elementa iz liste, zamijenjujući ih ukoliko nisu u traženom poretku.Tada usporedimo drugi i treći element liste, opet ih zamijenjujući ukoliko nisu u traženomporetku. Ovaj postupak provodimo dok ne dođemo do kraja liste. Tada ponovimo istipostupak za prvih n − 1 brojeva, pa za prvih n − 2, …

Ukupan broj uspoređivanja je

(n − 1) + (n − 2) +⋯ + 1 = 1

2n(n − 1) = 1

2n2 − 1

2n,

dakle bubblesort ima složenostO(n2).

2.5.2 MergesortIdeja algoritma je da podijelimo listu na dva (otprilike) jednaka dijela, koja sortiramo, aonda ih spojimo.

Proces spajanja dviju lista duljina l im zahtijeva najviše l+m−1 uspoređivanja. Zaista,pretpostavimo da imamo dvije takve liste, složene u rastućem poretku. Usporedimo prve

52

Page 55: Diskretna matematika (Skripta)

2.5. Složenost algorirtama za sortiranje

elemente u listama imanji upišemounovu listu, izbacujući ga iz stare liste. Sada ponovimoovaj proces, …

Prije nego što dođe do spajanja, dvije liste možemo sortirati rekurzivno koristeći gor-nju metodu. Neka je tn broj uspoređivanja potrebnih da sortiramo listu od n elemenataovommetodom.Ukolikon podijelimo u l+k, tada tn = tl+ tk+ l+k−1 = tl+ tk+n−1.Ukoliko uzmemo n = 2m (da bi smo uvijek mogli podijeliti listu na dva jednaka dijela),dolazimo do rekurzije

t2m = 2t2m−1 + (2m − 1).

Stavimo am = t2m . Tada vrijedi am = 2am−1 + (2m − 1). Rješenje pripadne homogenerekurzije je očitoA2m.

Nađimo sada neko partikularno rješenje. Probat ćemo s rješenjem oblikaam = Bm2m + C (rješenje oblika am = B2m + C neće proći budući da je am = 2m

rješenje homogene rekurzije):

Bm2m +C = 2B(m − 1)2m−1 + 2C + 2m − 1⇒ 0 = −B2m + 2m − 1 +C,

odakle slijediB = C = 1, tj. am =m2m + 1.Dakle, opće rješenje je am = A2m + m2m + 1. Iz a1 = 1 (za sortiranje liste koja

se sastoji od dva elementa je potrebno samo jedno uspoređivanje) slijedi A = −1, stogaam = 2m(m − 1) + 1. Dakle,

t2m = 1 + 2m(m − 1), tj. tn = 1 + n(log2 n − 1).

Stoga mergesort ima složenost O(n log2 n), što je bitno bolje od O(n2) složenosti bub-blesorta.

2.5.3 uicksort

Algoritam za quicksort se može zapisati na sljedeći način:

Neka je a prvi element liste.� Podijelimo ostatak liste u dva dijela L−, L+ koji se sas-toje od elemenata manjih, tj. većih od a.� Sortiramo L− i L+.� Vratimo (sortirane) L− i L+.

Želimo izračunati prosječan broj uspoređivnja, uz uvjet da su svi poretci liste jednakovjerojatni. Sljedeće pretpostavke su važne za izračunavanje (prosječne) složenosti:

• prvi element a ima jednaku vjerojatnost da bude prvi, drugi, …, n–ti najmanji ele-ment,

• listeL− iL+ imaju slučajan poredak (svi poretci su jednko vjerojatni).

53

Page 56: Diskretna matematika (Skripta)

2. R, –

Neka je qn prosječan broj uspoređivanja potrebnih da sortiramo listu od n elemenata.Tada vrijedi

qn = n − 1 +1

n

n

∑k=1(qk−1 + qn−k).

Zaista, prvi korak zahtijevan−1 uspoređivanja; ukoliko je a k–ti najmanji element, drugikorak zahtijeva u prosjeku qk−1 + qn−k uspoređivanja, te taj broj moramo usrednjiti posvim mogućim vrijednostima od k.

Ova rekurzija se može pojednostaviti (raspisivanjem sume) na

qn = n − 1 +2

n

n−1∑k=0

qk, (2.8)

gdje je q0 = 0.Želimo naći funkciju izvodnicu niza (qn). Neka je Q(t) = ∑∞n=0 qntn. Množenjem

relacije (2.8) s ntn i sumiranjem po n dolazimo do sljedeće relacije

∞∑n=0

nqntn

´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶..

=∞∑n=0

n(n − 1)tn

´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶..

+2∞∑n=0(n−1∑i=0

qi) tn

´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶..

. (2.9)

Iz (2.9) slijedi..

³¹¹¹¹·¹¹¹¹µtQ′(t) =

..³¹¹¹¹¹¹¹¹¹¹·¹¹¹¹¹¹¹¹¹¹¹µ

2t2

(1 − t)3+

..³¹¹¹¹¹¹¹¹·¹¹¹¹¹¹¹¹µ2tQ(t)1 − t

. (2.10)

.Zadatak 2.7Provjerite da relacija (2.10) zaista odgovara relaciji (2.9).

Množeći relaciju (2.10) s (1−t)2

t dolazimo do jednadžbe

(1 − t)2Q′(t) = 2t

1 − t+ 2Q(t)(1 − t),

odakle slijedi

2t

1 − t= (1 − t)2Q′(t) − 2Q(t)(1 − t) = ((1 − t)2Q(t))′ ,

što, uzQ(0) = 0 povlači

(1 − t)2Q(t) = −2(t + ln(1 − t)),

dakleQ(t) = −2(t + ln(1 − t))

(1 − t)2. (2.11)

54

Page 57: Diskretna matematika (Skripta)

2.6. Formula uključivanja–isključivanja

Kako iz (2.11) slijedi

Q(t) = 2(t2

2+ t3

3+⋯) (1 + 2t + 3t2 +⋯),

dobijamo

qn = 2n

∑i=2

1

i(n − i + 1) = 2(n + 1)

n

∑i=1

1

i− 4n.

Dobru aproksimaciju za qn možemo dobiti ako zamjenimo∑ni=1

1i s lnn (suma je aprok-

simacija površine ispod krivulje y = 1/x od x = 1 do x = n), što nam dajeqn ∼ 2(n + 1) lnn − 4n, dakle qn = 2n lnn +O(n).

2.6 Formula uključivanja–isključivanjaPrimjer 2.6.1 U skupini od 100 studenata, njih 45 igraju nogomet, 53 igraju košarku i55 igraju Tetris. Nadalje, njih 28 igraju nogomet i košarku, 32 igraju nogomet i Tetris , 35igraju košarku i Tetris, te njih 20 igraju sve tri igre. Koliko studenata ne igra ni jednu igru?

Ovaj problem možemo riješiti tako da nacrtamo pripadni Vennov dijagram:

..nogomet

5

.

košarka10

. Tetris8

.

8

.

15

.20

.12

.

22

Brojeve upisujemo u odgo-varajuća područja tako štokrenemo od broja eleme-nata presjeka sva tri skupa,onda računamo broj ele-menata za presjeke dvajuskupova dok na koncu nedođemo do broja eleme-nata koji nisu ni u jednomskupu.

Formula uključivanja–isključivanja (skraćeno FUI) je formula koja formalizira gornjipostupak.

Neka jeX univerzalni skup i neka jeA1, . . . ,An familija podskupova odX . Ukolikoje I ⊆ {1, . . . , n} pišemo

AI =⋂i∈I

Ai, uz konvencijuA∅ =X.

Teorem 2.6.2 Neka je A1, . . . ,An familija podskupo a skupa X . Tada je broj elemenataodX koji ne leže ni u jednom od skupavaAi, i = 1, . . . , n, dan s

∑I⊆{1,...,n}

(−1)∣I ∣∣AI ∣. (2.12)

55

Page 58: Diskretna matematika (Skripta)

2. R, –

Dokaz: Za svaki x ∈ X izračunati ćemo koliko je njegov „doprinos” sumi u (2.12), tj.koji je zbroj koe cijenata skupovaAI u (2.12) koji ga sadrže.

Pri tome pod „doprinosom” sumi, mislimo na sljedeću elementarnu činjenicu:

∑x∈X

⎧⎪⎪⎨⎪⎪⎩

1, x ∈ A,0, x ∉ A

= ∣A∣,

koja povlači sljedeći zapis sume u (2.12):

∑I⊆{1,...,n}

(−1)∣I ∣∣AI ∣ = ∑I⊆{1,...,n}

(−1)∣I ∣ ∑x∈X

⎧⎪⎪⎨⎪⎪⎩

1, x ∈ AI ,

0, x ∉ AI

= ∑x∈X

∑I⊆{1,...,n}

(−1)∣I ∣⎧⎪⎪⎨⎪⎪⎩

1, x ∈ AI ,

0, x ∉ AI

.

Pretpostavimo da x ∈ X nije ni u jednom od skupovaAi, i = 1, . . . , n. Tada je jediničlan sume kojem x pridonosi I = ∅, i doprinos je (−1)0 = 1.

Inače, neka je J = {i ∶ x ∈ Ai} neprazan, j = ∣J ∣. Tada je x ∈ AI točno onda kada jeI ⊆ J . Dakle, doprinos od x je dan s

∑I⊆J(−1)∣I ∣ =

j

∑i=0(−1)i(j

i) = 0,

budući da postoji (ji) skupova oblikaAI za ∣I ∣ = i.Dakle, elementi od X koji se ne nalaze ni u jednom od skupova Ai, i = 1, . . . , n pri-

donose 1 sumi, dok ostali elementi pridonose 0 sumi, što znači da suma (2.12) daje brojelemenata skupaX koji se ne nalaze ni u jednom od skupovaAi, i = 1, . . . , n. ◻

Teorem 2.6.3 Broj surjekcija s n–skupa u k–skup je dan formulom

k

∑i=0(−1)i(k

i)(k − i)n. (2.13)

Dokaz: Neka je X skup svih preslikavanja s {1, . . . , n} u {1, . . . , k}. Dakle, ∣X ∣ = kn.Za i = 1, . . . , k neka jeAi skup preslikavanja f za koje se i ne nalazi u slici od f .

Tada za svaki x, f(x)može biti bilo koji od k − 1 brojeva različitih od i, dakle ∣Ai∣ =(k−1)n. Općenito,AI će se sastojati od svih preslikavanja čija slika ne sadrži elemente odI , dakle ∣AI ∣ = (k − ∣I ∣)n.

Preslikavanje iz X je surjekcija ako i samo ako ne leži ni u jednom od skupova Ai.Stoga iz teorema 2.6.2 slijedi da je broj surjekcija dan s

∑I⊆{1,...,k}

(−1)∣I ∣(k − ∣I ∣)n =k

∑i=0(ki)(−1)i(k − i)n,

budući da postoji (ki) skupova I kardinalnosti i, gdje i ide od 0 do k. ◻

56

Page 59: Diskretna matematika (Skripta)

2.6. Formula uključivanja–isključivanja

Teorem 2.6.4 Broj deranžmana skupa {1, . . . , n} je dan s

n!n

∑i=0

(−1)ii!

.

Dokaz: Ovoga puta jeX skup svih permutacija skupa {1, . . . , n}, aAi je skup permuta-cija kojima je i ksna točka, i = 1, . . . , n. Vrijedi ∣Ai∣ = (n − 1)!, te ∣AI ∣ = (n − ∣I ∣)!.

Permutacija skupa {1, . . . , n} je deranžman ako i samo ako ne leži ni u jednom odskupovaAi, i = 1, . . . , n. Stoga je po teoremu 2.6.2 broj deranžmana dan s

∑I⊆{1,...,n}

(−1)∣I ∣(n − ∣I ∣)! =n

∑i=0(ni)(−1)i(n − i)! =

n

∑i=0(−1)in!

i!. ◻

Jedna od posljedica teorema 2.6.3 je i sljedeća formula za Stirlingove brojeve drugevrste:

S(n, k) = 1

k!

k

∑i=0(−1)i(k

i)(k − i)n. (2.14)

Zaista, formula odmah slijedi iz teorema 1.6.6.Nadalje, iz (2.14) slijedi sljedeća formula za Bellove brojeve

Bn =n

∑k=0

1

k!

k

∑i=0(−1)i(k

i)(k − i)n.

57

Page 60: Diskretna matematika (Skripta)
Page 61: Diskretna matematika (Skripta)

3Teorija grafova

3.1 Uvod i osnovne de nicije

Spojmomgrafa smo se već sreli u primjeru 0.1.5.Taj graf je ovako izgledao:

....

..

.

.

.

.Ovomslikom smo opisali strukturu koja se sastoji od četiri objekta, koja ćemo zvati vrhovi, kojisu povezani sa sedam krivulja, koje ćemo zvati bridovi.

Formalno, graf de niramo kao uređeni par skupova (V,E), gdje je V skup vrhova, aE skup 2–podskupova od V , koje zovemo bridovi. Katkada ovu de niciju proširujemotako da dopustimo petlje (bridove koje spajaju vrh sa samim sobom), višestruke bridove(više bridova između para vrhova, npr. kod problema Königsberških mostova) i usmje-rene bridove (bridovi koji imaju orijentaciju tako da idu od jednog vrha prema drugome).Naravno, usmjerene bridove reprezentiramo uređenim parovima, a ne 2–podskupovima,dok kod višestrukih bridova E postaje multiskup. Graf koji ima usmjerene bridove zvatićemo usmjereni graf ili digraf, a graf koji ima višestruke bridove zvati ćemo multigraf.Katkada, da naglasimo da ne govorimo o digrafu ili multigrafu, koristiti ćemo izraz jed-nostavni graf.

Grafovi se često opisuju svojim gra čkim prikazom, koji treba biti takav da iz njegamožemo rekonstruirati formalni zapis grafa oblika (V,E). Općenito, smatramo da je grafzadan, ukoliko su nam zadani njegovi vrhovi, te ukoliko znamo koji su vrhovi međusobnopovezani. Stoga graf možemo promatrati kao binarnu relaciju susjedstva na skupu vrhova,gdje kažemo da su dva vrha susjedna ukoliko postoji brid koji ih spaja, ili formalno, vrhoviu, v ∈ V su susjedni ukoliko postoji e = {u, v} ∈ E. Za jednostavne grafove ta je relacijaire eksivna i simetrična.

Dva najjednostavnija primjera grafova su potpuni graf, graf u kojemu je svaki parvrhova brid, i nul graf, koji uopće nema bridova. Potpuni i nul graf s n vrhova označa-vamo s Kn i Nn. Na primjer, na slici 3.1 je prikaz grafa K10, a ovo je prikaz grafa N7... .. .. .. .. .. .. . Kažemo da je vrh v incidentan s bridom e ukoliko je e = {∗, v} ilie = {v,∗}. Katkada se brid {u, v} skraćeno zapisuje kao uv.

59

Page 62: Diskretna matematika (Skripta)

3. T

. ..

.

.

.

.

.

.

.

.. .

.

.

.

.

.

.

.

.

Slika 3.1: GrafK10

Očito je da jedan te isti graf možemo gra čki prikazati na različite načine. Stoga mo-ramo de nirati kada dva grafa smatramo istim, tj. izomorfnim. Kažemo da su dva grafaG1 i G2 izomorfna ukoliko je moguće označiti vrhove oba grafa na isti način, i to takoda za svaki označeni par u, v vrhova, broj bridova koji spajaju u i v u G1 je jednak brojubridova koji spajaju u i v uG2. Drugim riječima, grafoviG1 = (V1,E1) iG2 = (V2,E2)su izomorfni ukoliko postoje bijekcije θ ∶ V1 → V2,ϕ ∶ E1 → E2 takve da je v incidentan sbridom e uG1 ako i samo ako je θ(v) incidentan s bridom ϕ(e) uG2. Na primjer, grafovina slikama 3.2 i 3.3 su izomorfni.

... .. .. .. .. ..

.

.

.

.

Slika 3.2: Graf izomorfan s grafom na slici 3.3

Zadatak 3.1Dokažite da su grafovi na slikama 3.2 i 3.3 izomorfni.

Dokazivanje (ne)izomorfnosti dvaju grafova je općenito vrlo težak problem, a spada uklasu tzv. problema skrivene podgrupe (eng. hidden subgroup problem).

60

Page 63: Diskretna matematika (Skripta)

3.1. Uvod i osnovne de nicije

...

.

.

.

.

.

. .. ..

.

.

.

.

Slika 3.3: Graf izomorfan s grafom na slici 3.2

Neka je G grupa, te neka je dano preslikavanje f ∶ G → X , gdje je X neki konačni skup. Zapreslikavanje f vrijedi f(x) = f(y) akkox = yh, zah ∈H , gdje jeH neka (nepoznata) podgrupaod G. Problem skrivene podgrupe je problem određivanja podgrupeH , uz (što manje) korištenjefunkcije f .

U slučaju izomor zma grafovaG1,G2,G = Sn, gdje jeSn grupa permutacija redan, an je brojvrhova grafova (ukoliko grafovi nemaju isti broj vrhova, očito nisu izomorfni),X je skup grafova sn vrhova, f(π) = π(G1), gdje je π(G1) graf dobijen permutiranjem vrhova grafa G1 s obziromna permutaciju π, aH = {π ∶ π(G1) ≅ G1}, gdje je ≅ oznaka za izomorfnost grafova.

Podgraf grafa G = (V,E) je graf kojemu se skup vrhova i skup bridova podskupoviod V iE, respektivno. Ukoliko jeG′ = (V ′,E′) podgraf odG, tada za svaki brid e ∈ E′vrijedi da su oba njegova vrha u V ′. Jedan podgraf grafa sa slike 3.3 (ili slike 3.2) je dan naslici 3.4. Dvije vrste podgrafova su naročito važne. Inducirani podgraf grafaG induciranskupomV ′ je podgrafG′ = (V ′,E′), gdje seE′ sastoji od svih bridova odG čija oba krajaleže uV ′, dok jeV ′ neki (zadani) podskupodV . Jedanprimjer induciranogpodgrafa grafasa slike 3.3 je dan na slici 3.5.Razapinjući podgraf je podgraf oblikaG′ = (V,E′). Jedanprimjer razapinjućeg podgrafa grafa sa slike 3.3 je danna slici 3.6.Dakle, svaki graf s najvišen vrhova je podgraf od Kn, svaki graf s točno n vrhova je razapinjući podgraf od Kn, tesu svi inducirani podgrafovi odKn potpuni grafovi.

...

.

.

.

. .. ..

.

.

Slika 3.4: Podgraf grafa sa slike 3.3 (ili slike 3.2)

Sada ćemo de nirati neke načine „kretanja” po grafu. Šetnja u grafu je niz(v0, e1, v1, e2, v2, . . . , en, vn), gdje je ei brid {vi−1, vi}, za i = 1, . . . , n. Kažemo da je tošetnja od v0 do vn. Duljina šetnje je broj bridova u nizu (tj. broj vrhova u nizu manje je-dan). Kažemo da je šetnja zatvorena ukoliko je vn = v0. U jednostavnom grafu bridovi

61

Page 64: Diskretna matematika (Skripta)

3. T

...

.

.

.

. .. ..

.

.

Slika 3.5: Inducirani podgraf grafa sa slike 3.3 (ili slike 3.2)

...

.

.

.

.

.

. .. ..

.

.

.

.

Slika 3.6: Razapinjući podgraf grafa sa slike 3.3 (ili slike 3.2)

šetnje su potupuno određeni vrhovima, pa često govorimo o šetnji (v0, v1, . . . , vn), gdjese podrazumijeva da su vrhovi vi−1 i vi susjedni. Sada ćemo de nirati neke specijalne vr-ste šetnji. Staza je šetnja u kojoj su svi bridovi različiti, dok je put šetnja u kojoj su svivrhovi različiti (osim eventualno prvog i zadnjeg). Ideja je da stazom može ići istraživačkoji nije zainteresiran da ponovo prolazi bridom koji je već istražio, dok je put način da sedođe od jednog mjesta u drugo, bez ikakvog ponavljanja. Nadalje, zatvoreni put zovemo

ciklus. Uočite da je put uvijek i staza, osim sljedećeg patološkog slučaja: ... ... e1 , gdje je(v0, e1, v1, e1, v0) put, ali ne i staza.

Na slici 3.7 je zelenom bojom označen ciklus (v2, e2, v3, e3, v4, e11, v6, e7, v5, e6, v2).Jedan primjer staze koja nije put je šetnja (v3, e3, v4, e4, v7, e12, v6, e11, v4).

Što se tiče povezanosti u grafu, tj. mogućnosti dolaska iz jednog vrha u drugi, nemasuštinskih razlika između putova, staza i šetnji.

Propozicija 3.1.1 (a) Za dva različita vrha x, y grafa G uvjeti da postoji šetnja, stazaili put između x i y su ekvivalentni.

(b) Za bilo koji grafG, uvjeti daG sadrži zat orenu stazu ili put su ekvivalentni.

62

Page 65: Diskretna matematika (Skripta)

3.1. Uvod i osnovne de nicije

...v1

.

.

v2 .

.

v3 .

.

v4

.. v5 .. v6

.

.

v7

.. v8.

e1

.

e4

.

e2

.

e5

. e8.

e9

.

e10

.

e12

.

e2

.

e3

.

e11

. e7.

e6

Slika 3.7: Šetnje po grafu

Dokaz: Neka nam je dana šetnja od x do y. Dovoljno je pokazati da tada postoji i putod x do y. Neka je naša šetnja dana s (v0, e1, v1, . . . , vi, ei+1, . . . , vj, ej+1, . . . , en, vn) ipretpostavimo da je vi = vj . Tada je i (v0, e1, v1, . . . , vi, ej+1, . . . , en, vn) šetnja od x doy. Na taj način možemo ukloniti sve vrhove u šetnji koji se ponavljaju. ◻

Ukolikopostoje putevi odxdoy i ody do z, tada postoji i put odxdo z, ali šetnja dobijenaspajanjem puteva od x do y i od y do z ne mora biti put.

Zadatak 3.2Nađite graf koje ima vrhove x, y i z takve da postoje putevi od x do y i od y do z, ali dašetnja dobijena spajanjem puteva od x do y i od y do z nije put.

Sada ćemode nirati jednu važnu relaciju ekvivalencije≡na skupu vrhovaV grafaG:x ≡ yako postoji put (ili staza ili šetnja) od x do y.

Zadatak 3.3Dokažite da je ≡ zaista relacija ekvivalencije.

Ova relacija ekvivalencije de nira jednu particiju skupa V , te de niramo komponentepovezanosti (ili kraće, komponente) grafa kao podgrafove inducirane klasama ekviva-lencije. Graf sa slike 3.4 očito ima dvije komponente, dok, recimo, graf sa slike 3.5 imasamo jednu komponentu.

Kažemo da je graf povezan ako postoji samo jedna komponenta.Stupanj (ili valencija) vrha x grafaG de niramo kao broj bridova grafaG koji sadrže

vrh x. Ukoliko svaki vrh grafa ima isti stupanj, kažemo da je graf regularan. Kažemo daje graf d–regularan ukoliko svaki vrh ima stupanj d. Nadalje, kažemo da je vrh izoliranukoliko je stupnja nula, a list ukoliko je stupnja jedan.

Alternativni naziv valencija dolazi iz kemije: na primjer molekula etana (C2H6) semože reprezentirati grafom na slici 3.8.

Ukoliko graf ima petlju, uzimamo da ta petlja povećava stupanj pripadnog vrha za dva.Ta konvencija nam omogućava da dokažemo sljedeći rezultat.

Teorem 3.1.2 Suma stupnjeva vrho a grafa jednaka je d ostrukom broju brido a.

63

Page 66: Diskretna matematika (Skripta)

3. T

...H .. C

.

.

H

.

.

H

.. C .. H

.

.

H

.

.

H

Stupanj pojedinog vrha(atoma) točno odgovaranjegovoj valenciji. Teorijagrafova igra važnu ulogu ukemiji.

Slika 3.8: Graf molekule etana

Dokaz: Svaki brid doprinosi dvaput sumi stupnjeva. ◻

Korolar 3.1.3 Suma stupnjeva vrho a je paran broj.

Korolar 3.1.4 Broj vrho a s neparnim stupnjem je paran.

Često ćemo modi cirati graf G tako što ćemo iz njega izbaciti vrh v i sve bridove koji gasadrže, ili ćemo izbaciti neki brid e, ili ćemo dodati brid e koji spaja dva vrha koji prije nisubili spojeni. Te ćemo operacije zapisivati kao G − v, G − e, G + e. Na slikama 3.9, 3.10 i3.11 su dani primjeri ovih operacija na grafu prikazanom na slici 3.7.

...v1

.

.

v2 .

.

v3 .

.

v4

.. v5 .. v6

.

.

v7

.

e1

.

e4

.

e2

.e5

.

e10

.

e12

.

e2

.

e3

.

e11

. e7.

e6

Slika 3.9:G − v8

...v1

.

.

v2 .

.

v3 .

.

v4

.. v5 .. v6

.

.

v7

.. v8.

e4

.

e2

.e5

. e8.

e9

.

e10

.

e12

.

e2

.

e3

.

e11

. e7.

e6

Slika 3.10:G − e1

64

Page 67: Diskretna matematika (Skripta)

3.2. Stabla i šume

...v1

.

.

v2 .

.

v3 .

.

v4

.. v5 .. v6

.

.

v7

.. v8.

e1

.

e4

.

e2

.e5

. e8.

e9

.

e10

.

e12

.

e2

.

e3

.

e11

. e7.

e6

. e

Slika 3.11:G + e, gdje je e = {v1, v5}

Katkada će naši grafovi sadržavati i dodatne informacije: npr. brid može predstavljaticjevovod, kojem je pridružen njegov kapacitet, ili cijena građenja. Formalno takve grafoveopisujemo uz pomoć težinskih funkcija. Težinska funkcija na skupuX je funkcija sX uR(obično R+0 ). Vršno–težinski, te bridno–težinski graf je graf s težinskom funkcijom naskupu vrhova, odnosno bridova. Bridno–težinski grafovi su mnogo češći u primjenama.

3.2 Stabla i šumeStablo je povezan graf bez ciklusa. Na sljedećoj slici je dan jedan primjer stabla.

... ..

.

.

.

.

.

.

.

.

.

.

.

.

Šuma je graf bez ciklusa: komponente šume su stabla. Jedan primjer šume je dan naslici 3.4.

Intuitivno je jasno da povezan graf ima „puno” vrhova, a graf bez ciklusa „malo”. Te-orem 3.2.2 pokazuje da su stabla ekstremalne strukture što se tiče ovih svojstava. Najprijećemo pokazati sljedeću korisnu lemu.

Lema 3.2.1 Stablo s više od jednog vrha ima barem jedan list.

Dokaz: Budući da je stablo povezano, ono nema izoliranih vrhova. Stoga pretpostavimoda je svaki vrh stupnja barem dva. No tada postoje proizvoljno duge šetnje čiji su susjednibridovi različiti: kad dođemo do nekog vrha jednim bridom, napustimo ga drugim. Alikako je graf konačan, u nekom trenutkumoramodoći do vrha kojeg smo već prije posjetili.No to nije moguće budući da stablo nema cikluse. ◻

Teorem 3.2.2 (a) Po ezani graf s n vrho a ima barem n − 1 brido a, a točno n − 1brido a ako i samo ako je stablo.

(b) Šuma s n vrho a im komponenti ima n−m brido a. Dakle, šuma ima najviše n−1brido a, a točno n − 1 brido a ako i samo ako je stablo.

65

Page 68: Diskretna matematika (Skripta)

3. T

Dokaz: Najprije ćemo pokazati da stablo ima n− 1 bridova. Tvrdnju ćemo dokazati ma-tematičkom indukcijom po broju vrhova stabla.

Baza je očita. Pretpostavimo da stablo s n − 1 vrhova ima n − 2 bridova. Neka je v listu stablu T s n vrhova (postojanje takvog vrha garantira Lema 3.2.1). Tada T −v ima n−1vrhova i ne sadrži cikuse. Također,T −v je povezan graf. Zaista, put uT između x i y, gdjeje x, y ≠ v, ne može prolaziti kroz v. Dakle, T −v je stablo. Sada iz pretpostavke indukcijeslijedi da T − v ima n − 2 bridova, dakle T ima n − 1 brid.

Pokažimo sada (b).Neka jeF šuma sn vrhova imkomponentiT1, . . . , Tm sa1, . . . , amvrhova. Tada je∑m

i=1 ai = n. Kako je Ti stablo za svaki i = 1, . . . ,m slijedi da Ti ima ai−1bridova. Stoga F ima∑m

i=1(ai − 1) = n −m bridova.Pokažimo sada (a). Neka jeG neki povezan graf s n vrhova i pretpostavimo daG nije

stablo. TadaG sadrži ciklus. Neka je e brid u tom ciklusu, i neka jeG1 = G−e. Tada jeG1

i dalje povezan. Nastavljajući ovaj postupak, u nekom trenutku moramo doći do stabla,recimo poslije r koraka. Dakle,G ima n − 1 + r bridova.

Specijalno, ukoliko G ima n − 1 bridova, slijedi da G ne sadrži ciklus, dakle G je sta-blo. ◻

Korolar 3.2.3 (a) Graf je stablo ako i samo ako je po ezan graf, ali izbacivanjem bilokojeg od brido a dobijamo nepo ezan graf.

(b) Graf je stablo ako i samo ako ne sadrži cikluse, ali dodavanjem bilo kojeg no og bridadobijamo ciklus.

Dokaz: (a) Neka jeG stablo sn vrhova. Tada jeG povezan i iman−1 bridova. Izbacimoli bilo koji brid, Teorem 3.2.2 (a) povlači da novi graf više nije povezan.

Obrnuto, neka jeG povezan graf sa svojstvom da izbacivanje bilo kojeg brida dovodido nepovezanog grafa. Trebamo pokazati da G ne sadrži ciklus. Stoga, pretpostavimo daG sadrži ciklus. No tada brisanjem nekog brida iz ciklusa i dalje dobivamo povezan graf,što je u kontradikciji s danim svojstvom. ◻

Zadatak 3.4Dokažite korolar 3.2.3 (b).

Neka je G graf. Razapinjuća šuma od G je razapinjući podgraf od G koji je šuma. Ana-logno de niramo razapinjuće stablo.

Korolar 3.2.4 Svaki po ezan graf ima razapinjuće stablo.

Dokaz: Neka graf G ima n vrhova i m bridova. Ukoliko je m = n − 1, tada je G stablopo teoremu 3.2.2 (a). Ukoliko je m ≥ n (teorem 3.2.2 (a) povlači da uvijek vrijedi m ≥n−1), tadaG ima ciklus. Izbacimo neki brid e iz tog ciklusa. GrafG−e je i dalje povezan.Ponavljamo postupak dok ne dođemo na n − 1 bridova. ◻

66

Page 69: Diskretna matematika (Skripta)

3.2. Stabla i šume

Sljedeći algoritam daje konstrukciju razapinjućeg stabla grafaG = (V,E):Neka je S = ∅. je graf (V,S) nepovezan� nađi brid e brid koji povezuje vrhove u različitim komponentama.� dodaj e u S. (V,S)

Zadatak 3.5Dokažite da gornji algoritam doista konstruira razapinjuće stablo.

Rješenje: Da bi smo pokazali da algoritam radi, trebamo pokazati da je uvijek moguće izabratiodgovarajući brid, i da njegovo dodavanje neće stvoriti ciklus.

Neka je Y komponenta povezanosti od (V,S) i neka je Z = V ∖ Y ; odaberemo vrhove y, ziz Y,Z . Budući da jeG povezan, postoji put od y do z, i neki brid mora „prijeći” iz Y u Z , i to jedobar odabir brida. Dakle, dokle god je (V,S) nepovezan, uvijek će semoći odabrati odgovarajućibrid.

Označimo odabrani brid s e. Pretpostavimo sada da (V,S) + e sadrži ciklus. Ako krenemo izY , i pratimo ovaj ciklus, u nekom trenutku ćemo prijeći uZ pomoću brida e, ali tada nema načinada se vratimo u Y , a da ne koristimo brid e. ◻

Koliko ima različitih (dakle neizomorfnih) stabala sn vrhova? Formula za taj broj pos-toji, ali je komplicirana.Mi ćemo izvesti (jednostavniju) formulu zabroj označenih stabala,kojih ima više. Na primjer, broj neizomorfnih stabala s tri vrha je jedan: ... .. .. , nopostoje tri različita označena stabla:

....2 ... 3

.

..

1

....2 ... 3

.

..

1

....2 ... 3

.

..

1

Teorem 3.2.5 (Cayley) Broj označenih stabala s n vrho a je nn−2.

Dokaz (pomoću FUI): Neka jeX skup svih stabala s vrhovima označenim s 1,2, . . . , n,te neka je T (n) = ∣X ∣. Neka Ai označava skup svih stabala iz X kojima je vrh i list. Izleme 3.2.1 slijedi da svako stablo ima barem jedan list za n ≥ 2. Dakle ⋂n

i=1Aci = ∅, tj.

⋃ni=1Ai =X za n ≥ 2. FUI možemo napisati na sljedeći način

∣n

⋂i=1

Aci ∣ = ∑

I⊆{1,...,n}(−1)∣I ∣∣AI ∣.

Primjenimo li ovu formulu na naš problem slijedi

0 = ∑I⊆{1,...,n}

(−1)∣I ∣∣AI ∣ = ∣X ∣ + ∑∅≠I⊆{1,...,n}

(−1)∣I ∣∣AI ∣,

67

Page 70: Diskretna matematika (Skripta)

3. T

tj.∣X ∣ = ∑

∅≠I⊆{1,...,n}(−1)∣I ∣−1∣AI ∣.

Vrijedi ∣Ai∣ = (n − 1)T (n − 1), budući da ukoliko je i list, njegov pripadajući brid možebiti incidentan s bilo kojim od preostalih n − 1 vrhova, a tih n − 1 vrhova su spojeni ustablo.

Situacija za ∣Ai ∩Aj ∣ je ilustrirana slikom 3.12. Pripadajući bridovi vrhova i i j mogubiti incidentni s bilo kojima od preostalih n − 2 vrhova, a tih n − 2 vrhova su spojeni ustablo.

....j

.

..

i

.

. ..

.

.

.

. ..

.

.

.

.

.

.

.

..

označeno stablo s n − 2 vrhova

Slika 3.12: prikaz situacije za ∣Ai ∩Aj ∣

Dakle, ∣Ai ∩Aj ∣ = (n − 2)2T (n − 2). Analogno zaključujemo da vrijedi∣AI ∣ = (n − ∣I ∣)∣I ∣T (n − ∣I ∣).

Dakle, za n ≥ 3 vrijedi

T (n) =n

∑i=1(−1)i−1(n

i)(n − i)iT (n − i). (3.1)

Sada trebamo riješiti ovu rekurziju. Trik kojim ćemo to napraviti se bazira na činjenici daje desna strana ove rekurzije slična formuli (2.13) koja nam daje broj surjekcija. Ukoliko u(2.13) ubacimo n⇢ n− 2 i k ⇢ n (tj. ukoliko tražimo broj surjekcija s (n− 2)–članog un–člani skup), dolazimo do relacije

n

∑i=0(−1)i(n

i)(n − i)n−2 = 0,

odakle slijedi

nn−2 =n

∑i=1(ni)(−1)i−1(n − i)n−2 =

n

∑i=1(ni)(−1)i−1(n − i)i(n − i)n−i−2. (3.2)

68

Page 71: Diskretna matematika (Skripta)

3.2. Stabla i šume

Usporedimo formule (3.1) i (3.2). Ukoliko formulaT (k) = kk−2 vrijedi za k = 1, . . . , n−1, tada iz (3.1) i (3.2) slijedi T (n) = nn−2. Kako smo već prije vidjeli da formula vrijedi zan = 3, matematičkom indukcijom slijedi da formula vrijedi za svaki n ≥ 3. Očito formulavrijedi i za n = 1,2. ◻

Dokaz (pomoću Prüferovog koda): Prüferov kod (ili Prüferov niz) duljine n − 2, zan ≥ 2, je (n−2)–torka brojeva iz skupa{1, . . . , n} (uz dozvoljena ponavljanja).Očito imann−2 Prüferovih kodova duljinen−2. Pokazat ćemodapostoji bijekcija izmeđuPrüferovihkodova duljine n − 2 i označenih stabala s n vrhova.

Za dano stablo označeno brojevima 1, . . . , n Prüferov algoritam za kodiranje generirajedinstveni Prüferov kod duljine n − 2. Algoritam radi na sljedeći način:

i = 1. i ≤ n − 2� nađi list v s najmanjom oznakom.� stavi oznaku (jedinstvenog) susjeda od v na i–to mjesto u kodu.� izbaci v iz stabla. i 1Može se pokazati da različita označena stabla generiraju različite Prüferove kodove.Neka je P = (p1, p2, . . . , pn−2) Prüferov kod označenog stabla T . Uočite da se svaki

vrh v odT javlja točno st(v)−1 puta uP , gdje je st(v) stupanj vrha v. Specijalno, upravooni vrhovi koji se ne javljaju uP su lišće odT . Prüferov algoritam za dekodiranje nam dajeinverzni algoritam, koji konstruira jedinstveno označeno stablo s n vrhova iz Prüferovogkoda duljine n − 2.

T = Nn, V = {1, . . . , n}, i = 1. i ≤ n − 2� nađi v najmanji element skupa V koji se ne nalazi u P .� poveži vrhove v i pi u T .� izbaci v iz skupa V .� izbaci pi iz niza P (sada je P = (pi+1, pi+2, . . . , pn−2)). i 1Poveži vrhove koji odgovaraju dvama brojevima u V .

Može se pokazati da različiti Prüferovi kodovi generiraju različita označena stabla. ◻

Zadatak 3.6(a) Dokažite da Prüferov algoritam za dekodiranje doista generira označeno stablo s

vrhovima {1, . . . , n}.

(b) Dokažite da je Prüferov algoritam za dekodiranje doista „inverzan” Prüferovom al-goritmu za kodiranje.

Primjer 3.2.6 Zadano nam je sljedeće stablo:

69

Page 72: Diskretna matematika (Skripta)

3. T

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

Na slici 3.13 je prikazan postupak generiranja pripadnog Prüferovog koda.

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(a) P = (3)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(b) P = (3,3)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(c) P = (3,3,4)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(d) P = (3,3,4,5)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(e) P = (3,3,4,5,4)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(f ) P = (3,3,4,5,4,6)

Slika 3.13: Generiranje Prüferovog koda

Primjer 3.2.7 Kreirajmo stablo koje odgovara Prüferovom kodu P = (3,3,4,5,4,6).Postupak je opisan na slici 3.14.

Prüferov kod nam, između ostalog, daje e kasan način generiranja svih označenih stabalas n vrhova, te je to najekonomičniji način spremanja informacija o označenim stablima.

Cayleyev teorem3.2.5 semože i ovako iskazati: Potpun grafKn imann−2 razapinjućihstabala.

70

Page 73: Diskretna matematika (Skripta)

3.2. Stabla i šume

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(a) P = (3,3,4,5,4,6)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(b) P = (3,4,5,4,6)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(c) P = (4,5,4,6)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(d) P = (5,4,6)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(e) P = (4,6)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(f ) P = (6)

....3

... 4

.

..

1

.

..

2

.

..5

.

..

7

.

..

6

.

..

8

(g) P = ()

Slika 3.14: Kreiranje stabla iz Prüferovog koda

Zaista, svako stablo sa skupom vrhova {1, . . . , n} je razapinjuće stablo odKn.Postoji i generalizacijaCayleyevog teorema, tzv.Kirchhoffov teorem, koji daje formulu

za broj razapinjućih stabala (zadanog) povezanog grafa.

3.2.1 Minimalna razapinjuća stabla

Pretpostavimo da nam je postavljen sljedeći problem: n gradova trebamo povezati teleko-munikacijskommrežom. Za svaki par gradova je poznata cijena postavljanja kabla između

71

Page 74: Diskretna matematika (Skripta)

3. T

ta dva grada. Koji je najje iniji način povezivanja svih gradova?Ovo je jedan primjer problema nalaženja minimalnog razapinjućeg stabla: podatke

možemo predstaviti kao opis jednog bridno–težinskog (potpunog) grafa; rješenje ovogproblema je povezan razapinjući podgraf s minimalnom totalnom težinom (tj. sumom te-žina bridova podgrafa). Taj podgrafmora biti stablo, inače bi smomogli izbrisati neki brid,smanjujući težinu, a ne pokvarivši povezanost. Problem se riješava primjenom vrlo jednos-tavnog „pohlepnog” algoritma, koji se obično zoveKruskalov algoritam. Algoritamglasi:u svakom koraku, izgradi najje iniju vezu koja spaja dva grada koja već nisu povezana pu-tom. Formalno, neka jeG = (V,E) povezan graf, ω nenegativna težinska funkcija naE.Tada Kruskalov algoritam možemo ovako zapisati:

S = ∅. (V,S) nije povezan� odaberi brid eminimalne težine koji spaja vrhove iz

različitih komponenti. (V,S)Drugim riječima, u svakom koraku odabiremo brid najmanje težine takav da njegovo

ubacivanje ne stvara ciklus.

Teorem 3.2.8 Kruskalo algoritam generira razapinjuće stablo minimalne težine.

Dokaz: Iz zadatka 3.5 je jasno da ovaj algoritam konstruira razapinjuće stablo. Trebamojoš pokazati da je to stablo minimalne težine.

Neka su e1, e2 . . . , en−1 bridovi uS, sortirani po redu u kojem ihKruskalov algoritamuzima. Uočite da vrijedi ω(e1) ≤ . . . ≤ ω(en−1), budući da iz ω(ej) < ω(ei) za j > i sli-jedi da smo u i–tom koraku trebali odabrati ej koji spaja vrhove iz različitih komponenti.

Pretpostavimo da postoji razapinjuće stablo manje težine, s bridovima f1, . . . , fn−1složenih tako da vrijedi ω(f1) ≤ . . . ≤ ω(fn−1). Tada vrijedi

n−1∑i=1

ω(fi) <n−1∑i=1

ω(ei).

Neka je k najmanji broj takav da vrijedi

k

∑i=1

ω(fi) <k

∑i=1

ω(ei).

Svakako je k > 1. Stogak−1∑i=1

ω(fi) ≥k−1∑i=1

ω(ei),

teω(f1) ≤ . . . ≤ ω(fk) < ω(ek).

KakoKruskalov algoritamuk–tomkoraku bira brid ek, a ne bridove f1, . . . , fk koji imajumanju težinu, slijedi da su komponente od (V,{f1, . . . , fk}) podskupovi komponenti

72

Page 75: Diskretna matematika (Skripta)

3.3. Planarnost

od (V,{e1, . . . , ek−1}); dakle (V,{f1, . . . , fk}) imaju jednako ili više komponenti od(V,{e1, . . . , ek−1}). No to nije moguće, budući da su to šume, pa iz teorema 3.2.2 (b)slijedi n − k ≥ n − (k − 1). ◻

Mana ovog algoritma je to što nije jednostavno naći brid minimalne težine koji spaja vr-hove iz različitih komponenti. Stoga postoji modi kacija Kruskalovog algoritma koja sezovePrimov algoritam: sada u svakomkoraku biramobrid najmanje težine koji spaja nekivrh koji je već spojen s nekim vrhom koji još nije spojen.

Zadatak 3.7Dokažite da Primov algoritam zaista generira razapinjuće stablo minimalne težine.

3.3 PlanarnostIako su grafovi apstraktni objekti, intuitivno ih doživljavamo kao točke i linije, na načinkako ih vizualiziramo na ploči/papiru. Drugim riječima, mi odabiremo neki poznati ge-ometrijski prostor kao npr. crtaću ploču, prikazujemo vrhove kao različite točke u pros-toru, a bridove kao linije ili krivulje čiji krajevi odgovaraju danim vrhovima. Nadalje, zbogprimjena grafova u npr. modeliranju cestovnog prometa, poželjno je da vrijedi da su krivu-lje koje predstavljaju dva brida disjunktne osim u točki koja predstavlja njihov zajedničkivrh (ukoliko takvog ima).

Crtež grafaG koji zadovoljava ove uvjete zovemo ulaganje grafaG u prostor.Nije uvijek jasno da li se neki grafmožemouložiti u dani prostor. Ali u slučaju prostora

R3 vrijedi sljedeći rezultat.

Propozicija 3.3.1 Svaki graf se može uložiti uR3.

Dokaz: Odaberimo neki pravac p, i prikažimo vrhove grafa s međusobno različitim toč-kama na pravcu p. Za svaki brid e, odaberimo različitu ravninu πe koja sadrži p, i spojimotočke koje prikazuju vrhove iz e s polukružnicom u πe. Ovdje je dana skica konstrukcijeza graf ({A,B,C,D,E},{{A,C},{B,D},{B,E}}), gdje je p x–os:

.. x.A

.B

.C

.D

.E ◻

Što je s ulaganjem u R2? Nažalost, ne mogu se svi grafovi uložiti u R2. Graf koji se možeuložiti u R2 zovemo planarnim grafom. Npr. potpuni graf K5 nije planaran, što ćemodokazati u teoremu 3.3.5.

73

Page 76: Diskretna matematika (Skripta)

3. T

Svaki planarni graf očito dijeli ravninu u disjunktna područja, od kojih je jedno besko-načno. Osnovni rezultat o planarnim grafovima je tzv. Eulerova formula.

Teorem 3.3.2 (Eulerova formula) Svako ulaganje po ezanog planarnog grafa s p vrho ai q brido a u ravninu dijeli rvninu u r područja, gdje vrijedi

p − q + r = 2.

Dokaz: Ukoliko graf ima ciklus, izbacimo jedan brid iz ciklusa. Time smo smanjili brojbridova za jedan, kao i broj područja (budući da smo dva područja spojili u jedno), a brojvrhova je ostao isti. Npr. za graf G na sljedećoj slici vrijedi p = 8, q = 11 i r = 5, dok zagrafG − e vrijedi p = 8, q = 10, r=4.

...

.

.

.

.

.

. .. ..

.

. ...

e

Dakle novi graf ima p′ = p vrhova, q′ = q−1 bridova i r′ = r−1 područja, te p′−q′+r′ =p − q + r. Ponavljamo ovaj proces sve dok postoje ciklusi. Na koncu ćemo doći do stabla,koje će imati p′′ = p vrhova, q′′ = p − 1 bridova i r′′ = 1 područja, dakle p − q + r =p′′ − q′′ + r′′ = 2. ◻

Primjer 3.3.3

... ..

.

.

.

.

.

.

p = 5, q = 8, r = 5,p − q + r = 2.

De nirajmo stupanjpodručjaplanarnog grafa kao broj bridovana koje naiđemopri šetnjioko ruba područja.... ...

A

.

.

.

..

B .

..

D

.

.

.

.

.

..

C

Područja C i D imajustupanj 3, područje Aima stupnaj 5, a po-dručje B ima stupanj9.

Teorem 3.3.4 U po ezanom grafu, zbroj stupnjeva područja je jednak d ostrukom brojubrido a.

74

Page 77: Diskretna matematika (Skripta)

3.3. Planarnost

Dokaz: Svaki brid pridonosi s dva zbroju stupnjeva područja. ◻

Teorem 3.3.5 Kn je planaran ako i samo ako je n ≤ 4.

Dokaz: Crtežom se lako pokaže da suKn, n ≤ 4 planarni grafovi. Da bi pokazali daKn

nije planaran za n > 4, dovoljno je pokazati daK5 nije planaran.Kada biK5 bio planaran, tada bi njegovo ulaganje dijelilo ravninuna r = 2−5+10 = 7

područja. Svako od 7 područjamora imati stupanj veći ili jednak od 3 (područje s jedan ilidva brida semože pojaviti samo ako postoje petlje ili paralelni beskonačni bridovi u grafu),stoga iz teorema 3.3.4 slijedi 20 ≥ 7 ⋅ 3 = 21. ◻

Zadatak 3.8Dokažite da je dovoljno pokazati daK5 nije planaran da bi smo dokazali daKn nije pla-naran za n > 4.

Za graf G = (V,E) kažemo da je bipartitan graf ukoliko se skup V može particioniratiu dva skupa B, C tako da svaki brid iz E spaja vrh iz B s vrhom iz C . Particiju {B,C}skupa vrhova V zovemo biparticijom odG.

Primjer 3.3.6 Dva primjera bipartitnih grafova.

...C

.

.

B

.

.

B .

.

B

.

.

C .

.

C

...B .. C .. B

.

.

C .

.

B .

.

C

Teorem 3.3.7 Po ezani graf je bipartitan ako i samo ako ne sadrži cikluse neparne duljine.

Zadatak 3.9Dokažite teorem 3.3.7.

Ukoliko B i C interpretiramo kao bijelo i crno, vidimo da je graf bipartitan točno ondakada možemo njegove vrhove obojati s dvije boje tako da ni jedan brid ne spaja vrhove sistom bojom. Stoga katkada bipartitne grafove nazivamo i bikromatskim.

Zadatak 3.10Dokažite da su stabla bipartitni grafovi.

75

Page 78: Diskretna matematika (Skripta)

3. T

Bipartitni grafG = (V,E), V = B ∪C je potpun bipartitni graf ukoliko je svaki vrh izB spojen sa svakim vrhom izC . Ukoliko je ∣B∣ =m, ∣C ∣ = n, taj graf označavamo sKm,n

iliKn,m. Desni graf iz primjera 3.3.6 je grafK3,3.

Teorem 3.3.8 K3,3 nije planaran.

Dokaz: K3,3 ima šest vrhova i 3 + 3 + 3 = 9 bridova, stoga, ukoliko bi bio planaran,dijelio bi ravninu na r = 2 − 6 + 9 = 5 područja. Budući da je bipartitan, svako područjeima stupanj veći ili jednak od četiri (teorem3.3.7), stoga iz teorema 3.3.4 slijedi 18 ≥ 4⋅5 =20. ◻

Korolar 3.3.9 Km,n je planaran ako i samo ako jemin(m,n) ≤ 2.

Primjer 3.3.10 (Peterseno graf) Na slici 3.15 Petersonov graf je nacrtan na dva različitanačina.

. ..

.

.

.

.

.

.

.

. ..

.

.

.

.

.

.

.

. . ..

.

.

.

.. .

.

.

.

...

.

.

.

.

.

.

Slika 3.15: Petersenov graf

Pokazati ćemo da Petersenov graf nije planaran. Prepostavimo da jest. Budući da jebroj vrhova p = 10, a broj bridova q = 15, slijedi r = 2 − 10 + 15 = 7. Budući da najkraćiciklus u grafu očito ima duljinu 5, svako područje mora imati stupanj veći ili jednak od 5,što nije moguće zbog 30 = 2q ≥ 7 ⋅ 5 = 35.

Što čini graf neplanarnim? Očito, ukoliko sadrži K5 ili K3,3 kao podgraf, ne može bitiplanaran. Kuratowski je dokazao 1930. da je to u principu i nužno za neplanarnost. Pro-motrimo sljedeći graf:

76

Page 79: Diskretna matematika (Skripta)

3.3. Planarnost

...

.

.

.

.

.

..

a.

..

c.

..

b

KakoK5 nije planaran, ni ovaj graf nije planaran. Zaista, kada bi bio planaran, mogli bi iz(planarnog) crteža grafa izbaciti vrh b i ubaciti brid {a, c}, čime bi došli do ulaganjaK5 uravninu.

Ubacivanje novog vrha u postojeći brid grafa zovemo subdivizijom brida, a jedna iliviše subdivizija bridova stvara subdiviziju grafa.

Teorem 3.3.11 (Kuratowski) Graf je planaran ako i samo ako ne sadrži subdiviziju odK5

iliK3,3 kao podgraf.

3.3.1 Platonova tijelaEuler je formulu iz teorema 3.3.2 originalno dokazao za konveksne poliedre (tijela čijesu stranice poligoni). Naime, svakome je konveksnom poliedru P na prirodan način pri-družen graf G(P ) čiji su vrhovi vrhovi poliedra, a bridovi bridovi poliedra. Taj graf jeplanaran. (Pretpostavimo da je poliedar napravljen od gume. Probušimo ga nasred nekestranice i napušimo ga kao da je balon. Naš poliedar će postati kugla. Sada projicirajmopripadnu sferu na ravninu koristeći tzv. stereografsku projekciju s polom u točki u kojojsmo probušili poliedar. Projekcije vrhova i bridova će činiti ulaganje traženog grafa.)

Ukoliko poliedar ima p vrhova, q bridova i r stranica, onda G(P ) ima p vrhova, qbridova, te njegovo ulaganje u ravninu dijeli ravninu na r područja. Stoga i za poliedrevrijedi Eulerova formula p − q + r = 2.

Kažemo da je poliedar pravilan ukoliko postoje m ≥ 3, n ≥ 3 takvi da svaki vrh imam bridova, a svaka stranica n bridova. Npr. za kocku jem = 3, n = 4. Konveksne pravilnepoliedre nazivamo Platonovim tijelima.

Teorem 3.3.12 Postoji točno pet Platono ih tijela.

Dokaz: Očito vrijedi 2q =mp = nr. Uvrstimo li te relacije u Eulerovu formulu, slijedi

2q

m− q + 2 q

n= 2⇔ (2n −mn + 2m)q = 2mn.

77

Page 80: Diskretna matematika (Skripta)

3. T

Stoga vrijedi 2m+2n−mn > 0, tj. (m−2)(n−2) < 4, odakle slijedi da (m−2)(n−2)iznosi 1, 2 ili 3. Za svaki mogući par (m,n) možemo izračunati p, q i r. Na taj načindolazimo do sljedeće tablice:

m n p q r naziv3 3 4 6 4 tetraedar

3 4 8 12 6 kocka

4 3 6 12 8 oktaedar

3 5 20 30 12 dodekaedar

5 3 12 30 20 ikozaedar

Na slici 3.16 su prikazani grafovi Platonovihtijela.

...

.

.

.

.

.

.

(a) tetraedar

. ..

.

.. .

.

. ..

.

.. .

.

.

(b) kocka

. ..

.

.

.

.

.

.

.

.. .

(c) oktaedar

. ..

.

.

.

.

.

.

.

.. .

.

.

.

.

.

.

.

. ..

.

.

.

.

.

.

.

.. .

.

.

.

.

.

.

.

.

(d) dodekaedar

. ..

.

.

.

. ..

.

.

.

.. .

.

.

.

.

.

.. .

.

.

(e) ikozaedar

Slika 3.16: Grafovi Platonovih tijela

78

Page 81: Diskretna matematika (Skripta)

3.4. Eulerovi i Hamiltonovi grafovi

3.4 Eulerovi i Hamiltonovi grafovi

3.4.1 Eulerovi grafoviU ovoj sekciji ćemo generalizirati problem 0.1.5, problem Königsberških mostova. Ka-žemo za stazu da jeEulerova staza ukoliko prolazi svim bridovima grafa. Zatvorenu Eule-rovu stazu zovemo Eulerova tura. Graf je Eulerov ako dopušta Eulerovu turu.

Prirodan okvir za proučavanje Eulerovih grafova su multigrafovi, budući da se i kodproblema Königsberških mostova pojavio multigraf. Generalizaciju Eulerovog rezultatamožemo ovako iskazati:

Teorem 3.4.1 (Eulerov teorem) (a) Multigraf bez izoliranih vrho a je Eulero ako isamo ako je po ezan, te je svaki vrh parnog stupnja.

(b) Multigraf bez izoliranih vrho a ima nezat orenu Eulero u stazu ako i samo ako jepo ezan i ima točno dva vrha neparnog stupnja.

Dokaz: Uvjet povezanosti je očito nužan. Pokažimo najprije da su i drugi uvjeti nužni.Promotrimo najprije graf s Eulerovom turom. Krećući se stazom, svaki put kad do-

đemodonekog vrha pomoću nekog brida,moramonapustiti taj vrh drugimbridom, dakleiskoristiti ćemo dva brida tog vrha. Budući da posjetimo svaki brid tog vrha, stupanj morabiti paran. Isto vrijedi i za početni vrh, budući da se on poklapa s krajnjim vrhom.

Analogno, za nezatvorenu Eulerovu stazu stupnjevi prvog i zadnjeg vrha moraju bitineparni, dok ostali vrhovi moraju biti parni.

Pokažimo sada i dovoljnost tih uvjeta. Argument će biti konstruktivne prirode. NekajeG = (V,E) graf koji zadovoljava (a) ili (b) iz iskaza teorema.

U slučaju (a), neka jev bilo koji vrh, a u slučaju (b) neka jev vrhneparnog stupnja. Sadakonstruiramo stazu s početkom u vrhu v, dakle krećemo se iz vrha v, nikad ne prelazećibridom kojim smo već prošli, dokle god je to moguće.

Neka jeS skupbridova te staze.Zabilo koji vrhx različit odv (u slučaju (a)) ili bilo kojivrh parnog stupnja ili x = v (u slučaju (b)), kad god staza dođe do x postojat će neparanbroj neiskorištenih bridova od x. Dakle, ne možemo „zaglaviti” u takvom vrhu x. Stogastaza mora završiti u v (u slučaju (a)) ili u drugom vrhu neparnog stupnja (u slučaju (b)).

Ukoliko je S = E, gotovi smo. Stoga pretpostavimo S ≠ E. Tada postoji vrh u koji jeincidentan s nekim bridom iz S i nekim bridom izE ∖ S (zbog povezanosti). Nadalje, ugrafu (V,E∖S) svaki vrh je parnog stupnja. Stoga, krećući izu, i koristeći samo bridove izE∖S, možemo naći zatvorenu stazu pomoću gornjeg postupka. Sadamožemo spojiti ovedvije staze: krećemo iz v i pratimo prvu stazu do vrha u, tada se krećemo drugom stazomsve dok se ne vratimo u vrh u, a onda nastavimo prvom stazom do njenog kraja.

Poslije konačno mnogo primjena ove konstrukcije, dolazimo do željene staze. ◻

UslučajuKönigsberškihmostova graf je

....

..

.

.

.

, dakle sva četiri vrha su neparnog stupnja,te ne postoji Eulerova staza.

79

Page 82: Diskretna matematika (Skripta)

3. T

3.4.2 Hamiltonovi grafoviProblem analogan problemunalaženja Eulerove staze je problemnalaženjaHamiltonovogputa.Hamiltonovput je put koji prolazi kroz sve vrhove grafa.Ukoliko jeHamiltonovputzatvoren, govorimo o Hamiltonovom ciklusu. Kažemo da je graf Hamiltonov ukolikodopuštaHamiltonov ciklus. Kako kod ovog problema višestruki bridovi ne igraju nikakvuulogu, uvijek možemo pretpostaviti da je graf jednostavan.

Za n > 2 postoji jedinstveni 2–regularan graf s n vrhova, koji zovemo n–ciklus i

označavamo sCn. Npr.C6 možemo ovako prikazati:. ..

.

..

.. ..

..

..Cn možemo predstaviti kao

vrhove i bridove n–terokutnika. Očito je grafG s n vrhova Hamiltonov ako i samo ako jeCn podgraf odG.

Provjeriti da li je graf Hamiltonov je puno teže nego provjeriti da li je Eulerov. Nepostoji jednostavan nužan i dovoljan uvjet za provjeru je li graf Hamiltonov. Jedan odjednostavnijih dovoljnih uvjeta je dan sljedećim teoremom.

Teorem 3.4.2 (Ore) Neka je dan grafG s n vrho a. Ukoliko za svaka dva nesusjedna vrhauG vrijedi da je suma njiho ih stupnjeva barem n, onda je graf Hamiltono .

Dokaz: Pretpostavimo da graf G zadovoljava uvjet iz teorema, ali nije Hamiltonov. Ta-kođer pretpostavimo da jeGmaksimalan graf s tim svojstvom, tj. da dodavanje bilo kojegbrida u G dovodi do Hamiltonovog grafa (ukolio G nije maksimalan, dodajemo bridovedok ne postane; to dodavanje neće pokvariti svojstvo da je suma srupnjeva nesusjednihvrhova veća ili jednaka od n).

KakoG nije potpun (inače bi bioHamiltonov), postoje vrhovi x, y koji nisu susjedni.Kako jeGmaksimalan, dodavanjem brida e = {x, y} graf postaje Hamiltonov, i pripadniHamiltonov ciklus mora sadržavati e. StogaG svakako sadrži Hamiltonov put(x = v1, e2, v2, . . . , vn = y).

Neka je A skup vrhova koji su susjedni s x, i neka je B = {vi ∶ vi−1 je susjedan s y}.Kako je ∣B∣ jednak stupnju od y, slijedi ∣A∣ + ∣B∣ ≥ n. Nadalje, budući da x ∉ A ∪ B,slijedi ∣A∪B∣ ≤ n− 1. Odavde zaključujemo ∣A∩B∣ ≥ 1, dakle postoji indeks i takav daje vi ∈ A ∩B.

Sada možemo konstruirati Hamiltonov ciklus uG: krećemo od x = v1, slijedimo Ha-miltonov put do vi−1, iz vi−1 idemo u y, tada se vraćamo „natraške” putem do vi, a iz vidolazimo do x. ◻

Korolar 3.4.3 (Dirac) Neka je dan graf s n vrho a. Ukoliko svaki vrh ima stupanj veći ilijednak od n/2, graf je Hamiltono .

3.4.3 Problem trgovačkog putnikaTrgovački putnik želi obići n gradova, tako da se na koncu vrati u početni grad. Kakoodabrati itinerer tako da ukupan prevaljeni put bude minimalan?

80

Page 83: Diskretna matematika (Skripta)

3.4. Eulerovi i Hamiltonovi grafovi

Ovaj problem možemo predstaviti kao problem nalaženja minimalnog Hamiltono-vog ciklusa u bridno–težinskom (potpunom) grafu (uvijek možemo dodati nepostojećebridove kojima stavimo ogromne težine).

Jedan način rješavanja problema bi bilo računanje ukupne težine za sve Hamiltonovecikluse, ali potpuni graf Kn ima (n − 1)! različitih Hamiltonovih ciklusa (1/2(n − 1)!ukoliko ne razlikujemo ciklus i njegov „inverz”). Čak i za mali n, recimo n = 10, 1/2(n −1)! = 181440. Na žalost, ne postoji bitno bolji algoritam za egzaktno rješavanje ovogproblema.

Ali postoje aproksimacijski algoritmi.U nastavku ćemo opisati algoritam koji generiraHamiltonov ciklus koji je najviše 3/2 puta „teži” of optimalnog ciklusa. Pretpostavljamo datežinska funkcija ω zadovoljava sljedeću relaciju:

ω({x, z}) ≤ ω({x, y}) + ω({y, z}), ∀x, y, z. (3.3)

Postupak generiranja suboptimalnog Hamiltonovog ciklusa je sljedeći.Najprije nađimo minimalno razapinjuće stablo S (npr. pomoću Kruskalovog ili Pri-

movog algoritma). Stablo S ima, po korolaru 3.1.4 paran broj 2m vrhova neparnog stup-nja. Sparimo tih 2m vrhova u m bridova M , tako da M ima najmanju ukupnu težinu.(Multi)graf S +M ima sve vrhove parnog stupnja, pa po teoremu 3.4.1 posjeduje Eule-rovu turu. Sada Eulerovu turu pretvorimo u Hamiltonov ciklus tako što, prateći Eulerovuturu, „preskačemo” one bridove koji nas dovode do vrhova koje smo već obišli, tj. na timmjestima odabiremobrid koji nas dovodi do sljedećeg vrha na Eulerovoj turi koji još nismoposjetili.

Primjer 3.4.4 Na slici 3.17 je dan prikaz konstrukcije suboptimalnog Hamiltonovog ci-klusa za bridno–težinski potpuni grafK5. U ovomprimjeru jeM = {{v1, v3},{v0, v4}},Eulerova tura je (v1, v2, v4, v0, v4, v3, v1), a konstruirani Hamiltonov ciklus je(v1, v2, v4, v0, v3, v1) s ukupnom težinom 26.

Zadatak 3.11Pokušajte naći Hamiltonov ciklus manje težine za graf iz prethodnog primjera.

Pokažimo sada da gornji algoritam doista konstruira ciklus koji je najviše 3/2 puta „teži” ofoptimalnog ciklusa.

Neka suMHC,ET,MRS i ω(M) redom totalne težine minimalnog Hamiltonovogciklusa, te Eulerove ture, minimalnog razapinjućeg stabla i skupa bridova M danih gor-njim algoritmom. Zbog (3.3), dovoljno je pokazatiET ≤ 3/2MHC. VrijediET =MRS+ω(M), teMHC >MRS (ako iz minimalnog Hamiltonovog ciklusa uklonimo neki brid,dobijamo razapinjuće stablo). Neka se 2m vrhova izM javlja u sljedećem poretku u mini-malnom Hamiltonovom ciklusu: x1, x2, . . . , x2m. Ukoliko za svaki i < 2m zamijenimodio (minimalnog Hamiltonovog) ciklusa između xi i xi+1 s bridom {xi, xi+1}, a dio cik-lusa između x2m i x1 bridom {x2m, x1}, iz (3.3) slijedi

ω({x1, x2}) + ω({x2, x3}) +⋯ + ω({x2m, x1}) ≤MHC.

81

Page 84: Diskretna matematika (Skripta)

3. T

. .. v0

.

.

v1

.

.

v2

.

.

v3

.

.

v4

.

7

.

8

.

7

.

4

.

3

.6

. 7.7 .

6

.

4

(a) bridno–težinskiK5

. .. v0

.

.

v1

.

.

v2

.

.

v3

.

.

v4

.

4

.

3

.

6

.

4

(b) minimalno razapinjuće stablo S

. .. v0

.

.

v1

.

.

v2

.

.

v3

.

.

v4

.

4

.

3

.

6

.

4

.6

.

4

(c) S +M

. .. v0

.

.

v1

.

.

v2

.

.

v3

.

.

v4

.

3

.

6

.

4

.

7

.6

(d) Hamiltonov ciklus

Slika 3.17: Konstrukcija suboptimalnog Hamiltonovog ciklusa

Prethodnu relaciju možemo napisati na sljedeći način

(ω({x1, x2}) + ω({x3, x4}) +⋯ + ω({x2m−1, x2m}))+ (ω({x2, x3}) +⋯ + ω({x2m, x1})) ≤MHC.

Dakle, suma težina ova dva sparivanja je manja ili jednaka odMHC, pa jedno od ovih spa-rivanja ima totalnu težinumanju ili jednakuod 1/2MHC, odakle slijediω(M) ≤ 1/2MHC.Stoga

ET =MRS + ω(M) <MHC + 1/2MHC = 3/2MHC.

82

Page 85: Diskretna matematika (Skripta)

Indeks

BBellov broj . . . . . . . . . . . . . . . . . . . . . . 26biparticija . . . . . . . . . . . . . . . . . . . . . . . 75bipartitan graf . . . . . . . . . . . . . . . . . . . 75bridno–težinski graf . . . . . . . . . . . . . . 65bridovi grafa . . . . . . . . . . . . . . . . . . . . . 59

CCatalanovi brojevi . . . . . . . . . . . . . . . . 48ciklički zapis . . . . . . . . . . . . . . . . . . . . . 20ciklus . . . . . . . . . . . . . . . . . . . . . . . . 20, 62n–ciklus . . . . . . . . . . . . . . . . . . . . . . . . 80

Dderanžman . . . . . . . . . . . . . . . . . . . . . . 42digraf . . . . . . . . . . . . . . . . . . . . . . . . . . . 59Dirichletova funkcija izvodnica . . . . . 52

Eeksponencijalna funkcija izvodnica . . 50Eulerov graf . . . . . . . . . . . . . . . . . . . . . 79Eulerova formula . . . . . . . . . . . . . . . . . 74Eulerova staza . . . . . . . . . . . . . . . . . . . . 79Eulerova tura . . . . . . . . . . . . . . . . . . . . 79

FFibonaccijevi brojevi . . . . . . . . . . . . . . 36formula uključivanja–isključivanja . . 35funkcija izvodnica . . . . . . . . . . . . . . . . 35

Ggraf . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

HHamiltonov ciklus . . . . . . . . . . . . . . . . 80Hamiltonov graf . . . . . . . . . . . . . . . . . 80Hamiltonov put . . . . . . . . . . . . . . . . . . 80

Iincidentan vrh . . . . . . . . . . . . . . . . . . . 59inducirani podgraf . . . . . . . . . . . . . . . . 61izolirani vrh . . . . . . . . . . . . . . . . . . . . . 63izomorfni grafovi . . . . . . . . . . . . . . . . . 60

Jjednostavni graf . . . . . . . . . . . . . . . . . . 59

Kkarakteristična jednadžba . . . . . . . . . . 40k–kombinacija . . . . . . . . . . . . . . . . . . . 14k–kombinacija s ponavljanjem . . . . . . 24kombinatorika . . . . . . . . . . . . . . . . . . . . 3komponente grafa . . . . . . . . . . . . . . . . 63Kruskalov algoritam . . . . . . . . . . . . . . 72

Llist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Mmultigraf . . . . . . . . . . . . . . . . . . . . . . . . 59multinomni koe cijent . . . . . . . . . . . . 25multiskup . . . . . . . . . . . . . . . . . . . . . . . 24

Nnul graf . . . . . . . . . . . . . . . . . . . . . . . . . 59

83

Page 86: Diskretna matematika (Skripta)

I

PPascalov trokut . . . . . . . . . . . . . . . . . . . 15permutacija . . . . . . . . . . . . . . . . . . . . . . 20k–permutacija . . . . . . . . . . . . . . . . . . . 21permutacija multiskupa . . . . . . . . . . . . 24Petersenov graf . . . . . . . . . . . . . . . . . . . 76petlja . . . . . . . . . . . . . . . . . . . . . . . . . . . 59planarni graf . . . . . . . . . . . . . . . . . . . . . 73Platonova tijela . . . . . . . . . . . . . . . . . . 77podgraf . . . . . . . . . . . . . . . . . . . . . . . . . 61poopćeni binomni teorem . . . . . . . . . 48poredak

leksikografski poredak . . . . . . . . . 31obrnuti leksikografski poredak . . 31

potpun bipartitni graf . . . . . . . . . . . . . 76potpuni graf . . . . . . . . . . . . . . . . . . . . . 59povezan graf . . . . . . . . . . . . . . . . . . . . . 63Primov algoritam . . . . . . . . . . . . . . . . . 73princip

Dirichletov princip . . . . . . . . . . . 10princip bijekcije . . . . . . . . . . . . . . . 9princip dvostrukog brojanja . . . . . 9princip kvocijenta . . . . . . . . . . . . . . 9princip matematičke indukcije . . 10princip produkta . . . . . . . . . . . . . . 9princip razlike . . . . . . . . . . . . . . . . . 9princip sume . . . . . . . . . . . . . . . . . . 9

Prüferov kod . . . . . . . . . . . . . . . . . . . . 69put . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Rrazapinjuća šuma . . . . . . . . . . . . . . . . . 66razapinjuće stablo . . . . . . . . . . . . . . . . 66razapinjući podgraf . . . . . . . . . . . . . . . 61d–regularan graf . . . . . . . . . . . . . . . . . 63regularan graf . . . . . . . . . . . . . . . . . . . . 63rekurzivna relacija . . . . . . . . . . . . . . . . 35Riemannova zeta funkcija . . . . . . . . . . 52

Sstablo . . . . . . . . . . . . . . . . . . . . . . . . . . . 65staza . . . . . . . . . . . . . . . . . . . . . . . . . . . 62Stirlingov broj druge vrste . . . . . . . . . 27

Stirlingov broj prve vrste . . . . . . . . . . . 21Stirlingov trokut . . . . . . . . . . . . . . . . . 28Stirlingova formula . . . . . . . . . . . . . . . 18stupanj područja . . . . . . . . . . . . . . . . . 74stupanj vrha . . . . . . . . . . . . . . . . . . . . . 63subdivizija brida . . . . . . . . . . . . . . . . . . 77subdivizija grafa . . . . . . . . . . . . . . . . . . 77susjedni vrhovi . . . . . . . . . . . . . . . . . . . 59

Ššetnja . . . . . . . . . . . . . . . . . . . . . . . . . . . 61šuma . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Tteorija grafova . . . . . . . . . . . . . . . . . . . . . 3

Uulaganje grafa . . . . . . . . . . . . . . . . . . . . 73usmjereni brid . . . . . . . . . . . . . . . . . . . 59usmjereni graf . . . . . . . . . . . . . . . . . . . 59

Vvišestruki brid . . . . . . . . . . . . . . . . . . . 59vrhovi grafa . . . . . . . . . . . . . . . . . . . . . 59vršno–težinski graf . . . . . . . . . . . . . . . 65

84

Page 87: Diskretna matematika (Skripta)

Bibliografija

[1] P. J. Cameron, Combinatorics: Topics, Techniques, Algorithms, Cambridge UniversityPress, 1994.

[2] I. Anderson, A rst Course in Discrete Mathematics, Springer Verlag, 2001.

[3] L. Lovasz, J. Pelikan,K.L.Vesztergombi,DiscreteMathematics, SpringerVerlag, 2003.

[4] D. Veljan, Kombinatorna i diskretna matematika, Algoritam, Zagreb 2001.

85