64
Princip rekurzije i matematiˇ cka indukcija N. Ikodinovi´ c 22.02.2013. (Teorija algoritama) 22.02.2013. 1 / 60

Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Embed Size (px)

Citation preview

Page 1: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Princip rekurzije i matematicka indukcija

N. Ikodinovic

22.02.2013.

(Teorija algoritama) 22.02.2013. 1 / 60

Page 2: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 2 / 60

Page 3: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O algoritmima

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 3 / 60

Page 4: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O algoritmima

O pojmu algoritma

Primeri algoritama su poznati prakticno u svim oblastima matematikepri cemu neki poticu jos iz antickog doba.

Rec algoritam dolazi od latinizovanog imena arapskog matematicaraAbu Dzafar Muhamed Ibn Musa Al Horezmija koji je u IX veku daoveliki doprinos matematici svojim delom Hisab al dzabr val mukabala.[Rec algebra dolazi od al dzabr.]Pocetkom XII veka jedna Al Horizmijeva knjiga je prevedena nalatinski pod naslovom Algoritmi de numero indorum [prevod: AlHorezmi o indiskoj vestini racunanja]. Tada je u Evropu stigaosavremeni pozicioni sistem zapisivanja brojeva (indijsko-arapske cifre)koji je potpuno potisnuo grcko-rimski aditivni sistem.

(Teorija algoritama) 22.02.2013. 4 / 60

Page 5: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O algoritmima

Primeri algoritama

Nadji NZD dva data cela broja. [ Smatra se da je Euklidovalgoritam najstariji netrivijalni algoritam koji je ostao nepromenjendo danasnjih dana.]

Resi datu linearnu Diofantovu jednacinu. [Nadji sva celobrojna resenjajednacine ax + by = c (a,b,c ∈Z).]

Odredi pribliznu vrednost kvadratnog (kubnog) korena datogdecimalnog broja na zadati broj decimala.

Resi datu linearnu (kvadratnu) jednacinu.

Nadji izvod datog polinoma.

Ispitaj da li je data iskazna formula tautologija.

Resi Rubikovu kocku.

(Teorija algoritama) 22.02.2013. 5 / 60

Page 6: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O algoritmima

Resi datu diofantovu jednacinu.

10. Hilbertov problem

1900. godina Da li postoji algoritam koji za svaki polinom

f (X1, . . . ,Xn) ∈Z[X1, . . . ,Xn]

utvrdjuje da li jednacina

(?) f (X1, . . . ,Xn) = 0

ima resenja u Zn?

Resenje jednacine (∗) je n-torka celih brojeva (x1, . . . ,xn) ∈Zn takva da jef (x1, . . . ,xn) = 0.Problem je resen 1970. godine i odgovor je negativan: ne postoji takavalgoritam.

(Teorija algoritama) 22.02.2013. 6 / 60

Page 7: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O algoritmima

Sta je algoritam?

Pojam algoritma ili efektivne procedure vekovima postoji umatematici bez precizne definicije. Neformalno, pod algoritmom sepodrazumeva mehanicki proces koji se korak po korak izvodi nadkonacnim skupom podataka, pri cemu je svaki korak nedvosmislenodefinisan, izvodi se u konacnom vremenu i u ogranicenom deluprostora.

Iako navedena recenica dosta dobro odgovara svakodnevnoj upotrebiovog pojma, ona se ne moze uzeti za (strogu) matematicku definiciju!

Navedena “definicija” nemocna je pred problemima tipa: pokazati dane postoji algoritam za resavanje nekog problema.

(Teorija algoritama) 22.02.2013. 7 / 60

Page 8: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 8 / 60

Page 9: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Matematicka logika

Odlucivost iskazne logike

Problem valjanosti (zadovoljivosti) u iskaznoj logici jeste odluciv problem.

Neodlucivost predikatske logike

Problem valjanosti (zadovoljivosti) u predikatskoj logici nije odlucivproblem.

(Teorija algoritama) 22.02.2013. 9 / 60

Page 10: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Postov problem

Pretpostavimo da je dato konacno mnogo (dopustivih) domina pri cemu suna svakoj domini upisane dve reci nekog zadatog alfabeta. Na primer,{[

b

ca

],

[a

ab

],

[ca

a

],

[abc

c

]}Zadatak je napraviti niz dopustivih domina (ponavljanja su dozvoljena)tako da je rec dobijena nadovezivanjem reci zapisanih na gornjim stranamadomina jednaka reci koja se dobija nadovezivanjem reci sa donjih stranadomina.Na primer, za zadati skup dopustivih domina moguce je napraviti takav niz:[

a

ab

][b

ca

][ca

a

][a

ab

][abc

c

]

(Teorija algoritama) 22.02.2013. 10 / 60

Page 11: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Postov problem

Naravno, za neke skupove dopustivih domina ovakav niz nije mogucepronaci.Na primer, ako je skup dopustivih domina{[

abc

ab

],

[ca

a

],

[acc

ba

]}nije moguce forimirati odgovarajuci niz.

Da li postoji algoritam kojim se utvrdjuje moze formirati odgovarajuci nizili ne za bilo koji dati skup dopustivih domina?

Odgovor na ovo pitanje je takodje negativan: trazeni algoritam ne postoji.

(Teorija algoritama) 22.02.2013. 11 / 60

Page 12: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Problem reci

Reci zapisane engleskom abecedom mozemo transforimsati pomocusledecih

pravila

a ≡ ar,

ma ≡ um,

nono ≡ no,

ti ≡ te,

tima ≡ etno,

teka ≡ nost,

tema ≡ t.

Primer izvodjenja

matematika ≡ umtematika

≡ umtimatika

≡ umetnoteka

≡ umetnonost

≡ umetnost.

(Teorija algoritama) 22.02.2013. 12 / 60

Page 13: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Problem reci

Reci zapisane engleskom abecedom mozemo transforimsati pomocusledecih

pravila

a ≡ ar,

ma ≡ um,

nono ≡ no,

ti ≡ te,

tima ≡ etno,

teka ≡ nost,

tema ≡ t.

Zadatak 1.

Da li je stiknono≡stekno?

Da: stiknono≡steknono≡stikno.

Zadatak 2.

Da li je matematika≡art?

Ne: ???

(Teorija algoritama) 22.02.2013. 13 / 60

Page 14: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Opsti problem reci

Ne postoji opsti algoritam koji utvrdjuje da li su dve reci ekvivalentne ilinisu za bilo koji zadati (konacan) alfabet i dati spisak pravila.

Neresiv problem

ah ≡ ha

oh ≡ ho

at ≡ ta

ot ≡ to

tai ≡ it

hoi ≡ ih

that ≡ ithe

R. Penrouz, Carev novi um – O racunarima, umu i zakonima fizike,Informatika, Beograd, 2004.

(Teorija algoritama) 22.02.2013. 14 / 60

Page 15: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Poznato je da se ravan moze poplocati, tj. pokriti bez preklapanja ipraznina, kvadratima, jednakostranicnim trouglovima i pravilnimsestouglovima, a da se ne moze poplocati, na primer, pravilnimpetouglovima.

Mnogi drugi oblici mogu poplocati ravan, kao, na primer, svaki odnepravilnih petouglova prikazanih na narednoj slici.

(Teorija algoritama) 22.02.2013. 15 / 60

Page 16: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Razmatranje poplocavanja ravni prilicno se komplikuje povecavanjem brojaoblika.

(Teorija algoritama) 22.02.2013. 16 / 60

Page 17: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Sva poplocavanja ravni prikazana naprethodnim slikama su periodicna.Grubo govoreci, to znaci da postoje bardva razlicita pravca u poplocanoj ravni ina svakom od njih beskonacno mnogotacaka iz kojih mozemo posmatratipoplocanu ravan a da ono sto vidimobude jedan te isti sablon, odnosno danam poplocana ravan izgleda potpunoisto kada je posmatramo iz bilo koje odpomenutih tacaka.

(Teorija algoritama) 22.02.2013. 17 / 60

Page 18: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Matematickim jezikom, poplocavanje jeperiodicno ako postoje dve nezavisnetranslacije ravni koje uocenopoplocavanje prevode u sebe. Za svakoperiodicno poplocavanje ravni postojitzv. paralelogram perioda odredjenvektorima translacija koje topoplocavanje prevode u sebe.

(Teorija algoritama) 22.02.2013. 18 / 60

Page 19: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Postoje plocice kojima se ravan moze poplocavati i periodicno ineperiodicno.

(Teorija algoritama) 22.02.2013. 19 / 60

Page 20: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Postoji li konacan skup dozvoljenih oblika koji se mogu redjati samoneperiodicno? Postoji – Robinsonov aperiodican skup plocica.

Postoji jos aperiodicnih skupova plocica: Penrouzove plocice – zmaj istrelica.

(Teorija algoritama) 22.02.2013. 20 / 60

Page 21: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Neodlucivost u matematici

Poplocavanje ravni

Kako i zasto su otkriveni aperiodicni skupovi plocica?

Hao Vang je 1961. godine formulisao je problem: Postoji li postupak zaresavanje problema poplocavanja, tj. postoji li neki algoritam kojim semoze utvrditi da li dati skup mnogougaonih plocica moze poplocati ravan?Dokazao je da ce ovakav algoritam postojati ako se dokaze da svaki skup

plocica koji poplocava ravan zaparavo je poplocava periodicno.(U to vreme se verovalo da aperiodicni skupovi plocica ne postoje).

M. R. Robinson, Undecidability and nonperiodicity for tilings of the plane,Invent. Math. 12, 1971.

(Teorija algoritama) 22.02.2013. 21 / 60

Page 22: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O predmetu Teorija algoritama

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 22 / 60

Page 23: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

O predmetu Teorija algoritama

Predmet Teorija algoritama

1 Izracunljive funkcije[Prirodni brojevi – matematicka indukcija i teoreme rekurzije;RAM-programi, . . . ]

2 Cercova teza[Modeli izracunljivosti: gramatike; logicki model izracunljivosti(logicko programiranje); λ -racun (funkcionalno programiranje), . . . ]

3 Univerzalni programi[Aritmetizacija; univerzalna Tjuringova masina vs racunar, . . . ]

4 Odlucivost i neodlucivost[Dijagonalizacija; problem zaustavljanja; Rajsova teorema; odlucivi ineodlucivi problemi, . . . ]

5 Teorija slozenosti[Prostorna i vremenska slozenost; Klase P i NP;Problemi SAT, HC, . . . ]

(Teorija algoritama) 22.02.2013. 23 / 60

Page 24: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 24 / 60

Page 25: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

Euklidov algoritam je postupak za nalazenje najveceg zajednickogdelioca dva broja.

Primer 1.

NZD(942,444) =?942 = 2 ·444 + 54

NZD(942,444) = NZD(444,54)444 = 8 ·54 + 12

NZD(444,54) = NZD(54,12)54 = 4 ·12 + 6

NZD(54,12) = NZD(12,6)12 = 2 ·6 + 0

NZD(12,6) = NZD(6,0) = 6

NZD(942,444) = 6

(Teorija algoritama) 22.02.2013. 25 / 60

Page 26: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

[m modn =“ostatak pri deljenju m sa n”]

Primer 1.

NZD(444,942) =?NZD(444,942) = NZD(942,444mod942) Pravilo 2.

= NZD(942,444)[jer je 444 = 0 ·942 + 444, pa je 444mod942 = 444]

= NZD(942,444) = NZD(444,942mod444) Pravilo 2.= NZD(444,54)

[jer je 942 = 2 ·444 + 54, pa je 942mod444 = 54]= NZD(444,54) = NZD(54,444mod54) = NZD(54,12) Pravilo 2.= NZD(54,12) = NZD(12,54mod12) = NZD(12,6) Pravilo 2.= NZD(12,6) = NZD(6,12mod6) = NZD(6,0) Pravilo 2.= NZD(6,0) = 6 Pravilo 1.

(Teorija algoritama) 22.02.2013. 26 / 60

Page 27: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

Jednakostima (1) i (2) potpuno je opisan postupak izracunavanjanajveceg zajednickog delioca dva broja.

Jednakostima (1) i (2) korektno je definisana funkcijaNZD :N×N→N

[N= {0,1,2, . . .} – skup prirodnih brojeva]

E1 Podeli A sa B i zapamtiostatak C .

E2 Ako je C = 0, zavrsipostupak i stampaj B;ako je C > 0, stavi da jeA := B i B := C i idi na E1.

(Teorija algoritama) 22.02.2013. 27 / 60

Page 28: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

Jednakostima (1) i (2) potpuno je opisan postupak izracunavanjanajveceg zajednickog delioca dva broja.

Jednakostima (1) i (2) korektno je definisana funkcijaNZD :N×N→N

[N= {0,1,2, . . .} – skup prirodnih brojeva]

E1 Podeli A sa B i zapamtiostatak C .

E2 Ako je C = 0, zavrsipostupak i stampaj B;ako je C > 0, stavi da jeA := B i B := C i idi na E1.

(Teorija algoritama) 22.02.2013. 27 / 60

Page 29: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

Jednakostima (1) i (2) potpuno je opisan postupak izracunavanjanajveceg zajednickog delioca dva broja.

Jednakostima (1) i (2) korektno je definisana funkcijaNZD :N×N→N

Definicije funkcija ovakvog tipa nazivaju se rekurzivnim (rekurentnim,induktivnim) definicijama.

Rec rekurzija potice od latinske reci recurrere koja znaci vratiti se od[recurrence = koji se vraca]

Dedekind je u svom radu iz 1888. godine. koristio termin definisanindukcijom, dok je Hilbert [1904] upotrebio rec rekurrent(e), a kasnije[1923] i rec Rekursion.

(Teorija algoritama) 22.02.2013. 28 / 60

Page 30: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

Jednakostima (1) i (2) potpuno je opisan postupak izracunavanjanajveceg zajednickog delioca dva broja.

Jednakostima (1) i (2) korektno je definisana funkcijaNZD :N×N→N

Definicije funkcija ovakvog tipa nazivaju se rekurzivnim (rekurentnim,induktivnim) definicijama.

Rec rekurzija potice od latinske reci recurrere koja znaci vratiti se od[recurrence = koji se vraca]

Dedekind je u svom radu iz 1888. godine. koristio termin definisanindukcijom, dok je Hilbert [1904] upotrebio rec rekurrent(e), a kasnije[1923] i rec Rekursion.

(Teorija algoritama) 22.02.2013. 28 / 60

Page 31: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

Jednakostima (1) i (2) potpuno je opisan postupak izracunavanjanajveceg zajednickog delioca dva broja.

Jednakostima (1) i (2) korektno je definisana funkcijaNZD :N×N→N

Definicije funkcija ovakvog tipa nazivaju se rekurzivnim (rekurentnim,induktivnim) definicijama.

Rec rekurzija potice od latinske reci recurrere koja znaci vratiti se od[recurrence = koji se vraca]

Dedekind je u svom radu iz 1888. godine. koristio termin definisanindukcijom, dok je Hilbert [1904] upotrebio rec rekurrent(e), a kasnije[1923] i rec Rekursion.

(Teorija algoritama) 22.02.2013. 28 / 60

Page 32: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Euklidov algoritam

Euklidov algoritam

1 NZD(m,0) = m, m > 02 NZD(m,n) = NZD(n,m mod n), m > 0,n > 0

Jednakostima (1) i (2) potpuno je opisan postupak izracunavanjanajveceg zajednickog delioca dva broja.

Jednakostima (1) i (2) korektno je definisana funkcijaNZD :N×N→N

Definicije funkcija ovakvog tipa nazivaju se rekurzivnim (rekurentnim,induktivnim) definicijama.

Rec rekurzija potice od latinske reci recurrere koja znaci vratiti se od[recurrence = koji se vraca]

Dedekind je u svom radu iz 1888. godine. koristio termin definisanindukcijom, dok je Hilbert [1904] upotrebio rec rekurrent(e), a kasnije[1923] i rec Rekursion.

(Teorija algoritama) 22.02.2013. 28 / 60

Page 33: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 29 / 60

Page 34: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Aritmetika

Zadatak sa kraja XIX veka. “Srediti aritmetiku kao sto jeEuklid sredio geometriju.”

Dedekind je 1888. godine objavio spisak aksioma aritmetike medjukojima su posebno istaknuti:• matematicka indukcija i• induktivne (rekurzivne) definicije aritmetickih funkcija.

Peano je usvojio Dedekindove aksiome i formirao prvi formalniaksiomatski sistem za aritmetiku. Peanove aksiome su objavljene1889. godine.

(Teorija algoritama) 22.02.2013. 30 / 60

Page 35: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Peanova (a ne Dedekindova?!) aritmetika

(N,0,s) – struktura prirodnih brojeva0 ∈N, s :N→N,

0,1 = s(0),2 = s(s(0)),3 = s(s(s(0))),4 = s(s(s(s(0)))),5 = s(s(s(s(s(0))))) . . .

Intuitivno, polazeci od elementa 0, funkcija s generise prirodne brojeve

P1 s(n) 6= 0, za svako n iz N[0 nije sledbenik nijednog prirodnog broja; s nije na-funkcija]

P2 Ako je s(m) = s(n), onda je m = n, za sve m,n iz N[s je 1-1-funkcija]

P3 Matematicka indukcija Ako je S ⊆N takav da je

BI 0 ∈ S ,IK iz n ∈ S , sledi da s(n) ∈ S , za svako n iz N,

onda je S =N[N je najmanji (u smislu inkluzije) induktivni skup]

(Teorija algoritama) 22.02.2013. 31 / 60

Page 36: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Teoreme rekurzije

Najjednostavnija forma teoreme rekurzije

Za svaki skup X , svaki element x iz X i svaku funkciju g : X → X ,postoji jedinstvena funkcija h :N→ X takva da je

(Rec)

{h(0) = x ,h(s(n)) = g(h(n)).

(Teorija algoritama) 22.02.2013. 32 / 60

Page 37: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Nekoliko napomena

Napomena 1. Svaka funkcija h :N→ X naziva se i niz u skupu X . Tadaje uobicajeno da se umesto h(n) pise hn. Pri ovakvoj notaciji jednakosti(Rec) postaju:

(Rec)

{h0 = x ,hn+1 = g(hn).

Napomena 2. Pod nizovima skupa X cesto se podrazumevaju i funkcije sadomenom N+ = {1,2, . . .} i kodomenom X . U tom slucaju rekurzivnodefinisani nizovi se zadaju jednakostima:

(Rec)

{h1 = x ,hn+1 = g(hn).

(Teorija algoritama) 22.02.2013. 33 / 60

Page 38: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Nekoliko napomena

Napomena 3. U matematici se cesto rekurzivno definisani nizovi brojevazadaju “neformalno” – upotrebom tackica. Na primer,• Sn – zbir prvih n prirodnih brojeva: Sn = 1 + 2 + · · ·+ n. Korektnadefinicija niza je naravno rekurzivna:

(Rec)

{S1 = 1,Sn+1 = Sn + (n + 1).

• n! – proizvod prvih n prirodnih brojeva: n! = 1 ·2 · · ·n.

(Rec)

{1! = 1,(n + 1)! = n! · (n + 1).

• cn =

√2 +

√2 + · · ·+

√2︸ ︷︷ ︸

n korena

; (Rec)

{c1 =

√2,

cn+1 =√

2 + cn.

(Teorija algoritama) 22.02.2013. 34 / 60

Page 39: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Nekoliko napomena

Napomena 4. Dokazati da je zbir prvih n prirodnih brojeva jednak n(n+1)2 .

Zbir prvih n brojeva:Sn = 1 + 2 + · · ·+ n

BI 1 = 1(1+1)2

IK

IH 1 + 2 + · · ·+ n = n(n+1)2

1 + 2 + · · ·+ n + (n + 1)

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

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

Zbir prvih n brojeva:

(Rec)

{S1 = 1,Sn+1 = Sn + (n + 1).

BI S1 = 1 = 1(1+1)2

IK

IH Sn = n(n+1)2

Sn+1 = Sn + (n + 1)

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

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

(Teorija algoritama) 22.02.2013. 35 / 60

Page 40: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Primeri rekurzivno definisanih funkcija

Za svaki skup X , svaki element x iz X i svaku funkciju g : X → X ,postoji jedinstvena funkcija h :N→ X takva da je

(Rec)

{h(0) = x ,h(s(n)) = g(h(n)).

Primer 2. Neka je X =N, x = 2 i g = s =N→N i h :N→N funkcijadefinisana jednakostima:

(Rec)

{h(0) = 2,h(s(n)) = s(h(n)).

1 Koliko je h(3)?h(3) = h(s(2)) = s(h(2)) = s(h(s(1))) = s(s(h(1))) = s(s(h(s(0)))) =s(s(s(h(0)))) = s(s(s(2))) = s(s(s(s(s(0))))) = 5

2 Koliko je h(14)?

(Teorija algoritama) 22.02.2013. 36 / 60

Page 41: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Primeri rekurzivno definisanih funkcija

Primer 2. - nastavak

Funkciju h cemo oznaciti sa 2+: h(n) = 2 + n.

(Rec)

{2 + 0 = 2,2 + s(n) = s(2 + n).

Analogno za svaki fiksirani prirodan broj m definisemo funkciju:m+ :N→N jednakostima:

(Rec)

{m + 0 = m,m + s(n) = s(m + n).

(Teorija algoritama) 22.02.2013. 37 / 60

Page 42: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Teoreme rekurzije

Teorema primitivne rekurzije

Za proizvoljne skupove X1, . . . ,Xk ,Y , i proizvoljne funkcijef : X1×·· ·×Xk → Y , g : X1×·· ·×Xk ×N×Y → Y , postoji jedinstvenafunkcija h : X1×·· ·×Xk ×N→ Y takva da je

(Rec)

{h(x1, . . . ,xk ,0) = f (x1, . . . ,xk),h(x1, . . . ,xk ,s(n)) = g(x1, . . . ,xk ,n,h(n,x1, . . . ,xk)).

Definicija

Za funkciju h definisanu jednakostima (Rec) kazemo da je dobijenaprimitivnom rekurzijom funkcija f i g , i pisemo h = Rec(f ,g).

(Teorija algoritama) 22.02.2013. 38 / 60

Page 43: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Sabiranje prirodnih brojeva

Primer 3.

U primeru 2 su definisane funkcije 0+,1+,2+,3+, . . . ,m+, . . . :N→NDa li dati niz funkcija odredjuje funkciju + :N×N→N

+(m,n) = m + n.

Prema definicijama iz primera 2 imamo da je

(Rec)

{+(m,0) = m,+(m,s(n)) = s(+(m,n)).

Dakle, funkcija + :N×N→N se dobija primitivnom rekurzijom funkcija:

i :N→N, i(x) = x , i

g :N×N×N→N, g(x ,k ,y) = s(y).

(Teorija algoritama) 22.02.2013. 39 / 60

Page 44: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Sabiranje prirodnih brojeva

Definicija i osobine sabiranja

(Rec)

{(Rec1) m + 0 = m,(Rec2) m + s(n) = s(m + n).

Lema 1 (∀n) 0 + n = n

Dokaz.

BI 0 + 0 = 0 prema (Rec1).

IK

IH 0 + n = n.0 + s(n) = s(0 + n) [prema (Rec2)]

= s(n) [prema [IH]] ♣

(Teorija algoritama) 22.02.2013. 40 / 60

Page 45: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Sabiranje prirodnih brojeva

Lema 2 (∀m,n) m + s(n) = s(m) + n

Dokaz.

Neka je m proizvoljan prirodan broj. Dokaz teoreme sprovodimoindukcijom po n.

BI m + s(0) = s(m + 0) [prema (Rec2)]= s(m) [prema (Rec1)]= s(m) + 0 [prema (Rec1)]

IK

IH m + s(n) = s(m) + n.m + s(s(n)) = s(m + s(n)) [prema (Rec2)]

= s(s(m) + n) [prema [IH]]= s(m) + s(n) [prema (Rec2)]. ♣

(Teorija algoritama) 22.02.2013. 41 / 60

Page 46: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Sabiranje prirodnih brojeva

Teorema (∀m,n) m + n = n + m

Dokaz.

Neka je m proizvoljan prirodan broj. Dokaz teoreme sprovodimoindukcijom po n.

BI m + 0 = m [prema (Rec1)]0 + m = m [prema Lemi 1: (∀n) 0 + n = n]

IK

IH m + n = n + m.m + s(n) = s(m + n) [prema (Rec2)]

= s(n + m) [prema [IH]]= n + s(m) [prema (Rec2)]= s(n) + m [prema Lemi 2: (∀m,n) m + s(n) = s(m) + n] ♣

Zadatak Dokazati (∀k ,m,n) (k + m) + n = k + (m + n).(Teorija algoritama) 22.02.2013. 42 / 60

Page 47: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Mnozenje prirodnih brojeva

· :N×N→N(Rec)

{m ·0 = 0,m · s(n) = (m ·n) + m.

Mnozenje · :N×N→N se dobija primitivnom rekurzijom funkcija:

0 :N→N, 0(x) = 0, i

g :N×N×N→N, g(x ,k ,y) = y + x .

Zadatak

(∀k ,m,n) (k ·m) ·n = k · (m ·n)

(∀k ,m,n) m ·n = n ·m(∀k ,m,n) k · (m + n) = k ·m + k ·n

(Teorija algoritama) 22.02.2013. 43 / 60

Page 48: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Uredjenje prirodnih brojeva

6⊆N×Nm 6 n ⇔ (∃k) m + k = n

Osobine

(∀n) n 6 n

(∀m,n) m 6 n∧n 6m⇒m = n

(∀k ,m,n) k 6m∧m 6 n⇒ k 6 n

(∀m,n) m 6 n∨n 6m

(∀k ,m,n) m 6 n⇔m + k 6 n + k

(∀k ,m,n) m 6 n⇒m ·k 6 n ·k(∀k ,m,n) 0 < k ∧m ·k 6 n ·k ⇒m 6 n

Princip najmanjeg elementa. Svaki neprazan podskup S od N imanajmanji element, tj. postoji n iz S takav da je n6 x , za svako x iz S .

(Teorija algoritama) 22.02.2013. 44 / 60

Page 49: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Potpuna matematicka indukcija

Princip potpune matematicke indukcije

Ako je S(n) bilo koje svojstvo prirodnih brojeva. Tada je

(∀n)((∀k < n)S(k)⇒ S(n))⇒ (∀n)S(n)

posledica Peanovih aksioma.

Princip potpune matematicke indukcije ekvivalentan je principu najmanjegelementa.

(∀n)((∀k < n)¬S(k)⇒¬S(n))⇒ (∀n)¬S(n)⇔¬(∀n)¬S(n)⇒¬(∀n)((∀k < n)¬S(k)⇒¬S(n))⇔ (∃n)S(n)⇒ (∃n)((∀k < n)¬S(k)∧S(n))

(Teorija algoritama) 22.02.2013. 45 / 60

Page 50: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Teorema koja povezuje +, ·, 6, . . .

Teorema o ostatku

Neka je n bilo koji prirodan broj veci od 0. Za svaki prirodan broj mpostoje jedinstveni brojevi q i r iz N, takvi da je

(∗) m = n ·q + r , 06 r < n.

Jedinstveno odredjeni brojevi q i r , za koje vazi (∗) nazivaju se redomkolicnik i ostatak pri deljenju broja m prirodnim brojem n.Funkcije κ :N+×N→N i ρ :N+×N→N definisemo sa

κ(n,m) = kolicnik pri deljenju broja m brojem n

iρ(n,m) = ostatak pri deljenju broja m brojem n.

Umesto κ(n,m) cesto se pise[m

n

]; a umesto ρ(n,m) se pise m mod n.

(Teorija algoritama) 22.02.2013. 46 / 60

Page 51: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Prosirenje funkcija κ i ρ ; Deljivost prirodnih brojeva

Funkcije κ i ρ prosirujemo na N×N jednakostima

κ(0,m) = 0, odnosno ρ(0,m) = m.

|⊂N×Nm | n ⇔ ρ(m,n) = 0.

Osobine

(∀n) 1 | n(∀n) n | n(∀m,n) m | n∧n |m⇒m = n

(∀k ,m,n) k |m∧m | n⇒ k | n...

(Teorija algoritama) 22.02.2013. 47 / 60

Page 52: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Prosti brojevi

Definicija

Prirodan broj p je prost ukoliko je veci od 1 i jedini brojevi kojima je deljivsu 1 i p. Prirodan broj veci od 1 je slozen ako nije prost.

P= {2,3,5,7,11,13,17,19,23,29,31,37,39,41, . . .}

Teorema

Svaki prirodan broj veci od 1 deljiv je bar jednim prostim brojem.

Teorema

Prostih brojeva ima beskonacno mnogo.

Dokaz. P. S. Neka je P= {p1, . . . ,pk}.Broj p1 · · ·pn + 1 veci je od 1, ali nije deljiv ni jednim prostim brojem.Kontradikcija! ♣

(Teorija algoritama) 22.02.2013. 48 / 60

Page 53: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Peanova aritmetika

Osnovna teorema aritmetike

Teorema o rastavljanju na proste cinioce

Ako je n prirodan broj veci od 1, onda postoje jedinstveni prosti brojevip1, p2, . . . , pk takvi da je p1 < p2 < · · ·< pk i jedinstveni prirodni brojevi`1, `2, . . . , `k veci od 0 takvi da je

n = p`11 p`2

2 · · ·p`kk .

(Teorija algoritama) 22.02.2013. 49 / 60

Page 54: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Pregled predavanja

1 O algoritmima

2 Neodlucivost u matematici

3 O predmetu Teorija algoritama

4 Euklidov algoritam

5 Peanova aritmetika

6 Indukcija i rekurzija u sirem kontekstu

(Teorija algoritama) 22.02.2013. 50 / 60

Page 55: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 1 – niz reci (stringova)

Princip rekurzije

Niz reci (stringova) nadalfabetom {a,b} definisan je sa:

(Rec)

{w0 = a,wn+1 = abwnba.

Odrediti w3.

w3 = abw2ba= ababw1baba= abababw0bababa= ababababababa.

Princip indukcije

Dokazati da za svako n rec wn

ima neparan broj slova.

BI |w0|= |a|= 1

IK

IH |wn|= 2k + 1|wn+1|= |abwnba|

= |wn|+ 4= 2k + 5

Zadatak. Dokazati da je za svakon rec wn palindrom.

(Teorija algoritama) 22.02.2013. 51 / 60

Page 56: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 2 – iskazne formule

Iskazne formule su neke od reci nad alfabetom

A = {¬,∧,∨,⇒,),(}∪{>,⊥}∪{pn | n ∈N}

Definicija 1.1 Simboli >, ⊥ i pn, n ∈N su iskazne formule.2 Ako je α iskazna formula, onda je i (¬α) iskazna formula.3 Ako su α i β iskazne formule, onda su i (α ∧β ), (α ∨β ), (α ⇒ β )

iskazne formule.4 Iskazne formule su reci nad A koje se mogu dobiti samo primenom

prethodna tri pravila.

Definicija 1′. Skup iskaznih formula For je najmanji skup reci nadalfabetom A takav da

1 >,⊥ ∈ For i {pn | n ∈N} ⊆ For.2 Ako α ∈ For, onda (¬α) ∈ For.3 Ako α,β ∈ For, onda (α ∧β ),(α ∨β ),(α ⇒ β ) ∈ For.

(Teorija algoritama) 22.02.2013. 52 / 60

Page 57: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 2 – iskazne formule

Definicija 1′′.

1 For(0) = {>,⊥}∪{pn | n ∈N}2 For(n + 1)

= {(¬α) | α ∈ For(n)}∪{(α ∗β ) | α,β ∈ For(n),∗ ∈ {∧,∨,⇒}}3 For =

⋃n∈NFor(n)

Definicija 1′′′.

For ::= {>,⊥}∪{pn | n ∈N} | (¬For) | (For∧For) | (For∨For) | (For⇒ For)

Znak “::=” citamo moze biti oblika, a znak “|” kao ili.

(Teorija algoritama) 22.02.2013. 53 / 60

Page 58: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 2 – iskazne formule

var(α) =“skup iskaznih slova koja se pojavljuju u α”

var : For→P({pn | n ∈N})P(X ) – skup svih podskupova od X ; partitivni skup od X

var(>) = var(⊥) = /0, var(pn) = {pn}var((¬α)) = var(α)var((α ∗β )) = var(α)∪var(β )

var(((p1∧⊥)⇒ p2)) = var((p1∧⊥))∪var(p2)= var(p1)∪var(⊥)∪var(p2) = {p1}∪ /0∪{p2}= {p1,p2}.

Pot(α) =“skup potformula formule α”

Pot : For→P(For)

Pot(>) = {>}, Pot(⊥) = {⊥}, Pot(pn) = {pn}Pot((¬α)) = Pot(α)∪{(¬α)}Pot((α ∗β )) = Pot(α)∪Pot(β )∪{(α ∗β )}

(Teorija algoritama) 22.02.2013. 54 / 60

Page 59: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 2 – iskazne formule

Data je valuacija iskaznih slova v : {pn | n ∈N}→ {true, false}.v : For→{true, false}

v(>) = true, v(⊥) = false, v(pn) = v(pn)

v((¬α)) =∼ v(α) v((α ∧β )) = v(α)� v(β )

x ∼ x

true falsefalse true

� true falsetrue true falsefalse false false

v((α ∨β )) = v(α)⊕ v(β ) v((α ⇒ β )) = v(α) v(β )

⊕ true falsetrue true truefalse true false

true falsetrue true falsefalse true true

(Teorija algoritama) 22.02.2013. 55 / 60

Page 60: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 3 – aritmetika

Var = {x ,y ,z ,x1, . . .} – prebrojiv skup promenljivih

Aexp – aritmeticki izrazi

Aexp ::=Z | Var | Aexp + Aexp | Aexp−Aexp | Aexp ·Aexp

Bexp – bulovski izrazi (formule)

Bexp ::= {>,⊥} | Aexp = Aexp | Aexp6 Aexp | ¬Bexp | Bexp∧Bexp

Com – programi

Com ::= stop | Var := Aexp | Com;Com | if Bexp then Com else Com|while Bexp do Com

(Teorija algoritama) 22.02.2013. 56 / 60

Page 61: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 3 – aritmetika

σ : Var→Z – valuacija promenljivih

Izracunavanje vrednosti aritmetickih izraza za datu valuaciju

n ∈Z: 〈n,σ〉 → n

v ∈ Var: 〈v ,σ〉 → σ(v)

〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′+ a′′,σ〉 → n, n = n′+ n′′

〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′−a′′,σ〉 → n, n = n′−n′′

〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′ ·a′′,σ〉 → n, n = n′ ·n′′

(Teorija algoritama) 22.02.2013. 57 / 60

Page 62: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 3 – aritmetika

σ : Var→Z – valuacija promenljivih

Izracunavanje vrednosti bulovskih izraza za datu valuaciju

〈>,σ〉 → true, 〈⊥,σ〉 → false〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′ = a′′,σ〉 → true, ako je n′ = n′′

〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′ = a′′,σ〉 → false, ako je n′ 6= n′′

〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′ 6 a′′,σ〉 → true, ako je n′ 6 n′′

〈a′,σ〉 → n′ 〈a′′,σ〉 → n′′

〈a′ 6 a′′,σ〉 → false, ako je n′ > n′′

〈b,σ〉 → true〈¬b,σ〉 → false

,〈b,σ〉 → false〈¬b,σ〉 → true

,

〈b′,σ〉 → true 〈b′′,σ〉 → true〈b′∧b′′,σ〉 → true

,〈b′,σ〉 → true 〈b′′,σ〉 → false

〈b′∧b′′,σ〉 → false, · · ·

(Teorija algoritama) 22.02.2013. 58 / 60

Page 63: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 3 – aritmetika

Ako je n ∈Z i v ∈ Var, onda je σ [n/v ] : Var→Z valuacija data sa:

σ [n/v ](u) =

{n ako je u promenljiva v ,

σ(u) inace .

Izvrsavanje komandi za datu valuaciju promenljivih

〈stop,σ〉 → σ ,〈a,σ〉 → n

〈v := a,σ〉 → σ [n/v ], v ∈ Var

〈c ′,σ〉 → σ ′ 〈c ′′,σ ′〉 → σ ′′

〈c ′;c ′′,σ〉 → σ ′′

〈b,σ〉 → true 〈c ′,σ〉 → σ ′

〈if b then c ′ else c ′′,σ〉 → σ ′,〈b,σ〉 → false 〈c ′′,σ〉 → σ ′

〈if b then c ′ else c ′′,σ〉 → σ ′

〈b,σ〉 → false〈while b do c ,σ〉 → σ

〈b,σ〉 → true 〈c ,σ〉 → σ ′′ 〈while b do c,σ ′′〉 → σ ′

〈while b do c ,σ〉 → σ ′

(Teorija algoritama) 22.02.2013. 59 / 60

Page 64: Princip rekurzije i matemati cka indukcija - matf.bg.ac.rs · PDF fileRe c algoritam dolazi od latinizovanog imena arapskog matemati cara Abu D zafar Muhamed Ibn Musa Al Horezmija

Indukcija i rekurzija u sirem kontekstu

Primer 3 – aritmetika

EUKLID = if ¬(0> X ∧0> Y )then stopelse while ¬X = Y do

if X 6 Ythen X := X −Yelse Y := Y −X

(Teorija algoritama) 22.02.2013. 60 / 60