You are on page 1of 87

Diskretna matematika

I N

predavanja ak. god. 2011./2012.

PMFM O
Sadraj

0 Uvod 3
0.1 Neki primjeri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1 Prebrojavanja 7
1.1 Uvod i osnovni principi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Broj podskupova . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Broj podskupova ksirane veliine (binomni koe cijenti) . . . . . . . . . 13
1.4 Permutacije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5 Multiskupovi i multinomni koe cijenti . . . . . . . . . . . . . . . . . . . . 22
1.6 Particije skupova (Relacije na skupovima) . . . . . . . . . . . . . . . . . . 26
1.7 Generiranje kombinatornih objekata . . . . . . . . . . . . . . . . . . . . . 29

2 Rekurzije, funkcije izvodnice i formula ukljuivanjaiskljuivanja 35


2.1 Uvod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.2 Fibonaccijevi brojevi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.3 Linearne rekurzije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4 Funkcije izvodnice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.4.1 Catalanovi brojevi . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.4.2 Bellovi brojevi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.5 Sloenost algorirtama za sortiranje . . . . . . . . . . . . . . . . . . . . . . 52
2.5.1 Bubblesort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.5.2 Mergesort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.5.3 uicksort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.6 Formula ukljuivanjaiskljuivanja . . . . . . . . . . . . . . . . . . . . . . 55

3 Teorija grafova 59
3.1 Uvod i osnovne de nicije . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.2 Stabla i ume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.2.1 Minimalna razapinjua stabla . . . . . . . . . . . . . . . . . . . . . 71
3.3 Planarnost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

1
S

3.3.1 Platonova tijela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77


3.4 Eulerovi i Hamiltonovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.4.1 Eulerovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.4.2 Hamiltonovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.4.3 Problem trgovakog putnika . . . . . . . . . . . . . . . . . . . . . 80

Indeks 83

Bibliogra ja 85

2
Uvod
0
Sadraj kolegija se sastoji od dviju cjelina: kombinatorike i teorije grafova. Sam naziv dis-
kretna matematika dolazi od toga to obuhvaa prouavanje nekontinuniranih matema-
tikih objekata (koji se prouavaju u analizi i geometriji).
Kombinatorika (lat. combinare) se bavi razmjetanjem objekata po odreenim pravi-
lima. U pravilu nas zanima da li je odreeni razmjetaj mogu, i ukoliko jest, na koliko se
naina moe postii.
Teorija grafova se bavi matematikom strukturom zvanom graf koja opisuje poveza-
nost sustava; tipino pomou grafova modeliramo transportne ili komunikacijske sustave,
elektrine ili internetske mree, ali i molekule ...
Kolegij se sastoji od tri dijela.
U prvom dijelu obrauju se problemi prebrojavanja koristei osnovne principe kao to
su princip bijekcije, sume, produkta i slino. Obrauju se problemi vezani za podskupove,
permutacije i particije.
Drugi dio je takoer posveen prebrojavanju, ali s koritenjem naprednijih tehnika
kao to su rekurzivne formule, funkcije izvodnice i formula ukljuivanja i iskljuivanja.
Trei 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 primjeri


Primjer 0.1.1 (Deranmani) Ukoliko imamo n pisama i n adresiranih omotnica, na ko-
liko naina moemo staviti pisma u omotnice, tako da ni jedno pismo ne doe u odgova-
rajuu omotnicu?
Rjeenje: Ukupan broj naina na koje moemo staviti pisma u omotnice je broj permu-
tacija n objekata, a taj broj je n!. Odgovor na gornje pitanje je najblii cijeli broj broju
n!/e.
Primjer 0.1.2 (Kirkmano e kolarke) Petnaest kolarki se eta svakog dana u pet grupa
po tri. Sloite njihove etnje u jednom tjednu tako da svaki par djevojica eta zajedno u
grupi samo jednom.

3
0. U

Rjeenje: Ukoliko je to uope mogue, trebat e im sedam dana. To je stoga to svaka


djevojka mora etati jednom s ostalih etrnaest, a svaki dan eta s dvije. Ali pitanje da li su
takve etnje uope mogue je dosta tee. Problem je postavio i rijeio Kirkman 1847. Tek
1967. dokazano je da ope rjeenje postoji tono onda kad je broj djevojica kongruentan
s 3 modulo 6.

Primjer 0.1.3 (Eulero i asnici) Dano nam je 36 asnika, koji pripadaju u 6 pukovnija i
imaju 6 inova (svakoj kombinaciji ina i pukovnije odgovara tono jedan asnik). Mogu
li asnici biti posloeni u 6 6 matricu, tako da se u svakom retku i stupcu svaki in i svaka
pukovnija javljaju tono jednom?

Rjeenje: Euler je ovaj problem postavio 1782. Problem nije bio rijeen sve do 1900. Od-
govor je ne (Euler je vjerovao da je odgovor ne, ali to nije uspio dokazati). Generalizirani
problem s n2 asnika s n inova i pukovnija je rjeen tek 1960. Rjeenje postoji za sve n
osim n = 2 i n = 6.

Primjer 0.1.4 (Ramseyeva igra) Ova igra za dvije osobe zahtijeva list papira i dva pisala
razliitih boja. Najprije se nacrta 6 toaka na papiru, tako da ni jedna trojka toaka ne lei
na istom pravcu. Tada igrai uzimaju svoja pisala i svaki naizmjenice povlai crtu izmeu
dviju toaka. Prvi igra koji nacrta trokut gubi igru (raunaju se samo trokuti s vrhovima
u odabranim tokama). Da li ova igra moe zavriti remijem?

Rjeenje: Ne. Probajte igrati ovu igru. Koja je dobra strategija?

Primjer 0.1.5 (Knigsberki mosto i) U 17. stoljeu postojalo je sedam mostova na ri-
jeci Pregel u istonopruskom gradu Knigsbergu (dananji Kalinjgrad u Rusiji). Graani
tog grada su pokuavali napraviti etnju od svoje kue tako da svaki od sedam mostova pri-
jeu tono jednom i da se vrate kui. Kako nikako nisu uspijevali, pitali su Eulera je li to
uope mogue. Skica situacije u Knigsbergu je bila:

B
C

.
D

Rjeenje: Euler je gornju skicu sveo na neto to se danas zove graf:

4
0.1. Neki primjeri

A..

B. C.

D.

Onda je rezonirao ovako: ukoliko eljena etnja postoji, tada svaki put kad neki vrh posje-
timo pomou jednog brida, drugi brid bi trebali upotrijebiti da bi smo napustili taj vrh. To
znai da bi svaki vrh trebao imati paran broj bridova. Kako to u ovom sluaju nije istina,
traena etnja nije mogua.

Zadatak 0.1
Moe li se skica kuice . nacrtati u jednom potezu bez podizanja olovke s papira?

Zahvaljujem se svima koji su pomogli da se isprave brojne greke u tekstu, naroito


prof. Vedranu Kradincu.

5
Prebrojavanja
1
1.1 Uvod i osnovni principi
Primjer 1.1.1 Ana je pozvala na roendansku zabavu Peru, Karla, Dijanu, Evu, Zdenka i
Franju. Kad su gosti stigli, meusobno su se rukovali. Do koliko rukovanja je dolo?
Rjeenje: Kako se svaki od njih sedmero rukovao s preostalih estero, dolazimo do broja

6 + + 6 = 6 7 = 42.

7 puta

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 razmjetati
za stolom svakih pola sata sve dok ne isprobaju sve razliite razmjetaje. Koliko e trajati
njihova zabava?
Rjeenje: Dakle, treba odrediti broj razliitih razmjetaja. Krenimo od stolice koja je zdesna
Ani. Na tu stolicu moe sjesti bilo tko od estoro gostiju. Ukoliko je, recimo, Pero sjeo do
Ane, na sljedeu stolicu zdesna moe sjesti bilo tko od preostalih petoro gostiju. Ako Karlo
sjedne na stolicu zdesna Ani, opet imamo pet mogunosti za sljedeu stolicu, dakle broj
naina na koje moemo posjesti ljude na prve dvije stolice je

5 + + 5 = 6 5 = 30.

6 puta

Slino, bez obzira tko je sjeo na prve dvije stolice, na treu stolicu moe sjesti bilo tko
od preostalih etvero gostiju, to nam daje 6 5 4 mogunosti. Nastavimo li tim putem
rezonirati, stiemo do 6 5 4 3 2 1 = 6! = 720 mogunosti. Dakle, njihova zabava e
trajati 360 sati. to je 15 dana.
Poslije veere dolazi ples (radi se o staromodnim ljudima koji pleu u parovima i par uvijek
ine ljudi razliitih spolova). Koliko se moguih parova moe formirati?

7
1. P

Rjeenje: Kako postoje tri djevojke, a svaka moe odabrati jednog od etvorice dekiju,
dolazimo do broja od 3 4 = 12 razliitih parova.

Poslije nekoliko dana plesanja Ana, Pero, Karlo i Dijana odlue igrati bridge. U nekom
trenutku Karlo kae: ini mi se da sam dobio iste karte kao i u prethodnom dijeljenju. To
mi se ini teko mogue, odvrati Dijana. Koliko je to vjerojatno? (pil ima 52 karte, svaki
igra dobija 13 karata.)

Rjeenje: Rezoniramo na sljedei nain. Zamislimo da Karlo vue jednu po jednu kartu
iz pila. Prva karta moe biti bilo koja od 52 karte, druga karta bilo koja od preostalih
51, ... Dakle, dolazimo do 52 5140 mogunosto za 13 karata. Ali ovdje smo ubrojili i
mnogo istih ruku. Ukoliko, na primjer, Eva kibicira i gleda u Karlove karte nakon to ih
je on posloio i pokua pogoditi kojim ih je redom izvukao, dolazi do 13 121 = 13!
mogunosti. To znai da je broj razliitih ruku u bridgeu jednak

52 5140
= 635013559600.
13!
Dakle, stvarno je mala vjerojatnost da je Karlo izvukao dvaput za redom iste karte.

Na koncu odlue igrati ah. Ana, koja je odluila da e samo gledati, namjesti tri ahovske
ploe. Na koliko naina se mogu sloiti parovi? (Ne raunamo kao razliito sparivanje
ukoliko dva ovjeka za istom ploom zamijene mjesta i nije vano koji par sjedi za kojom
ploom.)

Rjeenje (prva verzija): Krenemo od broja 720 koji nam je dao broj razliitih razmjetaja
za stolom. Taj broj emo podijeliti s brojem razmjetaja za stolom koje smatramo istim u
kontekstu ahovskih parova. Najprije, moemo tri ahovske ploe posloiti na est razlii-
tih naina tako da ne mijenjamo ahovske parove. Takoer, svaki par moe, ali i ne mora,
promijeniti strane, to daje 2 2 2 = 8 razliitih naina. Dakle, 720 razmjetaja dolazi u
grupu od 6 8 = 48, pa je traeni broj 720/48 = 15.

Rjeenje (druga verzija): Kako je Pero najmlai, pustimo njega prvog da odredi svog
partnera. On to moe uiniti na pet naina. Tko je najmlai meu ostalim bira sljedei
i moe odabrati partnera na tri naina, i time smo odredili parove. Dakle, traeni broj je
5 3 = 15.

Ostatak ovog poglavlja emo potroiti na formalizaciju i generalizaciju problema iz


prethodnog primjera.
Ono to moemo uoiti je da umjesto Ane i njenog drutva moemo gledati bilo koji
skup od sedam elemenata, na primjer {1, 2, . . . , 7}. Oita generalizacija gornjih problema
je da umjesto broja sedam uzmemo proizvoljan n N. Stoga emo se u nastavku poglavlja
(a i cijelog kolegija) baviti prebrojavanjem razliitih objekata vezanih za skup {1, 2, . . . , n}
za proizvoljan prirodan broj n. Osnovni principi kojima emo se sluiti su sljedei.

8
1.1. Uvod i osnovni principi

Princip dvostrukog brojanja Ukoliko isti skup prebrojimo na dva razliita naina, od-
govori e se poklapati.

Princip bijekcije Dva skupa su iste veliine (imaju isti broj elemenata, isti kardinalitet)
akko postoji bijekcija izmeu njih.

Princip sume Broj elemenata unije meusobno disjunktnih skupova jednak je sumi broja
elemenata skupova. Formalno, za S1 , . . . , Sn , Si Sj = za i j, vrijedi
n n
Si = Si .
i=1 i=1

Princip produkta (jednostavna formulacija) Broj elemenata unije m meusobno disjun-


ktnih skupova, od kojih svaki ima n elemenata je nm.

Princip produkta (openita formulacija)

Skupovna verzija Neka je n N, a S1 , . . . , Sn konani skupovi. Tada vrijedi


n n
Si = Si ,
i=1 i=1

gdje ni=1 Si = S1 Sn oznaava Kartezijev produkt skupova S1 , . . . , Sn .


Funkcijska verzija Neka je S skup funkcija f s {1, 2, . . . , n} u neki skup X. Pre-
postavimo da postoji k1 izbora za vrijednost f (1), k2 izbora za vrijednost
f (2), ..., kn izbora za vrijednost f (n). Tada je broj elemenata skupa S k1 kn .
Raunalna verzija Neka je S skup lista duljine n sa svojstvima:
postoji izbor od k1 razliitih prvih elemenata liste u S,
za svaki i > 1 i svaki izbor prvih i 1 elemenata liste u S, postoji izbor
od ki razliitih itih 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 je
imati na umu kao zaseban princip.

Princip razlike Ukoliko je X konaan 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
1. P

Zadatak 1.1
Koje smo principe zapravo koristili pri rjeavanju problema iz Primjera 1.1.1?
Jo dva principa emo koristiti u ovom kolegiju. Prvi smo ve sreli pa emo ga samo navesti.
Princip (matematike) indukcije
Drugi princip je
Dirichletov princip Ukoliko skup S koji ima vie od n elemenata particioniramo u n
skupova (tj. odaberemo particiju skupa S koja ima n elemenata), tada barem jedan
element particije ima vie od jednog elementa.
Dokaz trivijalno slijedi po kontrapoziciji.
Postoji i generalizacija ovog principa. Ukoliko skup S koji ima vie od kn elemenata
particioniramo u n skupova, tada barem jedan element particije ima barem k + 1
elemenata. Dokaz je, naravno, identian.
Zadatak 1.2
Pokaite da u skupu od estero ljudi postoji barem troje ljudi koji se svi meusobno znaju,
ili barem troje ljudi od kojih se nitko meusobno ne pozna (Pretpostavljamo da ukoliko
osoba A zna osobu B, onda i osoba B zna osobu A.)

1.2 Broj podskupova


Sada emo formulirati na prvi opi kombinatorni problem: Koliko ima podskupova skupa
s n elemenata? Ili formalnije: Koji je kardinaltet partitivnog skupa skupa S, ako je S = n?
Krenimo od malih skupova.
Prazan skup ( koji je isto skup) ima samo jedan podskup: .
Jednolan skup, recimo {a}, ima dva podskupa: , {a}.
Dvolani skup, recimo {a, b}, ima etiri podskupa: , {a}, {b}, {a, b}.
Trolani skup, recimo {a, b, c}, ima osam podskupova: , {a}, {b}, {c}, {a, b}, {b, c},
{a, c}, {a, b, c}.
Dakle, imamo sljedeu tablicu:
broj elemenata 0 1 2 3
.
broj podskupova 1 2 4 8
Pomou ove tablice moemo lako naslutiti da je traeni broj 2n , to emo i dokazati (i
to na vie naina).
Pretpostavimo da je skup koji nas zanima A = {a1 , . . . , an }. Kreirajmo sada neki pod-
skup od A. U njega moemo, ali i ne moramo ukljuiti element a1 , dakle u ovom koraku
moemo donijeti dvije razliite odluke. Bez obzira to odluili o a1 , moemo ali i ne mo-
ramo ukljuiti a2 u taj podskup, znai opet imamo dvije razliite odluke, stoga po principu
produkta broj mogunosti vezanih za a1 i a2 je 22 = 4. Sada nastavimo ovim rezoniranjem
i dolazimo do 2n . Time smo dokazali sljedei teorem.

10
1.2. Broj podskupova

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


Prethodni dokaz ovog teorema moemo ilustrirati sljedeim dijagramom za sluaj skupa
{a, b, c}.
a . A

DA NE

bA bA

DA NE DA NE

cA cA cA cA

DA NE DA NE DA NE DA NE

{a, b, c} {a, b} {a, c} {a} {b, c} {b} {c}

Dokaz (druga verzija): U ovom dokazu emo numerirati podskupove, tj. nai emo bi-
jekciju s {0, 1, . . . , 2n 1} u P(S). Ideju emo opet ilustrirati na skupu {a, b, c}. Za od-
govarajui podskup gledamo njegove elemente jedan po jedan i piemo 1 ukoliko podskup
sadri a, a 0 ukoliko ne sadri, i tako dalje za b i c. Dakle, podskupu {a, c} pridruujemo
trojku brojeva 101. Na taj nain svakom podskupu pridruujemo jedan niz od tri brojke.
Kako se ti nizovi sastoje od nula i jedinica, trebali bi nas podsjetiti na binarni zapis brojeva.
Ukoliko izbriemo vodee nule iz naeg 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 traenu bijekciju za n = 3.


Lako se vidi da ovaj postupak moemo proiriti na proizvoljan n. Formalno, konstru-
iramo bijekciju izmeu partitivnog skupa skupa S i skupa funkcija sa S u {0, 1}. Funkcija
fY koja odgovara skupu Y je zadana pomou


1 x Y,
fY (x) =

0 x Y.

Obratno, funkciji f S {0, 1} odgovara skup Y = {x S f (x) = 1}. Funkcija fY se
zove karakteristina funkcija skupa Y .

11
1. P

Ukoliko je (a uvijek to moemo pretpostaviti) S = {0, 1, . . . , n 1}, tada funkciju


f S {0, 1} moemo predstaviti pomou ntorke (f (0), . . . , f (n 1)). Dakle, pod-
skupove od S moemo predstaviti ntorkama koje se sastoje od nula i jedinica.
Sljedei korak je da predstavimo te ntorke kao zapis u bazi 2 cijelog broja
N = f (n 1)2n1 + + f (1)2 + f (0).

Zadatak 1.3
Dovrite prethodni dokaz.

Ova verzija dokaza nam daje zgodnu numeraciju podskupova od {0, . . . , n 1}. Odgo-
varajui podskup Sk lako konstruiramo iz binarnog zapisa broja k. Takoer, skup Sk ovisi
samo o k, a ne o n.

Dokaz (trea verzija): Dokazat emo teorem pomou indukcije. Baza indukcije je oito
zadovoljena. Pretpostavimo da tvrdnja teorema vrijedi za skupove s n 1 elemenata. Neka
je S skup s n elemenata. Fiksirajmo neki element a S. Podijelimo podskupove od S u
dvije klase: oni koji sadre a i oni koji ne sadre a. Oni podskupovi koji ne sadre a su
podskupovi skupa S = S {a} koji ima n 1 elemenata, stoga takvih podskupova ima
2n1 . Oni podskupovi koji sadre a se mogi napisati kao unija od {a} i nekog podskupa iz
S , stoga i takvih ima 2n1 . Dakle, po principu sume, broj poskupova od S je 2n1 +2n1 =
2n , ime smo dokazali korak indukcije.

Dokaz (etvrta verzija): Neka je F (n) broj podskupova nlanog skupa. Uoimo da sve
podskupove od {0, . . . , n} moemo dobiti iz podskupova skupa {0, . . . , n 1} tako da
svaki takav skup proirimo na dva mogua naina: ili nita ne dirajui ili ubacujui element
n. 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 razliitih naina? Zbog toga to je svaki
dokaz ilustrirao jednu tehniku dokazivanja kombinatornih teorema:

prvi dokaz svoenje dokaza na prebrojavanje nezavisnih odluka

drugi dokaz svoenje dokaza na nalaenje bijekcije s podskupa prirodnih brojeva u skup
koji prebrojavamo

trei dokaz dokazivanje pomou matematike indukcije

etvrti dokaz kreiranje rekurzivne formule

Sve te metode emo esto koristiti u nastavku kolegija.

12
1.3. Broj podskupova ksirane veliine (binomni koe cijenti)

1.3 Broj podskupova ksirane veliine (binomni


koe cijenti)
Teorem 1.3.1 Neka je S nlani skup. Broj podskupo a s k (0 k n) elemenata od S je
(nk) = n!/k!(nk)!.

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

Dokaz: Na koliko naina moemo iz skupa S odabrati k elemenata? Oito postoji n mo-
guih izbora za prvi element, (n 1) za drugi element,..., te (n k + 1) za kti ele-
ment, tj. po principu produkta n(n 1)(n k + 1) = n!/(nk)! mogunosti. Ali mi smo
rijei prvi, drugi, ... stavili u navodnike zbog toga to u podskupu elementi nisu ureeni,
tj. ne razlikujemo koji element je prvi, drugi itd. Stoga dobijeni broj moramo podijeliti s
brojem razliitih redoslijeda k elemenata koje smo izabrali. Rezonirajui kao gore, vidimo
da imamo k izbora za prvi element, k 1 izbora za drugi element, itd. Dakle, ukupno
imamo k! izbora za redoslijed. Time smo dokazali teorem.

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

Propozicija 1.3.2 Vrijede sljedee identitete:

(a) (nk) = (nk


n
),

(b) k(nk) = n(n1


k1
),

(c) (n+1
k
) = (k1
n
) + (nk),

(d) nk=0 (nk) = 2n ,


2
(e) nk=0 (nk) = (2n
n
).

Dokaz: (a) Odabir podskupa s k elemenata je ekvivalentan odabiru n k elemenata


(odabiru podskupa A S odgovara odabir podskupa S A).

(b) Posluit emo se sportskim argonom pri dokazu. Izmeu n sportaa elimo oda-
brati klanu ekipu u kojoj e jedan sporta biti kapetan momadi. Iz teorema 1.3.1
znamo da ekipu moemo odabrati na (nk) naina. Za svaki mogui izbor ekipe, ka-
petana moemo izabrati na k naina. To odgovara lijevoj strani izraza. Alternativno,
moemo najprije izabrati kapetana (to moemo uiniti na n naina), a onda izabrati
ostatak ekipe (njih k1 izmeu preostalih n1 sportaa.) To odgovara desnoj strani
izraza. Princip dvostrukog brojanja kae da dva raziita brojanja moraju dovesti do
istog rezultata, ime smo dokazali tvrdnju.

13
1. P

(c) Pretpostavimo da imamo razred s n + 1 uenika, od kojih je jedan na neki nain iz-
dvojen od ostalih, te (opet) elimo izabrati ekipu od k uenika. To moemo napra-
viti ili tako da ukljuimo tog izdvojenog uenika (a u tom sluaju trebamo izabrati
preostalih k1 uenika izmeu preostalih n), ili ga moemo izbaciti iz kombinacija
za ekipu (u tom sluaju trebamo izabrati cijelu ekipu izmeu preostalih n uenika).

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

(e) Desna strana odgovara broju naina na koji moemo izabrati ekipu od n lanova od
2n sportaa. Pretpostavimo sada da se meu 2n sportaa nalazi n djeaka i n djevoj-
ica. Na koliko naina moemo odabrati ekipu od k djevojica i nk djeaka? Ovaj
2
broj je oito (nk)(nk
n
) = po dijelu (a) = (nk) . Sada samo sumiramo po moguem
broju djevojica u ekipi (formalno gledano, primjenimo princip sume).

Zadatak 1.4
Probajte dokazati propoziciju 1.3.2 koristei algebarske tehnike.

Katkada se klani podsup skupa S naziva kkombinacija skupa S. Dakle, (nk) je broj
kkombinacija nlanog skupa.
Prole godine smo sreli binomne koe cijente u tzv. binomnom teoremu.

Teorem 1.3.3 (Binomni teorem)


n
n
(a + b)n = ( )ank bk , za n N, a, b C. (1.1)
k=0 k

Relaciju (1.1) nazivamo binomnom formulom.

Dokaz: Promotrimo izraz


(a + b)(a + b) .

n puta

Ovaj izraz moemo raspisati tako da iz svake zagrade odaberemo ili a ili b, i to na sve mo-
gue naine, te pomnoimo izabrane lanove i onda sve sumiramo. Izraz bk se dobija kada
je b odabrano iz k zagrada, a a iz n k zagrada (im smo izabrali b iz k zagrada, odmah
smo izabrali i a iz n k zagrada). Postoji (nk) naina na koji moemo izabrati tih k bova,
pa je koe cijent uz ank bk upravo (nk).
Zadatak 1.5
Dajte algebarski dokaz teorema 1.3.3. Uputa: indukcija!

Cijeli niz injenica o binomnim koe cijentima se moe dobiti koristei binomni teorem.
Na prijer, propozicija 1.3.2 (d) odmah slijedi ukoliko u binomnu formulu uvrstimo a = 1,
b = 1.

14
1.3. Broj podskupova ksirane veliine (binomni koe cijenti)

Korolar 1.3.4 Za n > 0, broj podskupo a nlanog skupa s parnim i neparnim brojem
elemenata je jednak (dakle, 2n1 ).

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

n
n n n
0 = (1 1)n = ( )(1)k povlai ( )= ( ).
k=0 k 0kn k 0kn k
k paran k neparan

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, ime
smo dokazali tvrdnju za sluaj da je n neparan.
Ukoliko je n paran, gornji postupak nije mogu. Stoga promotrimo preslikavanje A
A {n}, gdje je A {1, . . . , n}, a oznaava simetrinu razliku (ovo preslikavanje uba-
cuje n u A ukoliko n A, a ukoliko je n A onda ga izbacuje). Ovo preslikavanje je bijek-
cija na partitivnom skupu od {1, . . . , n}, te mijenja kardinalitet skupa za 1, tj. prebacuje
skupove s parnim brojem elemenata u skupove s neparnim brojem elemenata i obrnuto.
Time smo dokazali tvrdnju korolara.

Zadatak 1.6
Dokaite da je A A {n} bijekcija na partitivnom skupu od {1, . . . , n}.

Korolar 1.3.4 moemo i generalizirati.

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

Dokaz: Oznaimo s A traeni broj, a s B broj podskupova iji je broj elemenata kongru-
entan s 2 (mod 4). Iz korolara 1.3.4 slijedi A + B = 2n1 .

Uvrstimo a = 1, b = i u binomnu formulu. Budui da je 1 + i = 2ei/4 , a n je
viekratnik broja 8, slijedi (1 + i)n = 2n/2 . Dakle, 2n/2 = nk=0 (nk)ik . Uzimajui u obzir
da je ik = 1, i, .1, i za redom k 0, 1, 2, 3 (mod 4), slijedi A B = 2n/2 . Rjeavanjem
linearnog sustava dvije jednadbe s dvije nepoznanice dolazimo do traene formule.

Propozicija 1.3.2 (c) omoguava da konstruiramo tzv. Pascalov trokut (ne, Pascal nije
prvi koji ga je konstruirao).

15
1. P

1.
1. 1.
1. 2. 1.
1. 3. 3. 1.
1. 4. 6. 4. 1.
1. 5. 10. 10. 5. 1.
1. 6. 15. 20. 15. 6. 1.
1.. 7. 21. 35. 35. 21. 7. 1.

Svaki element osim prvog i zadnjeg u retku je dobijen zbrajanjem dva broja koja su iznad
njega. kti element u ntom retku je (nk) ( kreemo od nultog retka i nultog stupca).
Neto rijea verzija Pascalovog trokuta je Pascalov desni trokut:
0 1 2 3 4 5 6
0 (00)

1 1 (10) (11)
1 1
1 2 1 2 (20) (21) (22)
1 3 3 1 tj.
3 (30) (31) (32) (33)
1 4 6 4 1
1 5 10 10 5 1 4 (40) (41) (42) (43) (44)
1 6 15 20 15 6 1
5 (50) (51) (52) (53) (54) (55)

6 (60) (61) (62) (63) (64) (65) (66)


Sada se na primjer Propozicija 1.3.2 (d) moe iskazati kao tvrdnja da je suma elemenata
u ntom retku Pascalovog trokuta jednaka 2n (opet kreemo od nultog retka).
to dobijemo kad zbrajamo elemente po stupcima? Probajmo npr. zbrojiti elemente u
drugom stupcu (i tu kreemo od nultog): 1+3+6+10 = 20, a taj broj se javlja u sljedeem
retku i sljedeem stupcu zdesna. To nas dovodi do sljedeeg rezultata.

Teorem 1.3.6 (Chu ShihChieh) Neka je n k. Tada vrijedi


n
r n+1
( ) = ( ). (1.2)
r=k k k+1

16
1.3. Broj podskupova ksirane veliine (binomni koe cijenti)

Dokaz (algebarski):
n
r k k+1 k+2 n
( ) = [( ) + ( )] + ( )++( )
r=k k k k k k
k+1 k+1 k+2 n
= [( )+( )] + ( )++( )
k+1 k k k
k+2 k+2 k+3 n
= [( )+( )] + ( )++( )
k+1 k k k
k+3 n n n
=( )++( )==( )+( )
k+1 k k+1 k
n+1
=( ).
k+1

Ovdje smo na vie mjesta koristili propoziciju 1.3.2 (c).

Dokaz (kombinatorni, 1. verzija): Neka je zadan skup S = {x1 , . . . , xn+1 }. Tada desna
strana formule (1.2) odgovara broju k + 1lanih podskupova skupa S. Oznaimo s P
skup k + 1lanih podskupova od S, te de nirajmo sljedee skupove:

P1 = {A P x1 A},
P2 = {A P x1 A, x2 A},
P3 = {A P x1 , x2 A, x3 A},

Pnk+1 = {A P x1 , x2 , . . . , xnk A, xnk+1 A}.

Lako se vidi da skupovi Pi , i = 1, . . . , n k + 1 ine particiju skupa P (npr. ukoliko


APi = , i = 1, . . . , nk +1, tada x1 , . . . , xnk+1 A; to znai A {xnk+2 , . . . , xn },
te A n(nk+2)+1 = k1), te da vrijedi Pi = (n+1i k
), ime smo nali kombinatorni
prikaz lijeve strane formule (1.2).

Dokaz (kombinatorni, 2. verzija): Desnu stranu tumaimo kao i u 1. verziji kombina-


tornog dokaza, s time da preciziramo S = {1, 2, . . . , n + 1}.
Lijevu stranu tumaimo na sljedei nain. Podskupove podijelimo s obzirom na naj-
vei broj u danom podskupu. Podskup s k + 1 elemenata s najveim elementom r + 1 se
moe kreirati na (kr ) naina. Budui da r + 1 ne moe biti manji od k + 1, a ni vei od n + 1,
slijedi da se podskup moe kreirati na nr=k (kr ) naina.

Specijalan sluaj teorema 1.3.6 je formula za zbroj prvih n brojeva:

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

17
1. P

Ali pomou teorema 1.3.6 moemo nai formulu za nk=1 k p , za bilo kakav p N! Na
primjer, za p = 2 postupak je sljedei. Sluei se formulom

k k
k 2 = k + k(k 1) = ( ) + 2( )
1 2
traenu sumu moemo ovako izraunati:
n n
k n
k n+1 n+1 n(n + 1)(2n + 1)
k2 = ( ) + 2 ( ) = ( ) + 2( )= .
k=1 k=1 1 k=2 2 2 3 6

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

esto se javlja potreba da se da priblina ocjena za faktorijel nekog broja. U tu svrhu se


obino koristi Stirlingova formula
n n
n! 2n ( ) .
e
Preciznije, vrijedi
n!
lim = 1.
n 2n(n/e)n

Primjer 1.3.7 Dokaite kombinatornim argumentima relaciju (m


n
)(m) (n)( nk ).
k = k mk

Rjeenje: Lijeva strana: neka je dan nlani skup S. Biramo ureeni par (X, Y ), gdje je
X mlani podskup od S, a Y klani podskup od X.
Desna strana: najprije odabiremo klani podskup Y od S, onda od preostalih eleme-
nata biramo m k-lani podskup Z, te kreiramo ureeni par (Z Y, Y ).

Primjer 1.3.8 Dokaite kombinatornim argumentima relaciju (tzv. Vandermondeovu ko-


nvoluciju)
r
m n m+n
( )( )=( ).
k=0 k rk r

Rjeenje: Desna strana odgovara broju odabira rlanog podskupa m + nlanog skupa
S. Lijeva strana takoer odgovara broju odabira rlanog podskupa m + nlanog skupa
S, s time da odabiremo rlane podskupove na sljedei nain. Particioniramo skup S na
dva skupa A i B, gdje je A mlani, a B nlani skup. Svaki odabir rlanog skupa od S
odgovara odabiru klanog podskupa od A i r klanog podskupa od B, za proizvoljan
k izmeu (i ukljuivo) 0 i r.

18
1.3. Broj podskupova ksirane veliine (binomni koe cijenti)

Primjer 1.3.9 Dokaite kombinatornim argumentima relaciju


n
( ) = 2n1 , n N.
i0 2i

Rjeenje: Po konvenciji (m n
) = 0 za m > n.
Lijeva strana odgovara broju odabira parnog podskupa nlanog skupa S = {a1 , . . . , an }.
Do nekog parnog podskupa skupa S, moemo doi i tako da biramo hoe li a1 biti
element tog skupa, hoe li a2 biti element tog skupa, ... Kada doemo do elementa an ,
vie nemamo mogunost odabira: ili smo do sada odabrali neparan broj elemenata te mo-
ramo odabrati an , ili smo da sada odabrali paran broj elemenata te ne moemo odabrati
an . Dakle, donijeli smo n 1 odabira izmeu dviju opcija.

Primjer 1.3.10 Dokaite kombinatornim argumentima relaciju


n
n
i( ) = n2n1 , n N.
i=0 i

Rjeenje: Desna strana odgovara broju odabira ureenog para (x, A), gdje je x element
nlanog skupa S, a A je podskup skupa S {x}.
Lijeva strana odgovara broju odabira ureenog para (x, B), gdje je B ilani podskup
od S, a x neki element iz B, gdje je i bilo koji broj izmeu (i ukljuivo) 0 i n.
No, svaki odabir ureenog para (x, A), gdje je x element nlanog skupa S, a A je
podskup skupa S {x} odgovara odabiru ureenog para (x, B), gdje je B = A {x},
i obrnuto: svaki odabir ureenog para (x, B), gdje je B ilani podskup od S, a x neki
element iz B, gdje je i bilo koji broj izmeu (i ukljuivo) 0 i n odgovara odabiru ureenog
para (x, A), gdje je A = B {x}.

Primjer 1.3.11 Neka su k, n N. Izraunajte kombinatornim argumentom


n
n r
( )( ).
r=k r k
Rjeenje: Izraz moemo intepretirati kao broj odabira rlanih skupova nlanog skupa,
te klanih podkupova odabranog rlanog skupa, gdje je r prozvoljan broj izmeu (i
ukljuivo) k i n.
No mogli smo prvo odabrati klani podskup nlanog skupa (to moemo napraviti
na (nk) naina), a zatim odluiti koje emo preostale elemente ukljuiti u nadskup izabra-
nog klanog skupa (to, zakljuujui kao u primjeru 1.3.9, moemo napraviti na 2nk
naina).
Zadatak 1.8
Dokaite kombinatornim argumentima relaciju
n+rk
j1 nj n
( )( ) = ( ), 1 r k n.
j=r r1 kr k

19
1. P

Zadatak 1.9
Dokaite kombinatornim argumentima relaciju

k
n+i n+k+1
( )=( ), k, n N0 .
i=0 n n+1

1.4 Permutacije
Postoje dva naina na koja moemo shvatiti pojam permutacije. Neka je X konaan skup.
Permutacija od X (u aktivnom smislu) je bijekcija s X u X. Da bi smo objasnili pasivan
smisao, pretpostavimo da su elementi u X ureeni, npr. X = {x1 , . . . , xn }. Tada je pasivna
reprezentacija permutacije ureena ntorka ((x1 ), . . . , (xn )). Katkad koristimo i
ovakav zapis za permutaciju:

x x . . . xn
( 1 2 ) , gdje je yi = (xi ), i = 1, . . . , n.
y1 y2 . . . yn

Teorem 1.4.1 Broj permutacija nlanog skupa je n!.

Dokaz: Pretpostavimo da je nlani skup skup {1, . . . , n}. Tada je permutacija ureena
ntorka brojeva iz {1, . . . , n}. Postoji nmogunosti za izbor prvog elementa, n 1 mo-
gunosti za izbor drugog elementa, itd.

Postoji jo jedan, krai zapis permutacije, tzv. cikliki zapis. Najprije emo uvesti pojam
ciklusa. Kaemo da je permutacija ciklus ili ciklika permutacija ukoliko vrijedi

x1 x2 xn x1 ,

gdje su x1 , . . . , xn elementi od X u nekom redoslijedu. Ciklus zapisujemo


(x1 x2 . . . xn ) (ne mijeati s pasivnom formom permutacije!).
Kako je (xi . . . xn x1 . . . xi1 ) oito isti ciklus kao i (x1 x2 . . . xn ), cikliki zapis
nije jedinstven.

Propozicija 1.4.2 Svaka se permutacija moe zapisati kao kompozicija ciklusa na meu-
sobno disjunktnim skupo ima. Ta reprezentacija je jedinstvena, do na redoslijed ciklusa i oda-
bira poetnih toaka ciklusa.

Napomena: U ovom sluaju svaki ciklus nadopunjavamo do funkcije na cijelom poet-


nom skupu tako da na ostatku skupa ciklus djeluje kao identiteta.

Dokaz: Dokaz e biti konstruktivne prirode. Neka je permutacija na skupu X. Sljedei


algoritam konstruira traene cikluse:

20
1.4. Permutacije

postoji element iz X koji nije ni u jednom ciklusu


 odaberi neki takav x
 neka je m najmanji prirodan broj takav da je m (x) = x
 konstruiraj ciklus (x (x) . . . m1 (x))
sve konstruirane cikluse
Pokaimo sada da ovaj algoritam zaista generira traene cikluse. Najprije emo po-
kazati da je (x (x) . . . m1 (x)) zaista ciklus. Problem moe nastati jedino ukoliko
i (x) = j (x) za 0 < i < j < m. Ali budui da je bijekcija, slijedilo bi x = ji (x), to
je u kontradikciji s izborom broja m.
Pokaimo sada da konstruirani ciklusi koriste meusobno disjunktne skupove eleme-
nata iz X. 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+(mi) (y) = ji ( m (y)) = ji (y),

dakle m+ij (x) = y, to je u kontradikciji s injenicom da smo pretpostavili da y nije u


ciklusu od x.
Oito je da svaki element od X lei u nekom od konstruiranih ciklusa.
Konano, 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 djelovanje
permutacije na element z podudara s djelovanjem ciklusa koji sadri y, dok drugi ciklusi
nemaju efekta na z (u svjetlu dane napomene).

Primjer 1.4.3 Permutacija


1 2 3 4 5 6
( )
3 6 4 1 5 2
se u ciklikoj notaciji moe zapisati kao (1 3 4)(2 6)(5). To je jedna od 36 razliitih
verzija za ovu permutaciju (ima 3! = 6 naina da posloimo cikluse i 321 = 6 mogunosti
za izbor poetnih toaka). Katkada se jednolani ciklusi, kao gore (5), ne zapisuju.

Broj permutacija nlanog skupa koji se sastoji od k ciklusa se naziva Stirlingov broj prve
vrste, u oznaci s(n, k) (katkada se koristi de nicija po kojoj je (1)nk s(n, k) broj per-
mutacija nlanog skupa koji se sastoji od k ciklusa).
Neka je S skup od n elemenata, a k n. Za ureenu ktorku (x1 , . . . , xk ) meu-
sobno razliitih elemenata iz S kaemo da je kpermutacija (ili parcijalna permutacija).
Na kpermutaciju moemo gledati kao na pasivnu formu injekcije {1, . . . , k} S
(oito {1, . . . , k} moemo zamijeniti s bilo kojim klanim skupom kojem smo nekako
poredali elemente). Stoga je pitanje koliko ima kpermutacija skupa S ekvivalentno pita-
nju koliko ima injekcija s klanog u nlani skup.

Teorem 1.4.4 Broj kpermutacija nlanog skupa je n!/(nk)!.

21
1. P

Dokaz: Promotrimo injekciju f {1, . . . , k} S, gdje je S = n. Za f (1) moemo


uzeti bilo koji element iz S, dakle imamo n mogunosti. Za f (2) moemo uzeti bilo koji
element iz S {f (1)}, dakle imamo n 1 mogunosti. Nastavljajui ovaj postupak, u
konanici dolazimo do izbora f (k) za koji moemo uzeti bilo koji element iz
S {f (1), . . . , f (k 1)}, dakle imamo n (k 1) mogunosti. Princip produkta nam
daje n (n 1)(n k + 1) = n!/(nk)! mogunosti odabira funkcije f .

Katkada se broj kpermutacija nlanog skupa zapisuje kao P (n, k) ili Pkn .

Primjer 1.4.5 Dokaite kombinatornim argumentima relaciju

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

Rjeenje: Lijeva strana odgovara broju odabira ureenih ktorki nlanog skupa S. Desnu
stranu moemo interpretirati opet kao broj odabira ureenih ktorki skupa S, s time da
najprije odaberemo prvi element ktorke, recimo x, a onda odaberemo ureenu (k
1)torku skupa S {x}.

Primjer 1.4.6 Dokaite kombinatornim argumentima relaciju P (n + 1, k) = P (n, k) +


P (n, k 1).

Rjeenje: Lijeva strana odgovara broju odabira ureenih ktorku n + 1lanog skupa S.
Neka je x S proizvoljan, ali ksiran element iz S. Desnu stranu moemo interpretirati
kao broj odabira ureenih ktorki skupa S, s time da da skup ureenih ktorku podi-
jelimo u dvije klase: klasu onih ktorki sastavljenu od elemenata skupa S {x}, i klasu
onih ktorki skupa S koje sadre x. Kako x moe doi na bilo koje od k mjesta u ktorci,
dolazimo do traenog izraza.

1.5 Multiskupovi i multinomni koe cijenti


Na openito pitanje:
Na koliko naina se moe odabrati k objekata iz skupa od n objekata?
odgovor moemo dati tek ukoliko preciziramo:

(a) da li je redoslijed vaan ili ne?

(b) smije li se neki objekt vie puta pojaviti kao izbor (dozvoljavamo li ponavljanja)?

To nas dovodi do sljedeeg teorema.

Teorem 1.5.1 Broj odabira k objekata iz skupa od n objekata je dan sljedeom tablicom

22
1.5. Multiskupovi i multinomni koe cijenti

(kombinacije)
redoslijed vaan redoslijed
nevaan
ponavljanja
nk (n+k1)
doz oljena k

ponavljanja nisu n!/(nk)! (nk)


doz oljena

Dokaz: Stupac redoslijed vaan je lako rijeiti. Ukoliko su ponavljanja dozvoljena, pos-
toji n izbora za svaki od k objekata. Ukoliko ponavljanja nisu dozvoljena, traeni broj je
broj kpermutacija nlanog skupa.
U stupcu redoslijed nevaan ukoliko ponavljanja nisu dozvoljena, zapravo brojimo
kpodskupove nskupa. Preostali element tablice je neto tee izraunati, pa emo dokaz
napraviti pomou dvije leme.

Lema 1.5.2 Broj mogunosti izbora k objekata iz nlanog skupa uz mogunost ponavljanja
i nevaan redoslijed je jednak broju naina odabira n nenegativnih cijelih brojeva iji je zbroj
jednak k.

Dokaz: Neka nam je dano k objekata iz skupa a1 , . . . , an . Neka je xi broj ponavljanja


objekta ai . Tada je xi 0, nr=1 xi = k.
Obrnuto, brojevima x1 , . . . , xn , xi 0, i = 1, . . . , n, x1 + + xn = k pridruimo
izbor objekata tako da objekt ai izaberemo xi puta.

Lema 1.5.3 Broj ntorki nenegativnih cijelih brojeva x1 , . . . , xn za koje vrijedi


x1 + + xn = k je dan s (n+k1
k
).

Dokaz: Zamislimo n+k1 praznina, i onda njih n1 oznaimo. Neka je x1 broj praznina
prije prve oznake, xi broj praznina izmeu (i 1)e i ite 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 xn1 daljnjih praznina.
Dakle, ostalo je jo xn praznina, budui da je broj preostalih praznina dan s

n + k 1 (x1 + + xn1 ) (n 1) = n + k 1 (k xn ) (n 1) = xn .

Gra ki prikaz postupka je dan na sljedeoj slici:

2  2  2 2


x1 x2 x3 xn

Broj izbora oznaka je oito (n+k1


n1
) = (n+k1(n1)
n+k1
) = (n+k1
k
).

23
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 sljedeoj slici: 2
2 .

Primjer 1.5.5 Dokaite kombinatornim argumentom relaciju n3 = (n1 ) + 6(n2 ) + 6(n3 ) za


sve n N.

Rjeenje: Lijeva strana odgovara broju odabira ureene trojke nlanog skupa S, uz mo-
gua ponavljanja.
Skup ureenih trojaka skupa S, uz mogue ponavljanja, moemo podijeliti u tri klase:

trojke u kojima su svi elementi isti takvih oito ima n = (n1 ),

trojke u kojima su dva elementa ista takvih ima 2 (n2 ) 3, budui da dva elementa
moemo odabrati na (n2 ) naina, na dva naina moemo odluiti koji e se element
ponavljati, te postoji tri naina kako ih poredati ((x, x, y), (x, y, x), (y, x, x)),

trojke u kojima su svi elementi razliiti takvih ima 3!(n3 ), budui da tri elementa
moemo odabrati na (n3 ) naina, te ih moemo poredati na 3! naina.

Katkada se odabir k objekata iz nlanog skupa, uz ponavljanja i nevaan redoslijed zove


kkombinacija s ponavljanjem.
Da bi smo formalizirali pristup kombinatornim problemima koja ukljuuju ponavlja-
nja, uvesti emo pojam multiskupa. To je objekt poput skupa, ali u kojem se elementi mogu
ponavljati. Precizno, konani multiskup M na skupu S je ureeni par M = (S, m), gdje
je m S N0 funkcija za koju je xS m(x) konaan broj. Za x S se broj m(x) zove
kratnost od x. Broj elemenata multiskupa M , u oznaci M je xS m(x).
Obino umjesto {a, a, b, c, c, d, d, d} piemo {a2 , b, c2 , d3 }.
Ako su M = (S, m) i M = (S, m ) dva multiskupa na istom skupu, onda kaemo da
je M podmultiskup od M (u oznaci M M ) ako je m (x) m(x) za sve x S.
Sada moemo prethodni rezultat ovako formulirati:
Neka je k N i S nlani skup. Neka je M = (S, m) multiskup takav da je m(x) k za
svaki x S. Tada je broj kpodmultiskupova od M jednak (n+k1 k
).
Uvedimo sada pojam permutacije multiskupova. Neka je M = (S, m) multiskup.
Analogno pojmu permutacije skupa, svaku ureenu ntorku (x1 , . . . , xn ), gsje su xi S
zovemo permutacija multiskupa M . Za razliku od permutacija skupa, ovdje je dozvoljeno
da neki elementi xi budu isti, ali ne smije biti vie ponavljanja od kratnosti tog elememta.

Teorem 1.5.6 Neka je M = {xn1 1 , xn2 2 , . . . , xnk k } zadani multiskup. Neka je n = n1 + +


nk . Tada je broj permutacija od M jednak

n!
.
n1 !n2 !nk !

24
1.5. Multiskupovi i multinomni koe cijenti

Napomena: Katkada se koristi oznaka

n n!
( )= ,
n1 , . . . , n k n1 !n2 !nk !

uz n = n1 + + nk , i taj broj zovemo multinomni koe cijent.

Dokaz: Trebamo odrediti na koliko naina moemo sastaviti ureenu ntorku s elemen-
tima iz M . Prvo odaberemo na koja emo mjesta staviti elemente x1 (njih n1 ), tj. trebamo
odabrati n1 mjesta od njih n, a to moemo napraviti na (nn1 ) naina. Dalje odredimo na
koja emo mjesta staviti elemente x2 ; sada trebamo odabrati n2 mjesta od njih n n1 , to
moemo napraviti na (nn n2
1
) naina. Nastavljanjem ovog postupka, te pomou principa
produkta dolazimo do zakljuka da je broj permutacija dan s

n n n1 n n1 n2 n n1 n2 nk1
( )( )( )( )=
n1 n2 n3 nk
(nn

(n((n( (((
n!  1 )! ( 1 n2 )!
 ((( (( (
(nn
1 )!n1 ! ((n((n(
1 n2 )!n2 ! (n( (n((
 ( ( 1
n( 2 n3 )!n3 !
(( (((
(n((n(
( 1( nk1 )! n!
= .
(n n1 n2 nk )!nk ! n1 !n2 !nk !

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

Teorem 1.5.7 (Multinomni teorem) Vrijedi

n
(x1 + x2 + + xk )n = ( )xr11 xr22 xrkk ,
0r1 ,r2 ,...,rk n r1 , r2 , . . . , rk
r1 ++rk =n

za sve x1 , x2 , . . . , xk C, n N.
Zadatak 1.10
Dokaite kombinatorno teorem 1.5.7. Dokaz je analogan dokazu binomnog teorema 1.3.3.

esto se u enigmatskim asopisima pojavljuju anagrami, tj. pitanja koliko se razliitih ri-
jei moe formirati pomou slova iz neke zadane rijei. Naravno, bit zagonetke je da rijei
trebaju pripadati nekom zadanom jeziku (tj. trebaju se nalaziti u standardnom rjeniku
tog jezika). Postoje dvije strategije za rjeavanje ovog problema:

(a) najprije formiramo sve potencijalne rijei, a onda potraimo nalazi li se neka od njih
u rjeniku,

(b) prolazimo kroz rjenik, i provjeravamo za svaku rije da li je sastavljena od slova iz


zadane rijei.

25
1. P

Da bismo procijenili koja je metoda bolja, trebamo znati broj potencijalnih rijei i broj
rijei u rjeniku. Broj potencijalnih rijei moemo izraunati pomou teorema 1.5.6.
Primjer 1.5.8 Ukoliko je zadana rije , broj potencijalnih rijei je
(2,3,2,1,1,1
10
) = 10 9 8 7 6 5 = 151200.

Zadatak 1.11
Koliko ima potencijalnih rijei ukoliko ne moramo iskoristiti sva slova?

1.6 Particije skupova (Relacije na skupovima)


Prisjetimo se sljedeeg 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 relacija
ekvivalencije 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. Kaemo da je relacija R totalni ureaj ukoliko je relacija re eksivna, antisi-
metrina, 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 ureaja na nskupu je n!.
Napomena: Zapravo emo pokazati da za dani ureaj R na nskupu, njegove elemente
moemo numerirati x1 , . . . , xn tako da vrijedi (xi , xj ) R akko i j, i to moemo
uiniti na jedinstveni nain.

Dokaz: Neka je X nlani skup i R ureaj na X. Prvo emo pokazati da postoji zadnji
element u X, element x takav da, ukoliko je (x, y) R, onda nuno y = x. Pretposta-
vimo da takav x ne postoji. Tada za svaki x postoji y x takav da (x, y) R. Krenimo
s 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 konaan, u nekom tre-
nutku dolazimo do xj takvog da vrijedi xi = xj za neki i < j. No tada (xj1 , xj ) R i
(xj , xj1 ) = (xi , xj1 ) R, budui da je i j 1. Iz antisimetrinosti slijedi xj = xj1 ,
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 sluaja slijedi x = z.
Oznaimo zadnji element s xn . Tada zbog trihotomije vrijedi (x, xn ) R za sve x.
Sada nastavljamo tako da naemo zadnji element skupa X {xn }, koji oznaimo s xn1 ,
itd.
To znai i da se na intuitivni pojam ureaja poklapa s formalnom de nicijom.

26
1.6. Particije skupova (Relacije na skupovima)

U konanici smo dobili jedinstveni nain numeracije elemenata iz X. Nadalje, oito


svakoj numeraciji elemenata iz X odgovara jedan totalni ureaj (zadan s (xi , xj ) R
ako i j). Dakle, broj totalnih ureaja odgovara broju ureenih ntorki iz X, tj. broju
permutacija.

Vratimo se pitanju broja particija. S Bn emo oznaavati nti Bellov broj (to je broj parti-
cija nskupa ili broj relacija ekvivalencije nskupa). Lako se vidi da je B3 = 5 (particije od
{1, 2, 3} su {{1, 2, 3}}, {{1, 2}, {3}}, {{1, 3}, {2}}, {{2, 3}, {1}}, {{1}, {2}, {3}}).
Slino vidimo da je B2 = 2, B1 = 1, a po de niciji stavljamo B0 = 1.
Za razliku od broja podskupova i permutacija, ne postoji jednostavna formula za Bel-
love brojeve. Jedan nain raunanja Bellovih brojeva je dan sljedeim teoremom.
Teorem 1.6.3 Vrijedi
n
n1
Bn = ( )Bnk , za sve n N. (1.4)
k=1 k1

Dokaz: Neka je X = {1, . . . , n} i uzmimo neku particiju A1 , . . . , Al od X. Neka je Aj


skup koji sadri element n. Dakle, Aj = Y {n}, gdje je Y {1, . . . , n 1}. Ostali Ai ,
i j ine particiju skupa {1, . . . , n 1} Aj . Skupovi Y i Ai , i j potpuno odreuju
particiju.
Ukoliko je Y = k 1 postoji (n1 )
k1 mogunosti za izbor skupa Y , te Bnk mogu-
nosti za izbor ostalih elemenata particije. Kako za k moemo uzeti bilo koji broj izmeu
(i ukljuivo) 1 i n, slijedi traena formula.

Pojam particije moemo 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 = nj=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) povlai f (k) = i i
f (k) = j, dakle i = j. Zapravo, vrijedi i vie.
Propozicija 1.6.4 Funkcija f A B je surjekcija akko je {f 1 (y) y B} particija od
A.
Zadatak 1.12
Dovrite dokaz propozicije 1.6.4.

Kod surjekcija vidimo da je broj elemenata particije jednak kardinalitetu kodomene.


Broj particija od k elemenata nskupa oznaava se sa S(n, k) i zove Stirlingovim
brojem druge vrste. Oito je S(n, k) = 0 za k = 0 ili k > n. Takoer se lako vidi da
vrijedi S(n, 1) = S(n, n) = 1. Nadalje, Bn = nk=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
1. P

Dokaz: Particije skupa X = {1, 2, . . . , n + 1} od k elemenata moemo podijeliti u dvije


skupine: one za koje je skup {n + 1} element particije, i ostale. Brojanje particija u prvoj
skupini je jednostavno: ostalih n elemenata od X moemo particionirati u k 1 skupova
na S(n, k 1) naina.
Ukoliko {n + 1} nije lan particije, tada izbacivanjem elementa n + 1 iz elementa
particije 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 element
n + 1 iz bilo kojeg od skupova A1 , . . . , Ak . Drugim rijeima, svakoj klanoj particiji od
{1, . . . , n} odgovara tono k razliitih klanih particija skupa X. Dakle, postoji tono
kS(n, k) particija od X kod kojih {n + 1} nije lan particije.

k
n
.
1 2 3 4 5
Teorem 1.6.5 nam daje mo- 1 1
gunost zapisa Stirlingovog 2 1 1
trokuta. 3 1 3 1
4 1 7 6 1
5 1 15 25 10 1

Teorem 1.6.6 Broj surjekcija sa skupa A, A = n u skup B, B = k je k!S(n, k).

Dokaz: Moemo pretpostaviti k n, A = {1, . . . , n}, B = {1, . . . , k}. Svaka surjekcija


f generira particiju ki=1 f 1 (i). Ali toj particiji odgovara vie surjekcija; da bi A1 bio
element particije generirane funkcijom f , nije nuno da je A1 = f 1 (1). Kako particije
nisu ureene, skup A1 moe odgovarati skupu f 1 (j) za bilo koji j {1, . . . , k}. Dakle,
postoji k mogunosti za izbor broja j1 takvog da je A1 = f 1 (j1 ), k 1 mogunosti
za izbor broja j2 takvog da je A2 = f 1 (j2 ), itd. Stoga se svaka od S(n, k) klanih
particija nlanog skupa moe urediti na k! naina, tj. postoji k! razliitih surjekcija koje
odgovaraju toj particiji.

Zadatak 1.13
Dokaite: broj rasporeda n razliitih kuglica u k jednakih kutija tako da niti jedna kutija
ne ostane prazna je S(n, k).

Primjer 1.6.7 Dokaite relaciju S(n, 2) = 2n1 1.

Rjeenje: Relaciju emo dokazati kombinatornim argumentom. Lijeva strana odgovara


broju particija nlanog skupa S na dva dijela. Dvolanu particiju {A, B} skupa S mo-
emo odrediti tako da za svaki element skupa S biramo da li se nalazi u A ili B. Takvih
odabiramo imamo 2n . No time smo raunali i odabire {S, } i {, S}. Konaan broj oda-
bira dobijemo kad broj odabira 2n 2 podijelimo s 2, budui da smo dvaput brojali svaku
particiju (particija {A, B} je jednaka particiji {B, A}).

28
1.7. Generiranje kombinatornih objekata

Primjer 1.6.8 Dokaite relaciju S(n, n 1) = (n2 ).

Rjeenje: Koliko ima n1lanih particija nlanog skupa? U svakom lanu particije se
nalazi tono jedan element, osim u jednom koji sadri tono dva elementa. Broj traenih
particija odgovara broju odabira ta dva elementa.

Primjer 1.6.9 Dokaite analogon Chu ShihChiehovog teorema:


n
n
S(n + 1, k + 1) = ( )S(i, k), za sve n k.
i=k i

Rjeenje: Lijeva strana odgovara broju odabira k +1lanih particija n+1lanog skupa
S.
Neku k+1lanu particiju skupa S moemo odabrati na sljedei nain. Izdvojimo neki
element x S. On se mora nalaziti u nekom lanu particije A. Ako A ima m elemenata,
onda ga moemo odabrati na (m1 n
) naina. Preostaje nam particionirati skup S A na k
dijelova, to moemo napraviti na S(n + 1 m, k) naina. Dakle lijeva strana je jednaka
broju
n+1
n
( )S(n + 1 m, k).
m=1 m 1
Zamijenom indeksa i n + 1 m dobijamo
n n n
n n n
( )S(i, k) = ( )S(i, k) = ( )S(i, k),
i=0 n i i=0 i i=k i

budui da S(i, k) = 0 za i < k.

1.7 Generiranje kombinatornih objekata


Ukoliko neki problem zahtjeva ispitivanje svih objekata neke vrste (podskupovi, permu-
tacije, ...) potreban nam je algoritam koji e generirati te objekte. Obino je konceptualno
najjednostavniji rekurzivni algoritam. Npr. sljedei algoritam generira partitivni skup od
{1, . . . , n}. Uoite kako algoritam nalikuje dokazu rekurzivne relacije F (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
Simboliki se ovaj algoritam moe prikazati na sljedei nain:
P() = {}
P({1, . . . , n}) = {Y, Y {n} Y P({1, . . . , n 1})} za n > 0
Na slian nain, koristei rekurzivne relacije

29
1. P

(nk) = (n1) (n1


k1 + k
),
n! = n(n 1)!,
Bn = nk=1 (n1
k1
)Bnk ,
moemo konstruirati algoritme za kpodskupove, permutacije i particije.
Ali postoji problem s ovim pristupom: ak i za nevelike vrijednosti broja n, broj obje-
kata je vrlo velik, te moe biti toliko velik da ne stane u memoriju. Ono to trebamo su
algoritmi koji generiraju jedan po jedan objekt, dakle nerekurzivno. Takvi algoritmi e
imati ovakav oblik:
Generiraj prvi objekt

 procesiraj dani objekt
 generiraj novi objekt nisu izgenerirani svi objekti
Vano je primjetiti da ovakav algoritam pretpostavlja da objekti imaju nekakav pore-
dak (ureaj), tj. sam algoritam generira neki poredak (ureaj) objekata.
Za podskupove jedan nerekurzivan algoritam je opisan sljedeim kdom:
Prvi podskup je Y =
poslije Y
 nai zadnji element i koji nije u Y (gledajui 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 nain generiranja podskupova je da iskoristimo drugu verziju dokaza teorema 1.2.1:
za svaki broj N izmeu 0 i 2n 1, napiimo broj N u bazi 2, dani zapis interpretirajmo kao
niz (a1 , . . . , an ), te kreirajmo podskup Y = {j aj = 1}. Ovaj postupak ima dodatnu
prednost to nam omoguava sluajan pristup podskupovima; nismo ovisni o njihovom
poretku.
Vano je uoiti da ova dva algoritma ne kreiraju isti poredak podskupova.
U sluaju kpodskupova postoje dva prirodna ureaja. 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 moemo generirati sljedeim algoritmom (za k = 3, n proizvoljan):


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

30
1.7. Generiranje kombinatornih objekata

Problem s ovim algoritmom je to ovisi o izboru broja k (postoji kompliciranija verzija


koja nema tu manu).
Drugi ureaj ima jednu prednost: najprije dolaze 3podskupovi od {1, 2, 3, 4} u nji-
hovom prirodnom poretku, onda dolaze podskupovi koji sadre 5, dobijeni tako da doda-
jemo 5 2podskupovima od {1, 2, 3, 4}. Sljedei algoritam opisuje generiranje kpodskupova
u ovom poretku.
Prvi podskup je Y = {1, . . . , k}
poslije Y = {y1 , . . . , yk } (gdje je y1 < . . . < yk ) je
 nai prvi i takav da je yi + 1 Y
 poveaj yi za 1, stavi yj = j za j < i i vrati novi Y
 ovaj postupak propada ukoliko je i = k, yk = n; u tom sluaju
Y = {n k + 1, . . . , n} je zadnji skup

Primjer 1.7.2
. 3, 5} {2, 3. , 5} {1,
{1, . 4, 5} {2,
. 4, 5}

i.

Prvi poredak nazivamo leksikografskim poretkom: ukoliko simbole 1, . . . , n shva-


timo kao slova alfabeta, a svaki kpodskup kao rije, onda prvi poredak odgovara leksiko-
grafskom ureaju. Drugi poredak nazivamo obrnutim leksikografskim poretkom: opet
simbole 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 upiemo u rjenik u obrnutom redoslijedu.

abc abd abe acd ace ade bcd bce bde cde
Primjer 1.7.3 543 542 541 532 531 521 432 431 421 321
345 245 145 235 135 125 234 134 124 123

I za permutacije postoji vie prirodnih poredaka. Sljedei algoritam generira permutacije


u leksikografskom poretku:
Prva permutacija je dana s xi = i, i = 1, . . . , n
poslije (x1 , . . . , xn ) je
 nai najvei j za koji je xj < xj+1 (idui od kraja)
 ako takav j ne postoji, gotovi smo
 izmjeni vrijednost od xj s vrijednou najmanjeg xk koji je vei
od xj uz k > j
 obrni niz vrijednosti od xj+1 , . . . , xn i vrati permutaciju
Kako tono radi ovaj algoritam?

31
1. P

Prva dva koraka j je najmanji indeks takav da smo ve generirali sve permutacije koje
poinju s (x1 , . . . , xj , . . .). Dakle, sljedea permutacija e poveati vrijednost od
xj .

Zadnja dva koraka Budui da xj+1 > . . . > xn , element xk je najmanji element vei od
xj koji moe doi poslije x1 , . . . , xj1 u permutaciji. Prije promjene imamo

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

a poslije promjene imamo

xj+1 > . . . > xk1 > 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 permutacija
oblika (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 opadajue, moemo ii od kraja
traei prvi broj vei od xj ). Tada zamjenimo vrijednosti na drugoj i etvrtoj poziciji, to
nam daje (4, 5, 6, 3, 2, 1); te konano obrnemo vrijednosti na pozicijama od 3 do 6, to
nam daje (4, 5, 1, 2, 3, 6).
Primjer 1.7.5

12 3 4 1243
1 2 43 1342 1324
13 2 4 1342
1 3 42 1432 1423

Napomena: Ovaj algoritam vrijedi i za permutacije multiskupova, a poznavali su ga jo u


staroj Indiji (Nryana Pandita, 14. stoljee).

Leksikografski poredak se obino generira sljedeim algoritmom:

1. Nai najvei j takav da se xj moe poveati.

2. Poveaj xj , ali to je mogue manje.

3. Nai leksikografski najkrai nain da se x1 , . . . , xj nadopuni.

to uiniti ako elimo doi do npr. 2092te permutacije (u leksikografskom poretku) brojeva
1, . . . , 9?
Pretpostavimo da je prvi broj u permutaciji 1 (najmanji koji imamo). Ostaje nam 8 brojeva.
Kako se maksimalna permutacija koja poinje s 1 nalazi na 40320om mjestu (8! = 40320), a
2092 < 40320, znamo da se u naoj permutaciji na prvom mjestu nalazi 1.

32
1.7. Generiranje kombinatornih objekata

Sada stavimo sljedei najmanji broj na drugo mjesto, dakle 2. Maksimalna permutacija koja
poinje s (1, 2, . . .) zauzima 5040to mjesto. Budui da je 2092 < 5040, 2 se zaista nalazi na
drugom mjestu u naoj permutaciji. Sada stavimo 3 na tree mjesto. Maksimalna permutacija koja
poinje s (1, 2, 3, . . .) se nalazi na 720-om mjestu. Kako je 2092 > 720, to znai da je permutacija
na 2092-om mjestu vea od svih permutacija koje poinju s (1, 2, 3, . . .).
Stoga zamijenimo 3 s 4. Maksimalna permutacija koja poinje s (1, 2, 4, . . .) se nalazi na mjestu
720 + 720 = 1440, to je i dalje manje od 2092. Zato umjesto 4 stavimo 5. Maksimalna permuta-
cija koja poinje s (1, 2, 5, . . .) se nalazi na mjestu broj 1440 + 720 = 2160, to je vee od 2092.
Dakle, naa permutacija poinje s (1, 2, 5, . . .).
Stavljajui minimalni slobodan broj u nau permutaciju, dolazimo do permutacije koja poinje
s (1, 2, 5, 3, . . .). Maksimalna permutacija koja tako poinje se nalazi na mjestu broj 1440 + 5! =
1570, stoga zamijenimo 3 s 4, to nas dovodi do maksimalne pozicije broj 1440+120+120 = 1690.
Kako smo dobili broj koji je i dalje manji od 2092, umjesto 4 stavljamo 6, to nam daje maksimalnu
poziciju broj 1810. Stavljajui umjesto 6 broj 7, dolazimo do maksimalne pozicije broj 1930. Kako
i 8 daje broj koji je manji od 2092, stavljamo na koncu 9, i dobijamo maksimalnu poziciju broj
2170, to znai da naa permutacija poinje s (1, 2, 5, 9, . . .).
Nastavljanjem ovog postupka, stiemo do permutacije (1, 2, 5, 9, 6, 3, 7, 8, 4).
Zadatak 1.14
Probajte obrazloiti gornji algoritam.

33
Rekurzije, funkcije
izvodnice i formula
ukljuivanjaiskljuivanja
2
2.1 Uvod
U ovom poglavlju emo prouavati tri vane tehnike koje se esto koriste pri rjeavanju
kombinatornih problema.
Rekurzivna relacija izraava vrijednost funkcije f u toki n, n N u terminima vri-
jednosti funkcije f u tokama k, k < n. Jedan jednostavan primjer smo ve vidjeli: broj
F (n) podskupova nskupa zadovoljava relaciju F (n + 1) = 2F (n). Ova relacija, za-
jedno s poetnom vrijednosti F (0) = 1, jedinstveno odreuje vrijednost od F (n) za
svaki n N.
Koritenje funkcija izvodnica je esto povezano s rekurzivnim relacijama, ali su takve
funkcije i drugdje vrlo korisne. Funkcija izvodnica je formalni red potencija iji su koe ci-
jenti lanovi nekog brojevnog niza. Osnovnu ideju emo ilustrirati na prethodnoj rekurziji.
De niramo (formalno) funkciju (t) = n=0 F (n)t . Tada je
n


2t(t) = 2F (n)tn+1 = F (n + 1)tn+1 = (t) 1.
n=0 n=0

Dakle, (t) = 1
12t .Ova funkcija ima (geometrijski) razvoj (t) = n=0 (2t) . Uspore-
n

dimo li ovaj red s poetnim, slijedi F (n) = 2n . Kako red


n=0 (2t) konvergira za t < /2,
n 1

naa manipulacija je bila korektna.


Pretpostavimo da je zadana familija skupova, te da je dan broj elemenata koji se na-
laze u presjeku bilo koje mogue podfamilije. Tada imamo dovoljno podataka da izrau-
namo koliko elemenata se ne nalazi ni u jednom od skupova zadane familije skupova. For-
mula ukljuivanjaiskljuivanja, skraeno FUI (eng. PIE) je formula za izraunavanje
tog broja. U najjednostavnijem sluaju FUI se svodi na sljedeu skupovnu relaciju:
X (A B) = X A B + A B.

35
2. R,

2.2 Fibonaccijevi brojevi


U 13. stoljeu je talijanski matematiar Leonardo da Pisa, zvan Fibonacci, prouavao slje-
dei (nerealistian) problem.
Seljak uzgaja zeeve. Svaki par zeeva, starih barem dva mjeseca, dobiju svakog mje-
seca par mladih: zeca i zeicu. Zeevi nikad ne umiru. Ako na poetku kreemo s jednim
novoroenim parom, koliko e biti ukupno parova zeeva nakon n mjeseci?
Za male vrijednosti od n moemo lako izraunati traeni broj. Za openiti n moemo
ovako razmiljati: broj novih parova je jednak broju parova koji su mjesec dana prije imali
barem dva mjeseca. Ukoliko s Fn oznaimo broj parova u ntom mjesecu, onda iz pret-
hodnog razmiljanja slijedi rekurzivna formula

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

Kako znamo da je F1 = F2 = 1, moemo izraunati Fn , za bilo koji n. Zgodno je de nirati


F0 = 0, tako da (2.1) vrijedi za sve n N0 . Brojeve Fn zovemo Fibonaccijevim brojevima
(ime im je dao francuski matematiar Lucas).
Fibonaccijevi brojevi su jako esti u matematici, a naroito u kombinatorici. Na pri-
mjer, promotrimo sljedei problem. Na koliko naina se moe prirodni broj n zapisati kao
suma jedinica i dvojki?
Oznaimo s Jn taj broj. Oito je J1 = 1, J2 = 2, J3 = 3. Neka je n 2. Svaki rastav od
n mora zavravati s 1 ili 2. Ako zavrava s 1, preostali brojevi daju n 1, a ako zavrava s 2
preostali brojevi daju n2. Dakle, Jn = Jn1 +Jn2 . Ukoliko de niramo J0 = 1 i J1 = 0,
opet dobijemo Fibonaccijeve brojeve (pomaknute za jedno mjesto, tj. Jn = Fn+1 ).
Brojevi Jn se mogu gra ki prikazati tako da jedinicama pridruimo 1 1 kvadrate
a dvojkama 1 2 domine. Tada Jn predstavlja broj naina na koji moemo poploati s
kvadratima i dominama plou 1 n (takvu plou emo nadalje zvati nploa). Time smo
dobili kombinatornu interpretaciju Fibonaccijevih brojeva.

1 2 3 4 5 6 7 8 9 10
.
Slika 2.1: Gra ki prikaz 10ploe poploane s 4 kvadrata i 3 domine.

Formula za Fibonaccijeve brojeve je jedan primjer rekurzivne relacije, tonije, trolane


rekurzivne relacije s konstantnim koe cijentima. Openito, (k + 1)lana rekurzivna re-
lacija (ili krae rekurzija), izraava vrijednost F (n) funkcije F u terminima k prethodnih
vrijednosti 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
2.2. Fibonaccijevi brojevi

: Funkcija koja zadovoljava (k + 1)lanu rekurziju je jedinstveno


odreena svojim vrijednostima u prvih k prirodnih brojeva.
Fibonaccijevi brojevi zadovoljavaju cijeli niz identiteta koji emo dokazati koristei se
kombinatornom interpretacijom brojeva Jn .
Propozicija 2.2.1 Vrijede sljedee relacije:
(a) nk=0 Fk = Fn+2 1,
(b) nk=0 F2k+1 = F2n+2 ,
(c) Fn2 + Fn1
2
= F2n1 .
Dokaz: (a) Ekvivalentno je dokazati n1 k=0 Jk = Jn+1 1.
Desna strana odgovara broju poploavanja (n+1)ploe kod kojeg koristimo barem jednu
dominu (postoje Jn+1 poploavanja (n+1)ploe i tono jedno poploavanje koje koristi
samo kvadrate). Poploavanja (n + 1)ploe kod kojeg koristimo barem jednu dominu
tako da zadnja domina pokriva mjesta (k+1) i (k+2) ima tono Jk . Kako k moe biti bilo
koji broj izmeu (i ukljuivo) 0 i n1, slijedi da i lijeva strana odgovara broju poploavanja
(n + 1)ploe kod kojeg koristimo barem jednu dominu.
(b) Ekvivalentno je dokazati nk=0 J2k = J2n+1 .
Desna strana odgovara broju poploavanja (2n + 1)ploe. Budui da je ploa neparne
duljine, postoji barem jedan kvadrat. Zadnji se kvadrat mora nalaziti na neparnom mjestu,
recimo (2k + 1). Postoji J2k poploavanja (2n + 1)ploe kod kojeg se zadnji kvadrat
nalazi na mjestu (2k + 1). Kako k moe biti bilo koji broj izmeu (i ukljuivo) 0 i n,
slijedi tvrdnja.
(c) Ekvivalentno je dokazati Jn12
+ Jn2
2
= J2n2 .
Da bismo dokazali ovu identitetu uvesti emo novi pojam. Kaemo da je nploa slom-
ljiva na mjestu k ukoliko se ploa moe rastaviti na dvije ploe, jednu koja pokriva mjesta
od 1 do k, i drugu koja pokriva mjesta od k + 1 do n. Drugim rijeima, ploa nije slomljiva
na mjestu k ako i samo ako domina pokriva mjesta k i k + 1. Naprimjer, ploa sa slike 2.1
nije slomljiva na mjestima 2, 4 i 8, dok je na ostalim mjestima slomljiva.
Desna strana identitete odgovara broju poploavanja (2n 2)ploe. Lijevu stranu
moemo ovako interpretirati: ukoliko je ploa slomljiva na mjestu n1, tada je broj poplo-
avanja i lijeve i desne polovice ploe jednak Jn1 , a ukoliko ploa nije slomljiva na mjestu
n 1 onda se ploe koje pokrivaju mjesta od 1 do n 2, odnosno mjesta od n do 2n 2
mogu pokriti na Jn2 naina.
Dokaz (pomou matematike indukcije): Identitete (a) i (b) se jednostavno dokazuju, dok je
dokaz relacije (c) neto sloeniji. Najprije raspiemo lijevu stranu relacije (c).
Fn2 + Fn1
2
= (Fn1 + Fn2 )2 + Fn1
2
= Fn1
2
+ Fn2
2
+ 2Fn1 Fn2 + Fn1
2

= Fn1
2
+ Fn2
2
+ Fn1 (Fn2 + Fn1 ) + Fn1 Fn2
= Fn1
2
+ Fn2
2
+ Fn Fn1 + Fn1 Fn2 .

37
2. R,

Odavde vidimo da nam, da bi smo iskoristili princip matematike indukcije, treba i relacija

Fn Fn1 + Fn1 Fn2 = F2n2 .

Sada emo simultano dokazati ove dvije relacije koristei matematiku indukciju. Baze se lako pro-
vjere. Pretpostavimo sada da vrijedi
2
Fn1 + Fn2
2
= F2n3 i Fn Fn1 + Fn1 Fn2 = F2n2 .

Tada

Fn2 + Fn1
2
= Fn1
2
+ Fn2
2
+ Fn Fn1 + Fn1 Fn2 = F2n3 + F2n2
= F2n1 ,
Fn+1 Fn + Fn Fn1 = (Fn + Fn1 )Fn + (Fn1 + Fn2 )Fn1
= Fn2 + Fn1
2
+ Fn1 Fn + Fn2 Fn1 = F2n1 + F2n2
= F2n .

Propozicija 2.2.2 Vrijedi


n n1 n2
( )+( )+( ) + = Fn+1 , za sve n 0.
0 1 2
Dokaz: Dokazat emo
n n1 n2
( )+( )+( ) + = Jn , za sve n 0.
0 1 2
Desna strana odgovara broju poploavanja nploe. Lijevu stranu interpretiramo na slje-
dei nain. Ukoliko poploavanje nploe koristi k domina, onda poploavamo s n 2k
kvadrata, tj. s ukupno nk ploica. Broj naina na koji moemo izabrati k domina izmeu
n k ploica je (nk
k
). Za broj k oito vrijedi 0 k n2 .

1 2 3 4 5 6 7 8 9 10
.
Slika 2.2: Postoji (73) poploavanja 10ploe koja koriste tri domine. Takva poploavanja
koriste tono 7 ploica i potpuno su odreena ukoliko znamo koje tri od sedam ploica su
domine. Na slici su etvrta, peta i esta ploica domine.

Zadatak 2.1
Rijeite sljedee zadatke koristei se poploavanjima.
1. Jm+n = Jm Jn + Jm1 Jn1 ,

38
2.2. Fibonaccijevi brojevi

2. i0 j0 (ni
j
)(nj
i
) = J2n+1 ,

3. nk=1 (nk)Jk1 = J2n1 ,

4. Jn2 Jn2
2
= J2n1 ,

5. 2Jn = Jn+1 + Jn2 ,

6. 3Jn = Jn+2 + Jn2 ,

7. pi=0 (pi)Jni = Jn+p .

Pogledajmo sada kako moemo rijeiti rekurziju za Fibonaccijeve brojeve. Dati emo
dvije metode, koje emo kasnije generalizirati.
Prva metoda: Kako je naa rekurzija linearna, ukoliko naemo neka rjeenja, tada e i
njihova linearna kombinacija opet biti rjeenje.
Zaista, neka F i G zadovoljavaju rekurziju. De niramo Hn = aFn + bGn . Tada

Hn = a(Fn1 + Fn2 ) + b(Gn1 + Gn2 ) = (aFn1 + bGn1 ) + (aFn2 + bGn2 )


= Hn1 + Hn2 .

Vrijednosti od a i b moemo odabrati tako to iskoristimo poetne vrijednosti od F .


No kako nai bilo kakvo rjeenje nae rekurzije?
Probajmo se malo igrati kalkulatorom. Znamo da Fibonaccijevi brojevi brzo rastu. Ali
koliko brzo? Izraunajmo omjere susjednih Fibonaccijevih brojeva:
1 = 1, 1 = 2, 2 = 1.5, 3 = 1.6, 5 = 1.6, 8 = 1.625, 13 = 1.615, 21 = 1.619 . . .,
1 2 3 5 8 13 21 34

34 = 1.617 . . ., 55 = 1.618 . . ., 89 = 1.617 . . ., 144 = 1.618 . . ., 233 = 1.618 . . .


55 89 144 233 377

Izgleda da je taj omjer priblino 1.618, ako ignoriramo prvih nekoliko vrijednosti.
To znai da se Fibonaccijevi brojevi ponaaju (otprilike) kao geometrijski niz. Stoga je ra-
zumno probati s Fn = cn .
Iz rekurzije (2.1) slijedin1 (2 1) = 0. Rjeenja kvadratne jednadbe
1 = 0 su 1 = 2 , 2 = 2 . Kako i Fn1 = c1 1n i Fn2 = c2 2n zadovoljavaju
2 1+ 5 1 5

rekurziju, to je i Fn = c1 1n + c2 2n rjeenje rekurzije (2.1). Uvrtavanjem poetnih uvjeta


F0 = 0, F1 = 1 slijedi c1 + c2 = 0, c1 1 + c2 2 = 1, odakle slijedi c1 = 15 , c2 = 15 .
Stoga
n n
1 1+ 5 1 5
Fn = [( ) ( ) ].
5 2 2

n
Napomena: Vrijedi 1+ 5
2 = 1.618 . . ., 1 5
2 = 0.618 . . .. Dakle, ( 1+2 5 ) je dominan-
tan lan.

39
2. R,

Druga metoda: De niramo funkciju pomou reda potencija (t) = n


n=0 Fn t . Tada
vrijedi

t(t) = Fn tn+1 = Fn1 tn ,
n=0 n=1

t2 (t) = Fn tn+2 = Fn2 tn .
n=0 n=2

Kako je Fn = Fn1 + Fn2 , skoro pa da vrijedi (t) = (t + t2 )(t). Lako se provjeri da


vrijedi (t + t2 )(t) = (t) t, dakle (t) = 1tt
t
2.

Sada rastavimo 1tt2 na parcijalne razlomke. Neka je 1 t t2 = (1


t

t)(1 t).
Tada su i rjeenja jednadbe x x 1 = 0, dakle = 2 , = 2 . Sljedei korak
2 1+ 5 1 5

je da naemo koe cijente a i b tako da vrijedi


t a b
= + .
1tt 2 1 t 1 t
Standardnim postupkom dolazimo do a = 1 , b
5
= 15 .
Dakle,

a b
(t) = + = a t + b t = (an + b n )tn .
n n n n
1 t 1 t n=0 n=0 n=0

Usporeivanjemm koe cijenata u dva rastava funkcije u red potencija slijedi


n n
1 1+ 5 1 5
Fn = a + b = [(
n n
) ( ) ].
5 2 2

2.3 Linearne rekurzije


Procedura za rjeavanje ope linearne rekurzije s konstantnim koe cijentima je slina onoj
za Fibonaccijeve brojeve. Promotrimo rekurziju

F (n) = a1 F (n 1) + a2 F (n 2) + + ak F (n k). (2.2)

Kao i kod Fibonaccijevih brojeva, pokuajmo nai rjeenje oblika F (n) = n . Uvrtava-
njem slijedi da mora biti korijen jednadbe

xk a1 xk1 a2 xk2 ak = 0. (2.3)

Jednadbu (2.3) zovemo karakteristinom jednadbom pridruenoj (2.2).


Ukoliko ova jednadba ima k razliitih realnih korijena, dobivamo k nezavisnih rje-
enja rekurzije. Uzimanjem njihove linearne kombinacije, i ubacivanjem k poetnih vri-
jednosti od F , dobivamo k linearnih jednadbi s k nepoznanica, koje imaju jedinstveno

40
2.3. Linearne rekurzije

rjeenja ( kao to ste vidjeli na kolegiju Linearna algebra 1). Time smo dobili traeno rje-
enje.
No ukoliko se neki korijeni ponavljaju (zanemarit emo sluaj nerealnih korijena), ne-
emo dobiti odgovarajui broj rjeenja. U tom sluaju radimo sljedee. Neka je, na primjer,
korijen kratnosti d. Tada se moe lako provjeriti da d funkcija n n , n nn , ,
n nd1 n zadovoljava rekurziju (2.2). Na taj nain dolazimo do traenog broja (parti-
kularnih) rjeenja.
Openito, nema jednstavne formule za rjeenje linearne rekurzije. No ako je rekurzija
oblika
F (n) = a1 F (n 1) + a2 F (n 2) + + ak F (n k) + g(n),

onda znamo da se ope rjeenje moe dobiti kao suma opeg rjeenja pripadne homogene
rekurzije (2.2) i nekog partikularnog rjeenja (analogno situaciji kod rjeenja nehomoge-
nog sustava linearnih jednadbi). Ukoliko je g polinom, onda e partikularno rjeenje biti
oblika: rj. hom. rekurzije + polinom.
Primjer 2.3.1 (Hanojski tornjevi) Imamo n kolutova, razliitih veliina, koji se nalaze
poslagani na tapu, od najveeg prema najmanjem, s tim da je najvei na dnu. Imamo jo
dva tapa, i elimo sve kolutove prebaciti na drugi tap, jedan po jedan, tako da kolutovi
budu u istom rasporedu. Ni u jednom trenutku ni jedan kolut ne smije biti smjeten iznad
manjeg koluta. Pitanje je koji je minimalan potreban broj koraka?
Drveni model Hanojskih tornjeva za n = 8 moete vidjeti na slici 2.3.

Slika 2.3: Hanojski tornjevi

Oznaimo s an traeni broj koraka za n kolutova. Oito je a1 = 1. Nadalje, a2 = 3:


prebacimo prvi kolut na drugi tap, drugi kolut na trei tap, a onda manji kolut prebacimo
na vei.
A za proizvoljan n? Jasno je da bi smo mogli pomaknuti najvei kolut, treba nam jedan
prazan tap, to znai da smo svih n 1 ostalih kolutova pomakli na drugi tap. Da bi smo
doli u ovu fazu, treba nam an1 koraka. Tada pomaknemo najvei kolut na slobodni tap,
i onda nam jo treba an1 koraka da stavimo n 1 ostalih kolutova na najvei kolut.

41
2. R,

Dakle, an = 2an1 + 1.
Rjeenje pripadne homogene rekurzije je oito c2n . Trebamo jo nai neko partiku-
larno rjeenje. Probajmo s an = c2n + b. Uvrtavanjem slijedi b = 1, a iz a1 = 1 slijedi
c = 1. Dakle, an = 2n 1.
Ovaj problem je povezan s legendom o vijetnamskom ili indijskom hramu u kojem sve-
enici prebacuju 64 zlatna diska s jednog stupa na drugi po gore opisanim pravilima. Le-
genda kae da e u trenutku kada dovre proces doi do smaka svijeta. Uz pretpostavku da
se jedno prebacivanje moe napraviti za jednu sekundu, proces bi trajao otprilike 5.821011
godina. Vie o problemu Hanojskih tornjeva moete proitati u Wikipedijinom lanku
http://en.wikipedia.org/wiki/Towers_of_hanoi.
Primjer 2.3.2 (Deranmani) Deranman nekog skupa je permutacija tog skupa koja nema
ksnih toaka.
Neka je d(n) broj deranmana skupa {1, 2, . . . , n}. Svaki deranman broj n preslikava
u neki broj i < n. Oito je da se isti broj deranmana dobije za svaku vrijednost od i (1 i
n 1), stoga moemo doi do d(n) tako da izraunamo broj deranmana koji preslikavaju
n u i, te taj broj pomnoimo s n 1. Neka je deranman takav da je (n) = i. Tada
imamo dva sluaja:
1. sluaj: (i) = n, tj. i i n se zamijenjuju. Tada se na ostatku skupa opet ponaa kao
deranman. Dakle, takvih deranmana ima d(n 2).
2. sluaj: (i) n; recimo (j) = n, j i. De niramo permutaciju na {1, . . . , n 1}
formulom


(k), k j,
(k) =

k = j.
i,
Permutacija je opet deranman. S druge strane, svaki deranman skupa
{1, . . . , n 1} se moe proiriti do deranmana skupa {1, . . . , n} na sljedei nain:

(k), k takav da je (k) i,



(k) = i, k = n,



k takav da je (k) = i.
n,
Dakle, takvih deranmana ima d(n 1).
Dobili smo rekurziju

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

Poetne vrijednosti za ovu rekurziju su d(1) = 0, d(2) = 1.


Teorem 2.3.3 Broj deranmana nskupa je dan formulom
n
(1)i n!
d(n) = n! ( ) = , n N. (2.5)
i=0 i! e
Napomena: U teoremu 2.3.3 je oznaka za najblii cijeli broj.

42
2.3. Linearne rekurzije

Dokaz: Da bi smo dokazali teorem, trebamo pokazati da funkcija f (n) = n! (ni=0 (1)
i

i! )
zadovoljava rekurziju za d(n) i pripadne poetne uvjete.
Lako se provjeri f (1) = 0, f (2) = 1. Nadalje
n1
(1)i n2
(1)i
(n1) (f (n 1) + f (n 2)) = (n1)(n1)! +(n1)(n2)!
i=0 i! i=0 i!
n2
(1) i (1)n1
= (n 1)(n 2)! ((n 1) + 1) + (n 1)(n 1)!
i=0 i! (n 1)!
n2
(1)i n2
(1)i n! n!
= n! +(1)n1 (n1) = n! +(1)n1 +(1)n = f (n).
i=0 i! i=0 i! (n 1)! n!

Jo treba dokazati drugu jednakost u (2.5):



n! (1)i n (1)i (1)n+1 1 1
d(n) = n! < n! = .
e i=0 i! i=0 i! (n + 1)! n+1 2
(1) i
(Red i=0 i! alternira i opadajui je pa apsolutnoj vrijednosti; stoga je razlika izmeu
ntog lana i sume reda manja od (n + 1)og lana.)

No kako smo uope doli do formule (2.5)?


Krenimo od rekurzije (2.4) koju moemo 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)n2 (d(2) 2d(1)) = (1)n2
= (1)n .

Dakle
d(n) nd(n 1) = (1)n .

Odavde slijedi
d(i) d(i 1) (1)i
= .
i! (i 1)! i!
Sumiranjem gornje relacije po svim i od 2 do n, dobijamo
d(n) d(1) n (1)i n (1)i
= = .
n! 1! i=2 i! i=0 i!

43
2. R,

Primjer 2.3.4 (In olucije) Koliko ima permutacija nskupa sa svojstvom da su svi pri-
padni ciklusi duljine 1 ili 2?
Oznaimo 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 toka, i

B one kojima n nije ksna toka.

Involucija u klasi A ima oito s(n 1). Za involucije u klasi B razmiljamo na sljedei
nain. Ako takva permutacija preslikava n u i, tada, po pretpostavci, sadri ciklus (i n), a
na preostalih n 2 brojeva djeluje kao permutacija s ciklusima duljine 1 ili 2. Kako postoji
n 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 matematikom indukcijom. Za bazu uzimamo n =


2, 3. Lako se provjeri da su u oba sluaja baze zadovoljene.
(a) Pretpostavimo da su s(n 1) i s(n 2) parni brojevi. Tada jebroj s(n) oito 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!.
2
(Relacija 1 + n1> n slijedi iz (1 + n 1) = n + 2 n 1.)

Napomena: (b) je prilino dobra ocjena.

2.4 Funkcije izvodnice


S redovima koji e se javljati pri koritenju funkcija izvodnica baratati emo iskljuivo kao
s formalnim redovima potencija, tj. nee nas zanimati pitanje konvergencije redova. Tako-
er, koristiti emo operacije zbrajanja, mnoenja, integriranja i deriviranja redova koristei

44
2.4. Funkcije izvodnice

sljedee formule:

( an tn ) + ( bn tn ) = ( (an + bn )tn ) ,
n=0 n=0 n=0
n
( an tn ) ( bn tn ) = ( cn tn ) , gdje su cn = ai bni ,
n=0 n=0 n=0 i=0

d
( an tn ) = nan tn1 = (n + 1)an+1 tn ,
d t n=0 n=1 n=0

a n an1 n
an t = n + 1 t = n t .
n n+1
n=0 n=0 n=1

Primjer 2.4.1 Odredite funkcije izvodnice za sljedee nizove:


a) an = 1,
b) an = n,
c) an = 3n + 5,
d) an = 2n ,


0, n paran,
e) an = ,

1, n neparan.

f ) an = n+2
1
.
Rjeenje: a) U ovom sluaju formulu za funkciju izvodnica direktno dobijemo korite-
njem formule za sumu geometrijskog reda: f1 (x) = n
n=0 an x = n=0 x = 1x .
n 1

b) Funkcija izvodnica je dana redom f2 (x) = n=0 nxn . Krenut emo od geometrijskog
reda (tj. reda iz a) dijela), koji emo najprije derivirati, te potom pomnoiti s x:

1 1 x
xn = nxn1 = nxn = = f2 (x).
n=0 1x n=0 (1 x)2
n=0 (1 x)2

c) Oito za traenu funkciju izvodnicu f3 (x) = n=0 (3n + 5)x vrijedi


n

f3 (x) = 3f2 (x) + 5f1 (x) = (x1)2 + 1x .


3x 5

d) I ovdje emo se posluiti geometrijskim redom:


f4 (x) = n n
n=0 2 x = n=0 (2x) = 12x .
n 1

e) I ovdje se postupak svodi na koritenje formule za sumu geometrijskog reda:


f5 (x) = n=0 x
2n+1 = x (x2 )n = x .
n=0 1x2
f ) Opet kreemo od geometrijskog reda, koji emo najprije pomnoiti s x, potom integri-
rati (po x), te na koncu podijeliti s x2 :

1 x xn+2 x
xn = xn+1 = = d x = xln(1x)
n=0 1x n=0 1x n=0 n + 2 1x

xn x ln(1 x)
= .
n=0 n + 2 x2

45
2. R,

Primjer 2.4.2 Naite funkciju izvodnicu za niz (an ) koji zadovoljava rekurzivnu relaciju
an 5an1 + 6an2 = 5n , uz poetne uvjete a0 = 0, a1 = 1. Uz pomo funkcije izvodnice
naite formulu za opi lan niza (an ).

Rjeenje: De niramo f (x) =


n=0 an . Lako se vidi da vrijedi xf (x) = n=1 an1 x ,
n

x2 f (x) = n=2 an2 xn . Stoga

(an 5an1 +6an2 ) = f (x)a0 a1 x5(xf (x)a0 x)+6x2 f (x) = f (x)(15x+6x2 )x.
n=2

S druge strane

25x2
5n xn = (5x)n = (5x)2 (5x)n = .
n=2 n=2 n=0 1 5x
2 20x +x
2
Dakle vrijedi f (x)(1 5x + 6x2 ) x = 15x
25x
, odakle slijedi f (x) = (15x)(15x+6x 2) .

Rastavimo funkciju f na parcijalne razlomke: f (x) = 15x + 12x + 13x (budui da


A B C

1 5x + 6x2 = (1 2x)(1 3x)). Standardnim postupkom dobijamo A = 25/6, B = 22/3,


C = 23/2, dakle f (x) = 25/6
n=0 (5x) + /3 n=0 (3x) /2 n=0 (3x) , to povlai
n 22 n 23 n

an = 25/65n + 22/32n 23/23n .

Catalanovi i Bellovi brojevi e nam posluiti kao ilustracije upotrebe funkcija izvodnica u
kombinatorici.

2.4.1 Catalanovi brojevi


Catalanovi brojevi se javljaju pri prebrojavanju zapanjujue mnogo kombinatornih obje-
kata. Jedan od problema gdje se javljaju Catalanovi brojevi je sljedei.
B(3, 3)

Na koliko razliitih naina moem doi od


A do B, koristei se crtama, tako da uvijek
idemo desno ili gore, te tako da se nikad ne
prelazi dijagonala AB?
.
A(0, 0)
Drugi problem gdje se javljaju Catalanovi brojevi je sljedei. Na koliko naina mo-
emo napisati sumu od n lanova koritenjem zagrada, a tako da sumu moemo izraunati
zbrajanjem po dva lana u svakom koraku? Na primjer, za n = 4 imamo pet mogunosti:
(((a + b) + c) + d), ((a + (b + c)) + d), (a + ((b + c) + d)), (a + (b + (c + d))) i
((a + b) + (c + d)). (U sluaju algebarskih sustava koji nisu asocijativni, ovi izrazi bi u
pravilu imali razliite vrijednosti.)
Rijeimo najprije ovaj problem, pa emo se onda vratiti na problem broja puteva.
Neka je Zn traeni 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
2.4. Funkcije izvodnice

Zk mogunosti za E1 i Znk za E2 . Zbrajanjem po svim moguim k-ovima dolazimo do


sljedee (nelinearne) rekurzije:
n1
Zn = Zk Znk , n 2.
k=1

Vratimo se na problem puteva.


Odgovor na pitanje je 5, a ti putevi su: DGDGDG, DGDDGG, DDGGDG,
DDGDGG, DDDGGG, gdje je D oznaka za desno, a G za gore.
to je s brojem desnogore puteva u kvadratu nn koji se nalaze ispod dijagonale?
Oznaimo taj broj puteva s pn . Svaki dobar put od A(0, 0) do B(n, n) mora dotai
dijagonalu barem jedanput (u A) prije dolaska u toku B. Pretpostavimo da je C(m, m)
toka u kojoj je put zadnji put dotakao dijagonalu prije dolaska u toku B. Oito je 0
m < n. Postoji pm mogunosti za izbor puta od A do C. Tada put mora doi do
D(m + 1, m), te na koncu doi do E(n 1, n 1), ali ne smije otii iznad linije DE,
jer inae C ne bi bila zadnja toka gdje se dotie dijagonala. Kako su D i E nasuprotni
vrhovi kvadrata sa stranicama duljine n m 1, postoji pnm1 dobrih puteva od D do
E. Kako je 0 m n 1, slijedi
n1
pn = pm pnm1 . (2.6)
m=0

Skicu gornjeg postupka moete pogledati na slici 2.4.

B
E

C
D

.
A

Slika 2.4: broj dobrih puteva

Koja je veza izmeu pn i Zn ? Kako je Zn+1 = nk=1 Zk Znk+1 = n1k=0 Zk+1 Znk , uz
oznaku Ck = Zk+1 , slijedi Cn = n1 C C
k=0 k nk1 . Dakle, rekurzija za brojeve Cn je ista

47
2. R,

kao i za brojeve pn . Kako je C1 = Z2 = p1 = 1, C2 = Z3 = p2 = 2, slijedi Cn = Zn+1 = pn ,


i te brojeve zovemo Catalanovim brojevima. Konvencija je da de niramo C0 = 1.
Naimo sada formulu za Cn . Neka je F (t) = n
n=0 Cn t . Tada je
n
F 2 (t) = an tn , gdje je an = Ck Cnk = Cn+1 .
n=0 k=0

Ovdje smo iskoristili relaciju (2.6). Dakle,



tF 2 (t) = Cn+1 tn+1 = F (t) 1,
n=0

tj. tF 2 (t) F (t) + 1 = 0. Rjeavanjem ove kvadratne jednadbe slijedi



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

1 + 1 4t 1 + 1 4t 1 1 4t
1 = F (0) = lim F (t) = lim = lim
t0 t0 2t t0 2t 1 1 4t
4t
= lim = .
t0 2t(1 1 4t)
S druge strane, ako odaberemo predznak, dobijemo limt0 F (t) = 1. Dakle

1 1 4t
F (t) = .
2t
Jo nam ostaje razviti ovu funkciju u red. Ovdje emo se posluiti poopenim binomnim
teoremom, koji kae

r
(1 + t)r = ( )tn , za svaki r R,
n=0 n

gdje je binomni koe cijent (nr ) de niran s


r r(r 1)(r n + 1) r
( )= , uz konvenciju ( ) = 1.
n n! 0
Dakle,

1 1 1/2
F (t) = (1 (1 4t)1/2 ) = (1 ( )(4t)n )
2t 2t n=0 n

1 1/2 1 1/2
= (1 1 ( )(1)n 4n tn ) = ( )(1)n+1 4n tn1
2t n=1 n 2 n=1 n

1 1/2
= ( )(1)n 4n+1 tn .
2 n=0 n + 1

48
2.4. Funkcije izvodnice

Stoga

1 1/2 1 ( 1) ( 21 n)
1 1
Cn = ( )(1)n 4n+1 = (1)n 4n+1 2 2
2 n+1 2 (n + 1)!
1 1 1 1 2n 1
= (1)n 4n+1 ( ) ( )
2 2 (n + 1)! 2 2
1 1 3(2n 1) 1
= (1)n 4n (1)n = 2n (2n 1)!!
(n + 1)! 2 n (n + 1)!
1 (2n)! 1 2n
= (vidi Zadatak 2.4) = 2n n = ( ).
(n + 1)! 2 n! n + 1 n

Dakle, Zn = Cn1 = n1 (2n2


n1
), pn = Cn = ( ).
1 2n
n+1 n

Zadatak 2.2
Koritenjem poopenog binomnog teorema dokaite da za svaki k N vrijedi

1 n+k1 n
= ( )x .
(1 x)k
n=0 n

Zadatak 2.3
Koritenjem poopenog binomnog teorema dokaite da vrijedi

1 n 3/2 n
= ( )x .
1 x n=0 n

Zadatak 2.4
(2n)!
Dokaite (2n 1)!! = 2n n! .

Gdje se jo javljaju Catalanovi brojevi?


Na primjer, Cn2 je broj naina na koji moemo podijeliti konveksan nterokut u tro-
kute povlaei n 3 meusobno nepresijecajuih dijagonala, to je prvi dokazao Euler. Za
n = 5 postoji C3 = 5 naina:

. . . . .

2.4.2 Bellovi brojevi


Probajmo sada nai funkciju izvodnicu za Bellove brojeve.
Lako se vidi da se rekurzija (1.4) moe i ovako napisati:
n1
n1
Bn = ( )Bi . (2.7)
i=0 i

49
2. R,

De niramo F (t) = n
n=0 Bn t . Ovdje se ispostavlja da uobiajeni trikovi ne prolaze.
Stoga je potreban novi pristup: pomnoimo funkciju F s funkcijom t et . Tada
n
1 n 1
F (t)et = ( Bn tn ) ( t ) = ( Br ) tn
n=0 n=0 n! n=0 r=0 (n r)!

1 n n!
= ( Br ) tn .
n=0 n! r=0 (n r)!
Sada smo vrlo blizu situacije u kojoj bi mogli iskoristiti (2.7), ali nema naina da ubacimo
nedostajui r! u desnu stranu. Stoga, promijenimo malo pravila: ako ne moemo nai za-
tvorenu formulu za F (t) = n=0 Bn t , probajmo nai zatvorenu formulu za F (t) =
n
Bn n
n=0 n! t .
S novom funkcijom F dobivamo slijedee

1 n Br n! 1 n n 1
F (t)et = ( ) tn = ( ( )Br ) tn = Bn+1 tn
n=0 n! r=0 r! (n r)! n=0 n! r=0 r n=0 n!

Bn+1 n Bn
= (n + 1) t = n tn1 = F (t).
n=0 (n + 1)! n=1 n!
Stoga F (t)/F (t) = et , to povlai ln F (t) = et + C, tj.

F (t) = ee +C .
t

Iz F (0) = B0 = 1 slijedi C = 1, dakle

F (t) = ee 1 .
t

Funkcije izvodnice oblika F (t) = an n


n=0 n! t zovemo eksponencijalnim funkcijama
izvodnica (EFI). EFI je zapravo funkcija izvodnica za niz an!n .
emu uvoditi novu vrstu funkcija izvodnica? Ukoliko ne moemo nai obinu funk-
ciju izvodnica, i EFI moi dobro doi. Na primjer, iz

Bn n tr tr tr k 1
t = ee 1 = er=1 r! = e r! = ( ( )
t
)
n=0 n! r=1 r=1 k=0 r! k!
t1 t1 2 1 t1 3 1 t2 t2 2 1 t2 3 1
= (1 + + ( ) +( ) + ) (1 + + ( ) +( ) + )
1! 1! 2! 1! 3! 2! 2! 2! 2! 3!
t3 t3 2 1 t3 3 1
(1 + + ( ) +( ) + ) ,
3! 3! 2! 3! 3!
usporeujui koe cijente od tn na objema stranama, slijedi
n!
Bn = .
1r1 +2r2 ++krk =n (1!) r1 !(2!) r2 !(k!) rk !
r1 r2 rk

50
2.4. Funkcije izvodnice

Kao i za obine funkcije izvodnice, i kod eksponencijalnih funkcija izvodnica esto pri-
padne redove deriviramo (npr. kao u sluaju Bellovih brojeva), integriramo, zbrajamo,
mnoimo itd. Ulogu geometrijskog reda ovdje igra red ex = xn
n=0 n! . Za eksponencijalnu
funkciju izvodnicu f (x) = an n
n=0 n! x vrijedi

an+1 n
f (x) = x ,
n=1 n!

an1 n
f (x) d x = n! x ,
n=1

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 sljedee nizove:
a) an = n!,
b) an = an ,
c) an = n2 ,


0, n neparan,
d) an =


1, n paran.
Rjeenje: a) f (x) = n=0 n! x = 1x .
n! n 1
an n
b) f (x) = n=0 n! x = eax .
c) Uvrtavanjem dobijamo f (x) = n2 n
n=0 n! x = n=0 (n1)! x . Da bi smo doli do za-
n n

tvorene formule za f krenut emo od reda za eksponecijalnu funkciju, kojeg emo najprije
derivirati, potom pomnoiti s x, ponovno derivirati, te na koncu opet pomnoiti s x:

xn xn1 xn nxn1
= ex = ex = xex = ex +xex
n=0 n! n=0 (n 1)! n=0 (n 1)! n=0 (n 1)!

nxn
= xex + x2 ex .
n=0 (n 1)!
Dakle, f (x) = xex + x2 ex .
d) f (x) = x2n
n=0 (2n)! = ch x.

Primjer 2.4.4 Odredite niz ija je ekspoencijalna funkcija izvodnica dana funkcijom f (x) =
(1 2x)3/2 .

Rjeenje: Razvit emo funkciju f u red koritenjem poopenog binomnog teorema:


3/2 3/2
(1 2x)3/2 =
n=0 ( n )(2x) . Raspiimo izraz ( n ):
n

3/2 3 ( 3 2)( 2n1


2 ) 1 (2n + 1)!!
( )= 2 2 = n (1)n .
n n! 2 n!
Stoga f (x) = n (2n+1)!! (1)n 2n xn = (2n+1)!!
n=0 2n (1) n=0 n! xn , dakle traeni niz je
1
n!
an = (2n + 1)!!.

51
2. R,

I neki drugi nizovi osim Bellovih brojeva imaju EFI jednostavnog oblika, na primjer
Zadatak 2.5
Dokaite da je EFI za deranmane dana s F (t) = et (1 t)1 .

Zadatak 2.6
Dokaite da je EFI za Stirlingove brojeve druge vrste S(n, r) dana s F (t) = r!1 (et 1)r .

U pravilu, rijetki su nizovi za koje je bilo koja vrsta funkcije izvodnice dana lijepom
zatvorenom formulom.
Jo jedna vrsta funkcija izvodnica koje imaju vanu ulogu u matematici je Dirichle-
tova funkcija izvodnica, koja nizu (an ) pridruuje funkciju f (s) = an
n=1 ns . Ukoliko
je, na primjer, an = 1, za svaki n N, pridruena Dirichletova funkcija izvodnica se zove
Riemannova zeta funkcija, u oznaci (s), koja ima vanu ulogu u teoriji brojeva budui
da
1
(s) = .
p prost 1 p
s

2.5 Sloenost algorirtama za sortiranje


Kao ilustraciju koritenja rekurzija i funkcija izvodnica u primjenjenoj matematici, izra-
unati emo sloenost za tri popularna algoritma za sortiranje: bubblesort, megesort i qu-
icksort.

2.5.1 Bubblesort
Usporedimo prva dva elementa iz liste, zamijenjujui ih ukoliko nisu u traenom poretku.
Tada usporedimo drugi i trei element liste, opet ih zamijenjujui ukoliko nisu u traenom
poretku. Ovaj postupak provodimo dok ne doemo do kraja liste. Tada ponovimo isti
postupak za prvih n 1 brojeva, pa za prvih n 2,
Ukupan broj usporeivanja je

1 1 1
(n 1) + (n 2) + + 1 = n(n 1) = n2 n,
2 2 2
dakle bubblesort ima sloenost O(n2 ).

2.5.2 Mergesort
Ideja algoritma je da podijelimo listu na dva (otprilike) jednaka dijela, koja sortiramo, a
onda ih spojimo.
Proces spajanja dviju lista duljina l i m zahtijeva najvie l+m1 usporeivanja. Zaista,
pretpostavimo da imamo dvije takve liste, sloene u rastuem poretku. Usporedimo prve

52
2.5. Sloenost algorirtama za sortiranje

elemente u listama i manji upiemo u novu listu, izbacujui ga iz stare liste. Sada ponovimo
ovaj proces,
Prije nego to doe do spajanja, dvije liste moemo sortirati rekurzivno koristei gor-
nju metodu. Neka je tn broj usporeivanja potrebnih da sortiramo listu od n elemenata
ovom metodom. Ukoliko n 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 = 2t2m1 + (2m 1).

Stavimo am = t2m . Tada vrijedi am = 2am1 + (2m 1). Rjeenje pripadne homogene
rekurzije je oito A2m .
Naimo sada neko partikularno rjeenje. Probat emo s rjeenjem oblika
am = Bm2m + C (rjeenje oblika am = B2m + C nee proi budui da je am = 2m
rjeenje homogene rekurzije):

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

odakle slijedi B = C = 1, tj. am = m2m + 1.


Dakle, ope rjeenje je am = A2m + m2m + 1. Iz a1 = 1 (za sortiranje liste koja
se sastoji od dva elementa je potrebno samo jedno usporeivanje) slijedi A = 1, stoga
am = 2m (m 1) + 1. Dakle,

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

Stoga mergesort ima sloenost O(n log2 n), to je bitno bolje od O(n2 ) sloenosti bub-
blesorta.

2.5.3 uicksort
Algoritam za quicksort se moe zapisati na sljedei nain:
Neka je a prvi element liste.
 Podijelimo ostatak liste u dva dijela L , L+ koji se sas-
toje od elemenata manjih, tj. veih od a.
 Sortiramo L i L+ .
 Vratimo (sortirane) L i L+ .
elimo izraunati prosjean broj usporeivnja, uz uvjet da su svi poretci liste jednako
vjerojatni. Sljedee pretpostavke su vane za izraunavanje (prosjene) sloenosti:

prvi element a ima jednaku vjerojatnost da bude prvi, drugi, , nti najmanji ele-
ment,

liste L i L+ imaju sluajan poredak (svi poretci su jednko vjerojatni).

53
2. R,

Neka je qn prosjean broj usporeivanja potrebnih da sortiramo listu od n elemenata.


Tada vrijedi
1 n
qn = n 1 + (qk1 + qnk ).
n k=1
Zaista, prvi korak zahtijeva n1 usporeivanja; ukoliko je a kti najmanji element, drugi
korak zahtijeva u prosjeku qk1 + qnk usporeivanja, te taj broj moramo usrednjiti po
svim moguim vrijednostima od k.
Ova rekurzija se moe pojednostaviti (raspisivanjem sume) na

2 n1
qn = n 1 + qk , (2.8)
n k=0
gdje je q0 = 0.
elimo nai funkciju izvodnicu niza (qn ). Neka je Q(t) = n
n=0 qn t . Mnoenjem
relacije (2.8) s ntn i sumiranjem po n dolazimo do sljedee relacije
n1
nqn t = n(n 1)t + 2 ( qi ) tn .
n n
(2.9)
n=0 n=0 n=0 i=0

. . .

Iz (2.9) slijedi
. .
.

2t2 2tQ(t)
tQ (t) = + . (2.10)
(1 t)3 1t
.
Zadatak 2.7
Provjerite da relacija (2.10) zaista odgovara relaciji (2.9).
(1t)2
Mnoei relaciju (2.10) s t dolazimo do jednadbe
2t
(1 t)2 Q (t) = + 2Q(t)(1 t),
1t
odakle slijedi
2t
= (1 t)2 Q (t) 2Q(t)(1 t) = ((1 t)2 Q(t)) ,
1t
to, uz Q(0) = 0 povlai

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

dakle
2(t + ln(1 t))
Q(t) = . (2.11)
(1 t)2

54
2.6. Formula ukljuivanjaiskljuivanja

Kako iz (2.11) slijedi


t2 t3
Q(t) = 2 ( + + ) (1 + 2t + 3t2 + ),
2 3
dobijamo
n n
1 1
qn = 2 (n i + 1) = 2(n + 1) 4n.
i=2 i i=1 i

Dobru aproksimaciju za qn moemo dobiti ako zamjenimo ni=1 1i s ln n (suma je aprok-


simacija povrine ispod krivulje y = 1/x od x = 1 do x = n), to nam daje
qn 2(n + 1) ln n 4n, dakle qn = 2n ln n + O(n).

2.6 Formula ukljuivanjaiskljuivanja


Primjer 2.6.1 U skupini od 100 studenata, njih 45 igraju nogomet, 53 igraju koarku i
55 igraju Tetris. Nadalje, njih 28 igraju nogomet i koarku, 32 igraju nogomet i Tetris , 35
igraju koarku i Tetris, te njih 20 igraju sve tri igre. Koliko studenata ne igra ni jednu igru?
Ovaj problem moemo rijeiti tako da nacrtamo pripadni Vennov dijagram:
Brojeve upisujemo u odgo-
varajua podruja tako to
koarka
krenemo od broja eleme-
10
nata presjeka sva tri skupa,
onda raunamo broj ele-
8 15
20 menata za presjeke dvaju
. Tetris
skupova dok na koncu ne
nogomet 12 8
doemo do broja eleme-
5
nata koji nisu ni u jednom
22 skupu.

Formula ukljuivanjaiskljuivanja (skraeno FUI) je formula koja formalizira gornji


postupak.
Neka je X univerzalni skup i neka je A1 , . . . , An familija podskupova od X. Ukoliko
je I {1, . . . , n} piemo

AI = Ai , uz konvenciju A = X.
iI

Teorem 2.6.2 Neka je A1 , . . . , An familija podskupo a skupa X. Tada je broj elemenata


od X koji ne lee ni u jednom od skupava Ai , i = 1, . . . , n, dan s

(1)I AI . (2.12)
I{1,...,n}

55
2. R,

Dokaz: Za svaki x X izraunati emo koliko je njegov doprinos sumi u (2.12), tj.
koji je zbroj koe cijenata skupova AI u (2.12) koji ga sadre.
Pri tome pod doprinosom sumi, mislimo na sljedeu elementarnu injenicu:


1, x A,
= A,
xX
0, x A

koja povlai sljedei zapis sume u (2.12):


1, x AI ,
(1)I AI = (1) I

I{1,...,n} I{1,...,n} xX

0, x AI


1, x AI ,
= (1)I .

x AI
xX I{1,...,n} 0,
Pretpostavimo da x X nije ni u jednom od skupova Ai , i = 1, . . . , n. Tada je jedini
lan sume kojem x pridonosi I = , i doprinos je (1)0 = 1.
Inae, neka je J = {i x Ai } neprazan, j = J. Tada je x AI tono onda kada je
I J. Dakle, doprinos od x je dan s
j
I j
(1) = (1)i ( ) = 0,
IJ i=0 i
budui da postoji (ji ) skupova oblika AI 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 znai da suma (2.12) daje broj
elemenata skupa X koji se ne nalaze ni u jednom od skupova Ai , i = 1, . . . , n.

Teorem 2.6.3 Broj surjekcija s nskupa u kskup je dan formulom


k
k
(1)i ( )(k i)n . (2.13)
i=0 i

Dokaz: Neka je X skup svih preslikavanja s {1, . . . , n} u {1, . . . , k}. Dakle, X = k n .


Za i = 1, . . . , k neka je Ai skup preslikavanja f za koje se i ne nalazi u slici od f .
Tada za svaki x, f (x) moe biti bilo koji od k 1 brojeva razliitih od i, dakle Ai =
(k 1)n . Openito, AI e se sastojati od svih preslikavanja ija slika ne sadri elemente od
I, dakle AI = (k I)n .
Preslikavanje iz X je surjekcija ako i samo ako ne lei ni u jednom od skupova Ai .
Stoga iz teorema 2.6.2 slijedi da je broj surjekcija dan s
k
k
(1)I (k I)n = ( )(1)i (k i)n ,
I{1,...,k} i=0 i

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

56
2.6. Formula ukljuivanjaiskljuivanja

Teorem 2.6.4 Broj deranmana skupa {1, . . . , n} je dan s


n
(1)i
n! .
i=0 i!

Dokaz: Ovoga puta je X skup svih permutacija skupa {1, . . . , n}, a Ai je skup permuta-
cija kojima je i ksna toka, i = 1, . . . , n. Vrijedi Ai = (n 1)!, te AI = (n I)!.
Permutacija skupa {1, . . . , n} je deranman ako i samo ako ne lei ni u jednom od
skupova Ai , i = 1, . . . , n. Stoga je po teoremu 2.6.2 broj deranmana dan s
n n
n n!
(1)I (n I)! = ( )(1)i (n i)! = (1)i .
I{1,...,n} i=0 i i=0 i!

Jedna od posljedica teorema 2.6.3 je i sljedea formula za Stirlingove brojeve druge


vrste:
1 k k
S(n, k) = (1)i ( )(k i)n . (2.14)
k! i=0 i
Zaista, formula odmah slijedi iz teorema 1.6.6.
Nadalje, iz (2.14) slijedi sljedea formula za Bellove brojeve
n
1 k k
Bn = (1)i ( )(k i)n .
k=0 k! i=0 i

57
Teorija grafova
3
3.1 Uvod i osnovne de nicije
.
.

. .

S pojmom grafa smo se ve sreli u primjeru 0.1.5. Taj graf je ovako izgledao: .

. Ovom
slikom smo opisali strukturu koja se sastoji od etiri objekta, koja emo zvati vrhovi, koji
su povezani sa sedam krivulja, koje emo zvati bridovi.
Formalno, graf de niramo kao ureeni par skupova (V, E), gdje je V skup vrhova, a
E skup 2podskupova od V , koje zovemo bridovi. Katkada ovu de niciju proirujemo
tako da dopustimo petlje (bridove koje spajaju vrh sa samim sobom), viestruke bridove
(vie bridova izmeu para vrhova, npr. kod problema Knigsberkih mostova) i usmje-
rene bridove (bridovi koji imaju orijentaciju tako da idu od jednog vrha prema drugome).
Naravno, usmjerene bridove reprezentiramo ureenim parovima, a ne 2podskupovima,
dok kod viestrukih bridova E postaje multiskup. Graf koji ima usmjerene bridove zvati
emo usmjereni graf ili digraf, a graf koji ima viestruke 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 njega
moemo rekonstruirati formalni zapis grafa oblika (V, E). Openito, smatramo da je graf
zadan, ukoliko su nam zadani njegovi vrhovi, te ukoliko znamo koji su vrhovi meusobno
povezani. Stoga graf moemo promatrati kao binarnu relaciju susjedstva na skupu vrhova,
gdje kaemo da su dva vrha susjedna ukoliko postoji brid koji ih spaja, ili formalno, vrhovi
u, v V su susjedni ukoliko postoji e = {u, v} E. Za jednostavne grafove ta je relacija
ire eksivna i simetrina.
Dva najjednostavnija primjera grafova su potpuni graf, graf u kojemu je svaki par
vrhova brid, i nul graf, koji uope nema bridova. Potpuni i nul graf s n vrhova oznaa-
vamo s Kn i Nn . Na primjer, na slici 3.1 je prikaz grafa K10 , a ovo je prikaz grafa N7
.. . . . . .

. Kaemo da je vrh v incidentan s bridom e ukoliko je e = {, v} ili


.

e = {v, }. Katkada se brid {u, v} skraeno zapisuje kao uv.

59
3. T

. .

. .

. . .

. .

. .

Slika 3.1: Graf K10

Oito je da jedan te isti graf moemo gra ki prikazati na razliite naine. Stoga mo-
ramo de nirati kada dva grafa smatramo istim, tj. izomorfnim. Kaemo da su dva grafa
G1 i G2 izomorfna ukoliko je mogue oznaiti vrhove oba grafa na isti nain, i to tako
da za svaki oznaeni par u, v vrhova, broj bridova koji spajaju u i v u G1 je jednak broju
bridova koji spajaju u i v u G2 . Drugim rijeima, grafovi G1 = (V1 , E1 ) i G2 = (V2 , E2 )
su izomorfni ukoliko postoje bijekcije V1 V2 , E1 E2 takve da je v incidentan s
bridom e u G1 ako i samo ako je (v) incidentan s bridom (e) u G2 . Na primjer, grafovi
na slikama 3.2 i 3.3 su izomorfni.

.
. . . . . .

Slika 3.2: Graf izomorfan s grafom na slici 3.3

Zadatak 3.1
Dokaite da su grafovi na slikama 3.2 i 3.3 izomorfni.
Dokazivanje (ne)izomorfnosti dvaju grafova je openito vrlo teak problem, a spada u
klasu tzv. problema skrivene podgrupe (eng. hidden subgroup problem).

60
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 konani skup. Za


preslikavanje f vrijedi f (x) = f (y) akko x = yh, za h H, gdje je H neka (nepoznata) podgrupa
od G. Problem skrivene podgrupe je problem odreivanja podgrupe H, uz (to manje) koritenje
funkcije f .
U sluaju izomor zma grafova G1 , G2 , G = Sn , gdje je Sn grupa permutacija reda n, a n je broj
vrhova grafova (ukoliko grafovi nemaju isti broj vrhova, oito nisu izomorfni), X je skup grafova s
n vrhova, f () = (G1 ), gdje je (G1 ) graf dobijen permutiranjem vrhova grafa G1 s obzirom
na permutaciju , a H = { (G1 ) G1 }, gdje je oznaka za izomorfnost grafova.
Podgraf grafa G = (V, E) je graf kojemu se skup vrhova i skup bridova podskupovi
od V i E, respektivno. Ukoliko je G = (V , E ) podgraf od G, 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 na
slici 3.4. Dvije vrste podgrafova su naroito vane. Inducirani podgraf grafa G induciran
skupom V je podgraf G = (V , E ), gdje se E sastoji od svih bridova od G ija oba kraja
lee u V , dok je V neki (zadani) podskup od V . Jedan primjer induciranog podgrafa grafa
sa slike 3.3 je dan na slici 3.5. Razapinjui podgraf je podgraf oblika G = (V, E ). Jedan
primjer razapinjueg podgrafa grafa sa slike 3.3 je dan na slici 3.6. Dakle, svaki graf s najvie
n vrhova je podgraf od Kn , svaki graf s tono n vrhova je razapinjui podgraf od Kn , te
su svi inducirani podgrafovi od Kn potpuni grafovi.
.
. . .

. . .

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

Sada emo de nirati neke naine kretanja po grafu. etnja u grafu je niz
(v0 , e1 , v1 , e2 , v2 , . . . , en , vn ), gdje je ei brid {vi1 , vi }, za i = 1, . . . , n. Kaemo da je to
etnja od v0 do vn . Duljina etnje je broj bridova u nizu (tj. broj vrhova u nizu manje je-
dan). Kaemo da je etnja zatvorena ukoliko je vn = v0 . U jednostavnom grafu bridovi

61
3. T

.
. . .

. .

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

.
. . .

. . .

Slika 3.6: Razapinjui podgraf grafa sa slike 3.3 (ili slike 3.2)

etnje su potupuno odreeni vrhovima, pa esto govorimo o etnji (v0 , v1 , . . . , vn ), gdje


se podrazumijeva da su vrhovi vi1 i vi susjedni. Sada emo de nirati neke specijalne vr-
ste etnji. Staza je etnja u kojoj su svi bridovi razliiti, dok je put etnja u kojoj su svi
vrhovi razliiti (osim eventualno prvog i zadnjeg). Ideja je da stazom moe ii istraiva
koji nije zainteresiran da ponovo prolazi bridom koji je ve istraio, dok je put nain da se
doe od jednog mjesta u drugo, bez ikakvog ponavljanja. Nadalje, zatvoreni put zovemo
.
ciklus. Uoite da je put uvijek i staza, osim sljedeeg patolokog sluaja: e1 , gdje je
. .

(v0 , e1 , v1 , e1 , v0 ) put, ali ne i staza.


Na slici 3.7 je zelenom bojom oznaen 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 tie povezanosti u grafu, tj. mogunosti dolaska iz jednog vrha u drugi, nema
sutinskih razlika izmeu putova, staza i etnji.

Propozicija 3.1.1 (a) Za dva razliita vrha x, y grafa G uvjeti da postoji etnja, staza
ili put izmeu x i y su ekvivalentni.

(b) Za bilo koji graf G, uvjeti da G sadri zat orenu stazu ili put su ekvivalentni.

62
3.1. Uvod i osnovne de nicije

v.2 e2 v.3 e3 v.4 e4 v.7

e6
e1 e10 e11 e12 e9
e5

v..1 v.5 e7 v.6 e8 v.8

Slika 3.7: etnje po grafu

Dokaz: Neka nam je dana etnja od x do y. Dovoljno je pokazati da tada postoji i put
od x do y. Neka je naa etnja dana s (v0 , e1 , v1 , . . . , vi , ei+1 , . . . , vj , ej+1 , . . . , en , vn ) i
pretpostavimo da je vi = vj . Tada je i (v0 , e1 , v1 , . . . , vi , ej+1 , . . . , en , vn ) etnja od x do
y. Na taj nain moemo ukloniti sve vrhove u etnji koji se ponavljaju.

Ukoliko postoje putevi od x do y i od y do z, tada postoji i put od x do z, ali etnja dobijena


spajanjem puteva od x do y i od y do z ne mora biti put.
Zadatak 3.2
Naite 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 emo de nirati jednu vanu relaciju ekvivalencije na skupu vrhova V grafa G: x y
ako postoji put (ili staza ili etnja) od x do y.
Zadatak 3.3
Dokaite da je zaista relacija ekvivalencije.

Ova relacija ekvivalencije de nira jednu particiju skupa V , te de niramo komponente


povezanosti (ili krae, komponente) grafa kao podgrafove inducirane klasama ekviva-
lencije. Graf sa slike 3.4 oito ima dvije komponente, dok, recimo, graf sa slike 3.5 ima
samo jednu komponentu.
Kaemo da je graf povezan ako postoji samo jedna komponenta.
Stupanj (ili valencija) vrha x grafa G de niramo kao broj bridova grafa G koji sadre
vrh x. Ukoliko svaki vrh grafa ima isti stupanj, kaemo da je graf regularan. Kaemo da
je graf dregularan ukoliko svaki vrh ima stupanj d. Nadalje, kaemo da je vrh izoliran
ukoliko je stupnja nula, a list ukoliko je stupnja jedan.
Alternativni naziv valencija dolazi iz kemije: na primjer molekula etana (C2 H6 ) se
moe reprezentirati grafom na slici 3.8.
Ukoliko graf ima petlju, uzimamo da ta petlja poveava stupanj pripadnog vrha za dva.
Ta konvencija nam omoguava da dokaemo sljedei rezultat.

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

63
3. T

H. H.

Stupanj pojedinog vrha


(atoma) tono odgovara
H.. C. C. H. njegovoj valenciji. Teorija
grafova igra vanu ulogu u
kemiji.

H. H.

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 ga
sadre, ili emo izbaciti neki brid e, ili emo dodati brid e koji spaja dva vrha koji prije nisu
bili spojeni. Te emo operacije zapisivati kao G v, G e, G + e. Na slikama 3.9, 3.10 i
3.11 su dani primjeri ovih operacija na grafu prikazanom na slici 3.7.

v.2 e2 v.3 e3 v.4 e4 v.7


e6
e1 e10 e11 e12
e5
v..1 v.5 e7 v.6

Slika 3.9: G v8

v.2 e2 v.3 e3 v.4 e4 v.7


e6
e10 e11 e12 e9
e5
v..1 v.5 e7 v.6 e8 v.8

Slika 3.10: G e1

64
3.2. Stabla i ume

v.2 e2 v.3 e3 v.4 e4 v.7


e6
e1 e10 e11 e12 e9
e5
v..1 e v.5 e7 v.6 e8 v.8

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

Katkada e nai grafovi sadravati i dodatne informacije: npr. brid moe predstavljati
cjevovod, kojem je pridruen njegov kapacitet, ili cijena graenja. Formalno takve grafove
opisujemo uz pomo teinskih funkcija. Teinska funkcija na skupu X je funkcija s X u R
(obino R+0 ). Vrnoteinski, te bridnoteinski graf je graf s teinskom funkcijom na
skupu vrhova, odnosno bridova. Bridnoteinski grafovi su mnogo ei u primjenama.

3.2 Stabla i ume


Stablo je povezan graf bez ciklusa. Na sljedeoj slici je dan jedan primjer stabla.
. . .

.
. .

. . .

uma je graf bez ciklusa: komponente ume su stabla. Jedan primjer ume je dan na
slici 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 tie ovih svojstava. Najprije
emo pokazati sljedeu korisnu lemu.
Lema 3.2.1 Stablo s vie od jednog vrha ima barem jedan list.
Dokaz: Budui da je stablo povezano, ono nema izoliranih vrhova. Stoga pretpostavimo
da je svaki vrh stupnja barem dva. No tada postoje proizvoljno duge etnje iji su susjedni
bridovi razliiti: kad doemo do nekog vrha jednim bridom, napustimo ga drugim. Ali
kako je graf konaan, u nekom trenutku moramo doi do vrha kojeg smo ve prije posjetili.
No to nije mogue budui da stablo nema cikluse.

Teorem 3.2.2 (a) Po ezani graf s n vrho a ima barem n 1 brido a, a tono n 1
brido a ako i samo ako je stablo.
(b) uma s n vrho a i m komponenti ima n m brido a. Dakle, uma ima najvie n 1
brido a, a tono n 1 brido a ako i samo ako je stablo.

65
3. T

Dokaz: Najprije emo pokazati da stablo ima n 1 bridova. Tvrdnju emo dokazati ma-
tematikom indukcijom po broju vrhova stabla.
Baza je oita. Pretpostavimo da stablo s n 1 vrhova ima n 2 bridova. Neka je v list
u stablu T s n vrhova (postojanje takvog vrha garantira Lema 3.2.1). Tada T v ima n 1
vrhova i ne sadri cikuse. Takoer, T v je povezan graf. Zaista, put u T izmeu x i y, gdje
je x, y v, ne moe prolaziti kroz v. Dakle, T v je stablo. Sada iz pretpostavke indukcije
slijedi da T v ima n 2 bridova, dakle T ima n 1 brid.
Pokaimo sada (b). Neka je F uma s n vrhova i m komponenti T1 , . . . , Tm s a1 , . . . , am
vrhova. Tada je m i=1 ai = n. Kako je Ti stablo za svaki i = 1, . . . , m slijedi da Ti ima ai 1
bridova. Stoga F ima m i=1 (ai 1) = n m bridova.
Pokaimo sada (a). Neka je G neki povezan graf s n vrhova i pretpostavimo da G nije
stablo. Tada G sadri ciklus. Neka je e brid u tom ciklusu, i neka je G1 = G e. Tada je G1
i dalje povezan. Nastavljajui ovaj postupak, u nekom trenutku moramo doi do stabla,
recimo poslije r koraka. Dakle, G ima n 1 + r bridova.
Specijalno, ukoliko G ima n 1 bridova, slijedi da G ne sadri ciklus, dakle G je sta-
blo.

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

(b) Graf je stablo ako i samo ako ne sadri cikluse, ali dodavanjem bilo kojeg no og brida
dobijamo ciklus.

Dokaz: (a) Neka je G stablo s n vrhova. Tada je G povezan i ima n 1 bridova. Izbacimo
li bilo koji brid, Teorem 3.2.2 (a) povlai da novi graf vie nije povezan.
Obrnuto, neka je G povezan graf sa svojstvom da izbacivanje bilo kojeg brida dovodi
do nepovezanog grafa. Trebamo pokazati da G ne sadri ciklus. Stoga, pretpostavimo da
G sadri ciklus. No tada brisanjem nekog brida iz ciklusa i dalje dobivamo povezan graf,
to je u kontradikciji s danim svojstvom.

Zadatak 3.4
Dokaite korolar 3.2.3 (b).

Neka je G graf. Razapinjua uma od G je razapinjui podgraf od G koji je uma. Ana-


logno de niramo razapinjue stablo.

Korolar 3.2.4 Svaki po ezan graf ima razapinjue stablo.

Dokaz: Neka graf G ima n vrhova i m bridova. Ukoliko je m = n 1, tada je G stablo


po teoremu 3.2.2 (a). Ukoliko je m n (teorem 3.2.2 (a) povlai da uvijek vrijedi m
n 1), tada G ima ciklus. Izbacimo neki brid e iz tog ciklusa. Graf G e je i dalje povezan.
Ponavljamo postupak dok ne doemo na n 1 bridova.

66
3.2. Stabla i ume

Sljedei algoritam daje konstrukciju razapinjueg stabla grafa G = (V, E):


Neka je S = .
je graf (V, S) nepovezan
 nai brid e brid koji povezuje vrhove u razliitim komponentama.
 dodaj e u S.
(V, S)

Zadatak 3.5
Dokaite da gornji algoritam doista konstruira razapinjue stablo.

Rjeenje: Da bi smo pokazali da algoritam radi, trebamo pokazati da je uvijek mogue izabrati
odgovarajui brid, i da njegovo dodavanje nee stvoriti ciklus.
Neka je Y komponenta povezanosti od (V, S) i neka je Z = V Y ; odaberemo vrhove y, z
iz Y, Z. Budui da je G povezan, postoji put od y do z, i neki brid mora prijei iz Y u Z, i to je
dobar odabir brida. Dakle, dokle god je (V, S) nepovezan, uvijek e se moi odabrati odgovarajui
brid.
Oznaimo odabrani brid s e. Pretpostavimo sada da (V, S) + e sadri ciklus. Ako krenemo iz
Y , i pratimo ovaj ciklus, u nekom trenutku emo prijei u Z pomou brida e, ali tada nema naina
da se vratimo u Y , a da ne koristimo brid e.

Koliko ima razliitih (dakle neizomorfnih) stabala s n vrhova? Formula za taj broj pos-
toji, ali je komplicirana. Mi emo izvesti (jednostavniju) formulu za broj oznaenih stabala,
kojih ima vie. Na primjer, broj neizomorfnih stabala s tri vrha je jedan: . , no . . .

postoje tri razliita oznaena stabla:


.

1 .

1 .

2 .. .

3 2 .. .

3 2 . . .

Teorem 3.2.5 (Cayley) Broj oznaenih stabala s n vrho a je nn2 .

Dokaz (pomou FUI): Neka je X skup svih stabala s vrhovima oznaenim s 1, 2, . . . , n,


te neka je T (n) = X. Neka Ai oznaava skup svih stabala iz X kojima je vrh i list. Iz
leme 3.2.1 slijedi da svako stablo ima barem jedan list za n 2. Dakle ni=1 Aci = , tj.
ni=1 Ai = X za n 2. FUI moemo napisati na sljedei nain
n
Aci = (1)I AI .
i=1 I{1,...,n}

Primjenimo li ovu formulu na na problem slijedi


0= (1)I AI = X + (1)I AI ,
I{1,...,n} I{1,...,n}

67
3. T

tj.
X = (1)I1 AI .
I{1,...,n}

Vrijedi Ai = (n 1)T (n 1), budui da ukoliko je i list, njegov pripadajui brid moe
biti incidentan s bilo kojim od preostalih n 1 vrhova, a tih n 1 vrhova su spojeni u
stablo.
Situacija za Ai Aj je ilustrirana slikom 3.12. Pripadajui bridovi vrhova i i j mogu
biti incidentni s bilo kojima od preostalih n 2 vrhova, a tih n 2 vrhova su spojeni u
stablo.

oznaeno stablo s n 2 vrhova

. . .

i
. . .

.
. . .

j
. .

Slika 3.12: prikaz situacije za Ai Aj

Dakle, Ai Aj = (n 2)2 T (n 2). Analogno zakljuujemo da vrijedi


AI = (n I)I T (n I).
Dakle, za n 3 vrijedi
n
n
T (n) = (1)i1 ( )(n i)i T (n i). (3.1)
i=1 i
Sada trebamo rijeiti ovu rekurziju. Trik kojim emo to napraviti se bazira na injenici da
je desna strana ove rekurzije slina formuli (2.13) koja nam daje broj surjekcija. Ukoliko u
(2.13) ubacimo n n 2 i k n (tj. ukoliko traimo broj surjekcija s (n 2)lanog u
nlani skup), dolazimo do relacije
n
n
(1)i ( )(n i)n2 = 0,
i=0 i
odakle slijedi
n n
n n
nn2 = ( )(1)i1 (n i)n2 = ( )(1)i1 (n i)i (n i)ni2 . (3.2)
i=1 i i=1 i

68
3.2. Stabla i ume

Usporedimo formule (3.1) i (3.2). Ukoliko formula T (k) = k k2 vrijedi za k = 1, . . . , n


1, tada iz (3.1) i (3.2) slijedi T (n) = nn2 . Kako smo ve prije vidjeli da formula vrijedi za
n = 3, matematikom indukcijom slijedi da formula vrijedi za svaki n 3. Oito formula
vrijedi i za n = 1, 2.

Dokaz (pomou Prferovog koda): Prferov kod (ili Prferov niz) duljine n 2, za
n 2, je (n2)torka brojeva iz skupa {1, . . . , n} (uz dozvoljena ponavljanja). Oito ima
nn2 Prferovih kodova duljine n2. Pokazat emo da postoji bijekcija izmeu Prferovih
kodova duljine n 2 i oznaenih stabala s n vrhova.
Za dano stablo oznaeno brojevima 1, . . . , n Prferov algoritam za kodiranje generira
jedinstveni Prferov kod duljine n 2. Algoritam radi na sljedei nain:
i = 1.
i n 2
 nai list v s najmanjom oznakom.
 stavi oznaku (jedinstvenog) susjeda od v na ito mjesto u kodu.
 izbaci v iz stabla.
i 1
Moe se pokazati da razliita oznaena stabla generiraju razliite Prferove kodove.
Neka je P = (p1 , p2 , . . . , pn2 ) Prferov kod oznaenog stabla T . Uoite da se svaki
vrh v od T javlja tono st(v)1 puta u P , gdje je st(v) stupanj vrha v. Specijalno, upravo
oni vrhovi koji se ne javljaju u P su lie od T . Prferov algoritam za dekodiranje nam daje
inverzni algoritam, koji konstruira jedinstveno oznaeno stablo s n vrhova iz Prferovog
koda duljine n 2.
T = Nn , V = {1, . . . , n}, i = 1.
i n 2
 nai v najmanji element skupa V koji se ne nalazi u P .
 povei vrhove v i pi u T .
 izbaci v iz skupa V .
 izbaci pi iz niza P (sada je P = (pi+1 , pi+2 , . . . , pn2 )).
i 1
Povei vrhove koji odgovaraju dvama brojevima u V .
Moe se pokazati da razliiti Prferovi kodovi generiraju razliita oznaena stabla.

Zadatak 3.6
(a) Dokaite da Prferov algoritam za dekodiranje doista generira oznaeno stablo s
vrhovima {1, . . . , n}.

(b) Dokaite da je Prferov algoritam za dekodiranje doista inverzan Prferovom al-


goritmu za kodiranje.

Primjer 3.2.6 Zadano nam je sljedee stablo:

69
3. T

1 . .

7
5
.
. .

4
3
.

2 . .

8
6

Na slici 3.13 je prikazan postupak generiranja pripadnog Prferovog koda.

1 . .

7 .

1 . .

7
5 5
.
. .

4 .
. .

4
3 3
.

2 . .

8 .

2 . .

8
6 6
(a) P = (3) (b) P = (3, 3)

1 . .

7 .

1 . .

7
5 5
.
. .

4 .
. .

4
3 3
.

2 . .

8 .

2 . .

8
6 6
(c) P = (3, 3, 4) (d) P = (3, 3, 4, 5)

1 . .

7 .

1 . .

7
5 5
.
. .

4 .
. .

4
3 3
.

2 . .

8 .

2 . .

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

Slika 3.13: Generiranje Prferovog koda

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

Prferov kod nam, izmeu ostalog, daje e kasan nain generiranja svih oznaenih stabala
s n vrhova, te je to najekonominiji nain spremanja informacija o oznaenim stablima.
Cayleyev teorem 3.2.5 se moe i ovako iskazati: Potpun graf Kn ima nn2 razapinjuih
stabala.

70
3.2. Stabla i ume

1 . .

7 .

1 . .

7
5 5
.
. .

4 .
. .

4
3 3
.

2 . .

8 .

2 . .

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

1 . .

7 .

1 . .

7
5 5
.
. .

4 .
. .

4
3 3
.

2 . .

8 .

2 . .

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

1 . .

7 .

1 . .

7
5 5
.
. .

4 .
. .

4
3 3
.

2 . .

8 .

2 . .

8
6 6
(e) P = (4, 6) (f ) P = (6)

1 . .

7
5
.
. .

4
3
.

2 . .

8
6
(g) P = ()

Slika 3.14: Kreiranje stabla iz Prferovog koda

Zaista, svako stablo sa skupom vrhova {1, . . . , n} je razapinjue stablo od Kn .


Postoji i generalizacija Cayleyevog teorema, tzv. Kirchhoov teorem, koji daje formulu
za broj razapinjuih stabala (zadanog) povezanog grafa.

3.2.1 Minimalna razapinjua stabla


Pretpostavimo da nam je postavljen sljedei problem: n gradova trebamo povezati teleko-
munikacijskom mreom. Za svaki par gradova je poznata cijena postavljanja kabla izmeu

71
3. T

ta dva grada. Koji je najje iniji nain povezivanja svih gradova?


Ovo je jedan primjer problema nalaenja minimalnog razapinjueg stabla: podatke
moemo predstaviti kao opis jednog bridnoteinskog (potpunog) grafa; rjeenje ovog
problema je povezan razapinjui podgraf s minimalnom totalnom teinom (tj. sumom te-
ina bridova podgrafa). Taj podgraf mora biti stablo, inae bi smo mogli izbrisati neki brid,
smanjujui teinu, a ne pokvarivi povezanost. Problem se rijeava primjenom vrlo jednos-
tavnog pohlepnog algoritma, koji se obino zove Kruskalov algoritam. Algoritam glasi:
u svakom koraku, izgradi najje iniju vezu koja spaja dva grada koja ve nisu povezana pu-
tom. Formalno, neka je G = (V, E) povezan graf, nenegativna teinska funkcija na E.
Tada Kruskalov algoritam moemo ovako zapisati:
S = .
(V, S) nije povezan
 odaberi brid e minimalne teine koji spaja vrhove iz
razliitih komponenti.
(V, S)
Drugim rijeima, u svakom koraku odabiremo brid najmanje teine takav da njegovo
ubacivanje ne stvara ciklus.
Teorem 3.2.8 Kruskalo algoritam generira razapinjue stablo minimalne teine.
Dokaz: Iz zadatka 3.5 je jasno da ovaj algoritam konstruira razapinjue stablo. Trebamo
jo pokazati da je to stablo minimalne teine.
Neka su e1 , e2 . . . , en1 bridovi u S, sortirani po redu u kojem ih Kruskalov algoritam
uzima. Uoite da vrijedi (e1 ) . . . (en1 ), budui da iz (ej ) < (ei ) za j > i sli-
jedi da smo u itom koraku trebali odabrati ej koji spaja vrhove iz razliitih komponenti.
Pretpostavimo da postoji razapinjue stablo manje teine, s bridovima f1 , . . . , fn1
sloenih tako da vrijedi (f1 ) . . . (fn1 ). Tada vrijedi
n1 n1
(fi ) < (ei ).
i=1 i=1

Neka je k najmanji broj takav da vrijedi


k k
(fi ) < (ei ).
i=1 i=1

Svakako je k > 1. Stoga


k1 k1
(fi ) (ei ),
i=1 i=1

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

Kako Kruskalov algoritam u ktom koraku bira brid ek , a ne bridove f1 , . . . , fk koji imaju
manju teinu, slijedi da su komponente od (V, {f1 , . . . , fk }) podskupovi komponenti

72
3.3. Planarnost

od (V, {e1 , . . . , ek1 }); dakle (V, {f1 , . . . , fk }) imaju jednako ili vie komponenti od
(V, {e1 , . . . , ek1 }). No to nije mogue, budui 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 nai brid minimalne teine koji spaja vr-
hove iz razliitih komponenti. Stoga postoji modi kacija Kruskalovog algoritma koja se
zove Primov algoritam: sada u svakom koraku biramo brid najmanje teine koji spaja neki
vrh koji je ve spojen s nekim vrhom koji jo nije spojen.
Zadatak 3.7
Dokaite da Primov algoritam zaista generira razapinjue stablo minimalne teine.

3.3 Planarnost
Iako su grafovi apstraktni objekti, intuitivno ih doivljavamo kao toke i linije, na nain
kako ih vizualiziramo na ploi/papiru. Drugim rijeima, mi odabiremo neki poznati ge-
ometrijski prostor kao npr. crtau plou, prikazujemo vrhove kao razliite toke u pros-
toru, a bridove kao linije ili krivulje iji krajevi odgovaraju danim vrhovima. Nadalje, zbog
primjena grafova u npr. modeliranju cestovnog prometa, poeljno je da vrijedi da su krivu-
lje koje predstavljaju dva brida disjunktne osim u toki koja predstavlja njihov zajedniki
vrh (ukoliko takvog ima).
Crte grafa G koji zadovoljava ove uvjete zovemo ulaganje grafa G u prostor.
Nije uvijek jasno da li se neki graf moemo uloiti u dani prostor. Ali u sluaju prostora
R vrijedi sljedei rezultat.
3

Propozicija 3.3.1 Svaki graf se moe uloiti u R3 .

Dokaz: Odaberimo neki pravac p, i prikaimo vrhove grafa s meusobno razliitim to-
kama na pravcu p. Za svaki brid e, odaberimo razliitu ravninu e koja sadri p, i spojimo
toke koje prikazuju vrhove iz e s polukrunicom u e . Ovdje je dana skica konstrukcije
za graf ({A, B, C, D, E}, {{A, C}, {B, D}, {B, E}}), gdje je p xos:

. x
A B C D E

to je s ulaganjem u R2 ? Naalost, ne mogu se svi grafovi uloiti u R2 . Graf koji se moe


uloiti u R2 zovemo planarnim grafom. Npr. potpuni graf K5 nije planaran, to emo
dokazati u teoremu 3.3.5.

73
3. T

Svaki planarni graf oito dijeli ravninu u disjunktna podruja, od kojih je jedno besko-
nano. Osnovni rezultat o planarnim grafovima je tzv. Eulerova formula.

Teorem 3.3.2 (Eulerova formula) Svako ulaganje po ezanog planarnog grafa s p vrho a
i q brido a u ravninu dijeli rvninu u r podruja, gdje vrijedi

p q + r = 2.

Dokaz: Ukoliko graf ima ciklus, izbacimo jedan brid iz ciklusa. Time smo smanjili broj
bridova za jedan, kao i broj podruja (budui da smo dva podruja spojili u jedno), a broj
vrhova je ostao isti. Npr. za graf G na sljedeoj slici vrijedi p = 8, q = 11 i r = 5, dok za
graf G e vrijedi p = 8, q = 10, r=4.
. . . .

.
. . . .

Dakle novi graf ima p = p vrhova, q = q 1 bridova i r = r 1 podruja, te p q + r =


p q + r. Ponavljamo ovaj proces sve dok postoje ciklusi. Na koncu emo doi do stabla,
koje e imati p = p vrhova, q = p 1 bridova i r = 1 podruja, dakle p q + r =
p q + r = 2.

.
. .

p = 5, q = 8, r = 5,
Primjer 3.3.3
.
p q + r = 2.

. .

De nirajmo stupanj podruja planarnog grafa kao broj bridova na koje naiemo pri etnji
oko ruba podruja.
.
. .

A Podruja C i D imaju
. .
stupanj 3, podruje A
C ima stupnaj 5, a po-
B D druje B ima stupanj
.

9.
. .

Teorem 3.3.4 U po ezanom grafu, zbroj stupnjeva podruja je jednak d ostrukom broju
brido a.

74
3.3. Planarnost

Dokaz: Svaki brid pridonosi s dva zbroju stupnjeva podruja.

Teorem 3.3.5 Kn je planaran ako i samo ako je n 4.

Dokaz: Crteom se lako pokae da su Kn , n 4 planarni grafovi. Da bi pokazali da Kn


nije planaran za n > 4, dovoljno je pokazati da K5 nije planaran.
Kada bi K5 bio planaran, tada bi njegovo ulaganje dijelilo ravninu na r = 25+10 = 7
podruja. Svako od 7 podruja mora imati stupanj vei ili jednak od 3 (podruje s jedan ili
dva brida se moe pojaviti samo ako postoje petlje ili paralelni beskonani bridovi u grafu),
stoga iz teorema 3.3.4 slijedi 20 7 3 = 21.
Zadatak 3.8
Dokaite da je dovoljno pokazati da K5 nije planaran da bi smo dokazali da Kn nije pla-
naran za n > 4.

Za graf G = (V, E) kaemo da je bipartitan graf ukoliko se skup V moe particionirati


u 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 od G.
Primjer 3.3.6 Dva primjera bipartitnih grafova.
B. B.

B.. C. B.

C..

B.

C. B. C.

C. C.

Teorem 3.3.7 Po ezani graf je bipartitan ako i samo ako ne sadri cikluse neparne duljine.
Zadatak 3.9
Dokaite teorem 3.3.7.

Ukoliko B i C interpretiramo kao bijelo i crno, vidimo da je graf bipartitan tono onda
kada moemo njegove vrhove obojati s dvije boje tako da ni jedan brid ne spaja vrhove s
istom bojom. Stoga katkada bipartitne grafove nazivamo i bikromatskim.
Zadatak 3.10
Dokaite da su stabla bipartitni grafovi.

75
3. T

Bipartitni graf G = (V, E), V = B C je potpun bipartitni graf ukoliko je svaki vrh iz
B spojen sa svakim vrhom iz C. Ukoliko je B = m, C = n, taj graf oznaavamo s Km,n
ili Kn,m . Desni graf iz primjera 3.3.6 je graf K3,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 podruja. Budui da je bipartitan, svako podruje
ima stupanj vei ili jednak od etiri (teorem 3.3.7), stoga iz teorema 3.3.4 slijedi 18 45 =
20.

Korolar 3.3.9 Km,n je planaran ako i samo ako je min(m, n) 2.

Primjer 3.3.10 (Peterseno graf) Na slici 3.15 Petersonov graf je nacrtan na dva razliita
naina.

. .

.
.

.
. .

. . . . .
. .

.
.
.

. .

Slika 3.15: Petersenov graf

Pokazati emo da Petersenov graf nije planaran. Prepostavimo da jest. Budui da je


broj vrhova p = 10, a broj bridova q = 15, slijedi r = 2 10 + 15 = 7. Budui da najkrai
ciklus u grafu oito ima duljinu 5, svako podruje mora imati stupanj vei ili jednak od 5,
to nije mogue zbog 30 = 2q 7 5 = 35.

to ini graf neplanarnim? Oito, ukoliko sadri K5 ili K3,3 kao podgraf, ne moe biti
planaran. Kuratowski je dokazao 1930. da je to u principu i nuno za neplanarnost. Pro-
motrimo sljedei graf:

76
3.3. Planarnost

.
.

. .

. . .

a b c

Kako K5 nije planaran, ni ovaj graf nije planaran. Zaista, kada bi bio planaran, mogli bi iz
(planarnog) crtea grafa izbaciti vrh b i ubaciti brid {a, c}, ime bi doli do ulaganja K5 u
ravninu.
Ubacivanje novog vrha u postojei brid grafa zovemo subdivizijom brida, a jedna ili
vie subdivizija bridova stvara subdiviziju grafa.

Teorem 3.3.11 (Kuratowski) Graf je planaran ako i samo ako ne sadri subdiviziju od K5
ili K3,3 kao podgraf.

3.3.1 Platonova tijela


Euler je formulu iz teorema 3.3.2 originalno dokazao za konveksne poliedre (tijela ije
su stranice poligoni). Naime, svakome je konveksnom poliedru P na prirodan nain pri-
druen graf G(P ) iji su vrhovi vrhovi poliedra, a bridovi bridovi poliedra. Taj graf je
planaran. (Pretpostavimo da je poliedar napravljen od gume. Probuimo ga nasred neke
stranice i napuimo ga kao da je balon. Na poliedar e postati kugla. Sada projicirajmo
pripadnu sferu na ravninu koristei tzv. stereografsku projekciju s polom u toki u kojoj
smo probuili poliedar. Projekcije vrhova i bridova e initi ulaganje traenog grafa.)
Ukoliko poliedar ima p vrhova, q bridova i r stranica, onda G(P ) ima p vrhova, q
bridova, te njegovo ulaganje u ravninu dijeli ravninu na r podruja. Stoga i za poliedre
vrijedi Eulerova formula p q + r = 2.
Kaemo da je poliedar pravilan ukoliko postoje m 3, n 3 takvi da svaki vrh ima
m bridova, a svaka stranica n bridova. Npr. za kocku je m = 3, n = 4. Konveksne pravilne
poliedre nazivamo Platonovim tijelima.

Teorem 3.3.12 Postoji tono pet Platono ih tijela.

Dokaz: Oito vrijedi 2q = mp = nr. Uvrstimo li te relacije u Eulerovu formulu, slijedi


q q
2 q + 2 = 2 (2n mn + 2m)q = 2mn.
m n

77
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 mogui par (m, n) moemo izraunati p, q i r. Na taj nain
dolazimo do sljedee tablice:
m n p q r naziv
3 3 4 6 4 tetraedar
3 4 8 12 6 kocka Na slici 3.16 su prikazani grafovi Platonovih
4 3 6 12 8 oktaedar tijela.
3 5 20 30 12 dodekaedar
5 3 12 30 20 ikozaedar

. .

. . . . .

. . .

.
. .
.

. . . .

(a) tetraedar (b) kocka (c) oktaedar


. .
.

. .
. .
. .

. .

. . . . .
. . . . .

. .

. .
. .
. .

. . .

(d) dodekaedar (e) ikozaedar

Slika 3.16: Grafovi Platonovih tijela

78
3.4. Eulerovi i Hamiltonovi grafovi

3.4 Eulerovi i Hamiltonovi grafovi


3.4.1 Eulerovi grafovi
U ovoj sekciji emo generalizirati problem 0.1.5, problem Knigsberkih mostova. Ka-
emo za stazu da je Eulerova staza ukoliko prolazi svim bridovima grafa. Zatvorenu Eule-
rovu stazu zovemo Eulerova tura. Graf je Eulerov ako doputa Eulerovu turu.
Prirodan okvir za prouavanje Eulerovih grafova su multigrafovi, budui da se i kod
problema Knigsberkih mostova pojavio multigraf. Generalizaciju Eulerovog rezultata
moemo ovako iskazati:
Teorem 3.4.1 (Eulerov teorem) (a) Multigraf bez izoliranih vrho a je Eulero ako i
samo 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 je
po ezan i ima tono dva vrha neparnog stupnja.
Dokaz: Uvjet povezanosti je oito nuan. Pokaimo najprije da su i drugi uvjeti nuni.
Promotrimo najprije graf s Eulerovom turom. Kreui se stazom, svaki put kad do-
emo do nekog vrha pomou nekog brida, moramo napustiti taj vrh drugim bridom, dakle
iskoristiti emo dva brida tog vrha. Budui da posjetimo svaki brid tog vrha, stupanj mora
biti paran. Isto vrijedi i za poetni vrh, budui da se on poklapa s krajnjim vrhom.
Analogno, za nezatvorenu Eulerovu stazu stupnjevi prvog i zadnjeg vrha moraju biti
neparni, dok ostali vrhovi moraju biti parni.
Pokaimo sada i dovoljnost tih uvjeta. Argument e biti konstruktivne prirode. Neka
je G = (V, E) graf koji zadovoljava (a) ili (b) iz iskaza teorema.
U sluaju (a), neka je v bilo koji vrh, a u sluaju (b) neka je v vrh neparnog stupnja. Sada
konstruiramo stazu s poetkom u vrhu v, dakle kreemo se iz vrha v, nikad ne prelazei
bridom kojim smo ve proli, dokle god je to mogue.
Neka je S skup bridova te staze. Za bilo koji vrh x razliit od v (u sluaju (a)) ili bilo koji
vrh parnog stupnja ili x = v (u sluaju (b)), kad god staza doe do x postojat e neparan
broj neiskoritenih bridova od x. Dakle, ne moemo zaglaviti u takvom vrhu x. Stoga
staza mora zavriti u v (u sluaju (a)) ili u drugom vrhu neparnog stupnja (u sluaju (b)).
Ukoliko je S = E, gotovi smo. Stoga pretpostavimo S E. Tada postoji vrh u koji je
incidentan s nekim bridom iz S i nekim bridom iz E S (zbog povezanosti). Nadalje, u
grafu (V, E S) svaki vrh je parnog stupnja. Stoga, kreui iz u, i koristei samo bridove iz
E S, moemo nai zatvorenu stazu pomou gornjeg postupka. Sada moemo spojiti ove
dvije staze: kreemo iz v i pratimo prvu stazu do vrha u, tada se kreemo drugom stazom
sve dok se ne vratimo u vrh u, a onda nastavimo prvom stazom do njenog kraja.
Poslije konano mnogo primjena ove konstrukcije, dolazimo do eljene staze.
. .
. .

U sluaju Knigsberkih mostova graf je .

, dakle sva etiri vrha su neparnog stupnja,


te ne postoji Eulerova staza.

79
3. T

3.4.2 Hamiltonovi grafovi


Problem analogan problemu nalaenja Eulerove staze je problem nalaenja Hamiltonovog
puta. Hamiltonov put je put koji prolazi kroz sve vrhove grafa. Ukoliko je Hamiltonov put
zatvoren, govorimo o Hamiltonovom ciklusu. Kaemo da je graf Hamiltonov ukoliko
doputa Hamiltonov ciklus. Kako kod ovog problema viestruki bridovi ne igraju nikakvu
ulogu, uvijek moemo pretpostaviti da je graf jednostavan.
Za n > 2 postoji jedinstveni 2regularan graf s n vrhova, koji zovemo nciklus i
. .

. . .

oznaavamo s Cn . Npr. C6 moemo ovako prikazati: .

. Cn moemo predstaviti kao


.

vrhove i bridove nterokutnika. Oito je graf G s n vrhova Hamiltonov ako i samo ako je
Cn podgraf od G.
Provjeriti da li je graf Hamiltonov je puno tee nego provjeriti da li je Eulerov. Ne
postoji jednostavan nuan i dovoljan uvjet za provjeru je li graf Hamiltonov. Jedan od
jednostavnijih dovoljnih uvjeta je dan sljedeim teoremom.

Teorem 3.4.2 (Ore) Neka je dan graf G s n vrho a. Ukoliko za svaka dva nesusjedna vrha
u G 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-
koer pretpostavimo da je G maksimalan graf s tim svojstvom, tj. da dodavanje bilo kojeg
brida u G dovodi do Hamiltonovog grafa (ukolio G nije maksimalan, dodajemo bridove
dok ne postane; to dodavanje nee pokvariti svojstvo da je suma srupnjeva nesusjednih
vrhova vea ili jednaka od n).
Kako G nije potpun (inae bi bio Hamiltonov), postoje vrhovi x, y koji nisu susjedni.
Kako je G maksimalan, dodavanjem brida e = {x, y} graf postaje Hamiltonov, i pripadni
Hamiltonov ciklus mora sadravati e. Stoga G svakako sadri Hamiltonov put
(x = v1 , e2 , v2 , . . . , vn = y).
Neka je A skup vrhova koji su susjedni s x, i neka je B = {vi vi1 je susjedan s y}.
Kako je B jednak stupnju od y, slijedi A + B n. Nadalje, budui da x A B,
slijedi A B n 1. Odavde zakljuujemo A B 1, dakle postoji indeks i takav da
je vi A B.
Sada moemo konstruirati Hamiltonov ciklus u G: kreemo od x = v1 , slijedimo Ha-
miltonov put do vi1 , iz vi1 idemo u y, tada se vraamo natrake putem do vi , a iz vi
dolazimo do x.

Korolar 3.4.3 (Dirac) Neka je dan graf s n vrho a. Ukoliko svaki vrh ima stupanj vei ili
jednak od n/2, graf je Hamiltono .

3.4.3 Problem trgovakog putnika


Trgovaki putnik eli obii n gradova, tako da se na koncu vrati u poetni grad. Kako
odabrati itinerer tako da ukupan prevaljeni put bude minimalan?

80
3.4. Eulerovi i Hamiltonovi grafovi

Ovaj problem moemo predstaviti kao problem nalaenja minimalnog Hamiltono-


vog ciklusa u bridnoteinskom (potpunom) grafu (uvijek moemo dodati nepostojee
bridove kojima stavimo ogromne teine).
Jedan nain rjeavanja problema bi bilo raunanje ukupne teine za sve Hamiltonove
cikluse, ali potpuni graf Kn ima (n 1)! razliitih 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 rjeavanje ovog
problema.
Ali postoje aproksimacijski algoritmi. U nastavku emo opisati algoritam koji generira
Hamiltonov ciklus koji je najvie 3/2 puta tei of optimalnog ciklusa. Pretpostavljamo da
teinska funkcija zadovoljava sljedeu relaciju:
({x, z}) ({x, y}) + ({y, z}), x, y, z. (3.3)
Postupak generiranja suboptimalnog Hamiltonovog ciklusa je sljedei.
Najprije naimo minimalno razapinjue stablo S (npr. pomou 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 teinu.
(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, pratei Eulerovu
turu, preskaemo one bridove koji nas dovode do vrhova koje smo ve obili, tj. na tim
mjestima odabiremo brid koji nas dovodi do sljedeeg vrha na Eulerovoj turi koji jo nismo
posjetili.
Primjer 3.4.4 Na slici 3.17 je dan prikaz konstrukcije suboptimalnog Hamiltonovog ci-
klusa za bridnoteinski potpuni graf K5 . U ovom primjeru je M = {{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 teinom 26.
Zadatak 3.11
Pokuajte nai Hamiltonov ciklus manje teine za graf iz prethodnog primjera.

Pokaimo sada da gornji algoritam doista konstruira ciklus koji je najvie 3/2 puta tei of
optimalnog ciklusa.
Neka su MHC, ET, MRS i (M ) redom totalne teine minimalnog Hamiltonovog
ciklusa, te Eulerove ture, minimalnog razapinjueg stabla i skupa bridova M danih gor-
njim algoritmom. Zbog (3.3), dovoljno je pokazati ET 3/2MHC. Vrijedi ET = MRS +
(M ), te MHC > MRS (ako iz minimalnog Hamiltonovog ciklusa uklonimo neki brid,
dobijamo razapinjue stablo). Neka se 2m vrhova iz M javlja u sljedeem poretku u mini-
malnom Hamiltonovom ciklusu: x1 , x2 , . . . , x2m . Ukoliko za svaki i < 2m zamijenimo
dio (minimalnog Hamiltonovog) ciklusa izmeu xi i xi+1 s bridom {xi , xi+1 }, a dio cik-
lusa izmeu x2m i x1 bridom {x2m , x1 }, iz (3.3) slijedi
({x1 , x2 }) + ({x2 , x3 }) + + ({x2m , x1 }) MHC.

81
3. T

v1
. v1
.

3 3
v2
. v2
.

7
8
6
7 . 7 v0
. . v0
.

6 6
7
4 4
v3
. v3
.

4 4
v4
. v4
.

(a) bridnoteinski K5 (b) minimalno razapinjue stablo S

v1
. v1
.

3 3
v2
. v2
.

6 6
. v0
. . v0
.

6 6
7
4 4
v3
.
4 v3
.

4
v4
. v4
.

(c) S + M (d) Hamiltonov ciklus

Slika 3.17: Konstrukcija suboptimalnog Hamiltonovog ciklusa

Prethodnu relaciju moemo napisati na sljedei nain

(({x1 , x2 }) + ({x3 , x4 }) + + ({x2m1 , x2m }))


+ (({x2 , x3 }) + + ({x2m , x1 })) MHC.

Dakle, suma teina ova dva sparivanja je manja ili jednaka od MHC, pa jedno od ovih spa-
rivanja ima totalnu teinu manju ili jednaku od 1/2MHC, odakle slijedi (M ) 1/2MHC.
Stoga
ET = MRS + (M ) < MHC + 1/2MHC = 3/2MHC.

82
Indeks

B H
Bellov broj . . . . . . . . . . . . . . . . . . . . . . 26 Hamiltonov ciklus . . . . . . . . . . . . . . . . 80
biparticija . . . . . . . . . . . . . . . . . . . . . . . 75 Hamiltonov graf . . . . . . . . . . . . . . . . . 80
bipartitan graf . . . . . . . . . . . . . . . . . . . 75 Hamiltonov put . . . . . . . . . . . . . . . . . . 80
bridnoteinski graf . . . . . . . . . . . . . . 65
bridovi grafa . . . . . . . . . . . . . . . . . . . . . 59 I
incidentan vrh . . . . . . . . . . . . . . . . . . . 59
C inducirani podgraf . . . . . . . . . . . . . . . . 61
Catalanovi brojevi . . . . . . . . . . . . . . . . 48 izolirani vrh . . . . . . . . . . . . . . . . . . . . . 63
cikliki zapis . . . . . . . . . . . . . . . . . . . . . 20 izomorfni grafovi . . . . . . . . . . . . . . . . . 60
ciklus . . . . . . . . . . . . . . . . . . . . . . . . 20, 62
nciklus . . . . . . . . . . . . . . . . . . . . . . . . 80 J
jednostavni graf . . . . . . . . . . . . . . . . . . 59
D
deranman . . . . . . . . . . . . . . . . . . . . . . 42 K
digraf . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 karakteristina jednadba . . . . . . . . . . 40
Dirichletova funkcija izvodnica . . . . . 52 kkombinacija . . . . . . . . . . . . . . . . . . . 14
kkombinacija s ponavljanjem . . . . . . 24
E kombinatorika . . . . . . . . . . . . . . . . . . . . 3
eksponencijalna funkcija izvodnica . . 50 komponente grafa . . . . . . . . . . . . . . . . 63
Eulerov graf . . . . . . . . . . . . . . . . . . . . . 79 Kruskalov algoritam . . . . . . . . . . . . . . 72
Eulerova formula . . . . . . . . . . . . . . . . . 74
Eulerova staza . . . . . . . . . . . . . . . . . . . . 79 L
Eulerova tura . . . . . . . . . . . . . . . . . . . . 79 list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

F M
Fibonaccijevi brojevi . . . . . . . . . . . . . . 36 multigraf . . . . . . . . . . . . . . . . . . . . . . . . 59
formula ukljuivanjaiskljuivanja . . 35 multinomni koe cijent . . . . . . . . . . . . 25
funkcija izvodnica . . . . . . . . . . . . . . . . 35 multiskup . . . . . . . . . . . . . . . . . . . . . . . 24

G N
graf . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 nul graf . . . . . . . . . . . . . . . . . . . . . . . . . 59

83
I

P Stirlingov broj prve vrste . . . . . . . . . . . 21


Pascalov trokut . . . . . . . . . . . . . . . . . . . 15 Stirlingov trokut . . . . . . . . . . . . . . . . . 28
permutacija . . . . . . . . . . . . . . . . . . . . . . 20 Stirlingova formula . . . . . . . . . . . . . . . 18
kpermutacija . . . . . . . . . . . . . . . . . . . 21 stupanj podruja . . . . . . . . . . . . . . . . . 74
permutacija multiskupa . . . . . . . . . . . . 24 stupanj vrha . . . . . . . . . . . . . . . . . . . . . 63
Petersenov graf . . . . . . . . . . . . . . . . . . . 76 subdivizija brida . . . . . . . . . . . . . . . . . . 77
petlja . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 subdivizija grafa . . . . . . . . . . . . . . . . . . 77
planarni graf . . . . . . . . . . . . . . . . . . . . . 73 susjedni vrhovi . . . . . . . . . . . . . . . . . . . 59
Platonova tijela . . . . . . . . . . . . . . . . . . 77
podgraf . . . . . . . . . . . . . . . . . . . . . . . . . 61
poopeni binomni teorem . . . . . . . . . 48 etnja . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
poredak uma . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
leksikografski poredak . . . . . . . . . 31 T
obrnuti leksikografski poredak . . 31 teorija grafova . . . . . . . . . . . . . . . . . . . . . 3
potpun bipartitni graf . . . . . . . . . . . . . 76
potpuni graf . . . . . . . . . . . . . . . . . . . . . 59 U
povezan graf . . . . . . . . . . . . . . . . . . . . . 63 ulaganje grafa . . . . . . . . . . . . . . . . . . . . 73
Primov algoritam . . . . . . . . . . . . . . . . . 73 usmjereni brid . . . . . . . . . . . . . . . . . . . 59
princip usmjereni graf . . . . . . . . . . . . . . . . . . . 59
Dirichletov princip . . . . . . . . . . . 10
princip bijekcije . . . . . . . . . . . . . . . 9 V
princip dvostrukog brojanja . . . . . 9 viestruki brid . . . . . . . . . . . . . . . . . . . 59
princip kvocijenta . . . . . . . . . . . . . . 9 vrhovi grafa . . . . . . . . . . . . . . . . . . . . . 59
princip matematike indukcije . . 10 vrnoteinski graf . . . . . . . . . . . . . . . 65
princip produkta . . . . . . . . . . . . . . 9
princip razlike . . . . . . . . . . . . . . . . . 9
princip sume . . . . . . . . . . . . . . . . . . 9
Prferov kod . . . . . . . . . . . . . . . . . . . . 69
put . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

R
razapinjua uma . . . . . . . . . . . . . . . . . 66
razapinjue stablo . . . . . . . . . . . . . . . . 66
razapinjui podgraf . . . . . . . . . . . . . . . 61
dregularan graf . . . . . . . . . . . . . . . . . 63
regularan graf . . . . . . . . . . . . . . . . . . . . 63
rekurzivna relacija . . . . . . . . . . . . . . . . 35
Riemannova zeta funkcija . . . . . . . . . . 52

S
stablo . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
staza . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Stirlingov broj druge vrste . . . . . . . . . 27

84
Bibliograja

[1] P. J. Cameron, Combinatorics: Topics, Techniques, Algorithms, Cambridge University


Press, 1994.

[2] I. Anderson, A rst Course in Discrete Mathematics, Springer Verlag, 2001.

[3] L. Lovasz, J. Pelikan, K. L. Vesztergombi, Discrete Mathematics, Springer Verlag, 2003.

[4] D. Veljan, Kombinatorna i diskretna matematika, Algoritam, Zagreb 2001.

85

You might also like