teorija algoritama, jezika i · pdf filehijararhija chomskog koncept generativne gramatike...

40

Upload: ngocong

Post on 10-Feb-2018

229 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista
Page 2: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

AlgoritamAlgoritamAlgoritam

Algoritam (efektivni postupak) predstavlja jedan od najznacajnijih ma-

tematickih pojmova, koji je u matematici prisutan jos od samog njenog

nastanka.

Naziv algoritam potice od Algorithmi – latinskog zapisa arapskog mate-

maticara al-Horezmija, preko cijih dela je do Evrope stigao indijski dese-

ticni pozicioni sistem i racunanje u ovom sistemu.

Prvobitno se ovaj naziv koristio upravo za oznacavanje postupaka za

racunanje u tom sistemu, a kasnije je dobio danasnji opstiji smisao.

Zanimljivo je da je kod el-Horezmija operacija prenosenja clanova sa

jedne na drugu stranu jednakosti, uz promenu znaka, nazivana ”al-

dzebr”, odakle se latinskim zapisom doslo do naziva algebra.

Teorija algoritama,jezika i automata – 2 – Uvodni deoTeorija algoritama,jezika i automata – 2 – Uvodni deoTeorija algoritama,jezika i automata – 2 – Uvodni deo

Page 3: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

AlgoritamAlgoritamAlgoritam

Vec vekovima se pojam algoritma u matematici koristi u svom nefo-

rmalnom, intuitivnom smislu.

Mnogi matematicari smatraju da ovaj pojam spada u grupu primitivnih

matematickih pojmova i da ne postoje jednostavniji, intuitivno jasniji

matematicki pojmovi preko kojih bi se pojam algoritma definisao.

Prvi pokusaji preciznog matematickog definisanja pojma algoritma ve-

zani su za problem odlucivosti matematickih teorija, koji je pocetkom

dvadesetog veka bio veoma aktuelan u matematickoj logici i filozofiji

matematike.

Teorija algoritama,jezika i automata – 3 – Uvodni deoTeorija algoritama,jezika i automata – 3 – Uvodni deoTeorija algoritama,jezika i automata – 3 – Uvodni deo

Page 4: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

AlgoritamAlgoritamAlgoritam

Prve formalizacije pojma algoritma javljaju se tridesetih godina ovog

veka. Ti prvi tipovi algoritama bili su:

➠ rekurzivne funkcije (Kleene [1936,1943]);

➠ Postovi sistemi (Post [1936,1943]);

➠ Churchov λ-racun (Church [1941]);

➠ Turingove masine (A.Turing [1936]);

➠ normalni algoritmi Markova (Markov [1954]);

➠ neogranicene registarske masine (Shepherdson and Sturgis [1963]),

itd.

Teorija algoritama,jezika i automata – 4 – Uvodni deoTeorija algoritama,jezika i automata – 4 – Uvodni deoTeorija algoritama,jezika i automata – 4 – Uvodni deo

Page 5: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Teorija izra cunljivostiTeorija izra cunljivostiTeorija izra cunljivosti

Navedeni tipovi algoritama prvobitno su razmatrani u vezi sa izracu-

nljivoscu aritmetickih funkcija, dok su kasnije poceli da se razmatraju i

u vezi izracunljivosti funkcija na recima (stringovima).

Tako je razvijena teorija izracunljivosti, disciplina racunarskih nauka

koja se bavi

➠ Modelima i oblicima izracunavanja, posebno izracunavanjima uz

pomoc apstraktnih matematickih masina,

➠ Analizom algoritama i problemima kompleksnosti algoritama,

➠ Formalnim gramatikama i formalnim jezicima,

i drugim pitanjima.

Teorija algoritama,jezika i automata – 5 – Uvodni deoTeorija algoritama,jezika i automata – 5 – Uvodni deoTeorija algoritama,jezika i automata – 5 – Uvodni deo

Page 6: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Hijararhija ChomskogHijararhija ChomskogHijararhija Chomskog

Koncept generativne gramatike prvi put se pojavio 1950-ih godina.

Uveo ga je americki lingvist, filozof i humanista Noam Comski (Noam

Chomsky, 1928- ), koji je na osnovu formalnih svojstava gramatika koje

ih generisu klasifikovao formalne jezike u sledece klase:

➠ regularni jezici;

➠ konteksno-nezavisni jezici;

➠ konteksno-zavisni jezici;

➠ jezici generisani proizvoljnim gramatikama.

Teorija algoritama,jezika i automata – 6 – Uvodni deoTeorija algoritama,jezika i automata – 6 – Uvodni deoTeorija algoritama,jezika i automata – 6 – Uvodni deo

Page 7: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Kona cni automatiKona cni automatiKona cni automati

Regularni jezici cine najuzu od navedenih klasa formalnih jezika.

Oni se mogu predstaviti najjednostavnijom vrstom apstraktnih masina

– konacnim automatima.

Konacni automati su se prvi put pojavili u radu McCullocha i Pittsa

[1943], da bi se 1950-ih godina intenzivno izucavali od strane niza

autora: D. A. Huffman [1954], G. H. Mealy [1955], E. F. Moore [1956],

M. O. Rabin and D. Scott [1959] i drugi.

Konacni automati su najpre uvedeni da bi se njima modelirale funkcije

mozga, ali su se kasnije pokazali veoma efikasnim i u raznim drugim

primenama.

Teorija algoritama,jezika i automata – 7 – Uvodni deoTeorija algoritama,jezika i automata – 7 – Uvodni deoTeorija algoritama,jezika i automata – 7 – Uvodni deo

Page 8: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Kona cni automatiKona cni automatiKona cni automati

Konacni automati predstavljaju koristan model za veoma vazne tipove

hardvera i softvera, kao sto su:

➠ Softver za dizajniranje i proveru ponasanja digitalnih kola;

➠ Leksicki analizatori kod kompajlera, tj. delovi kompajlera koji vrse

analizu i podelu ulaznog teksta na logicke jedinice;

➠ Softver za skeniranje velikih porcija teksta, kao sto su kolekcije Web

strana, radi pronalazenja pojavljivanja izvesnih reci, fraza, i drugih

sablona;

➠ Softver za verifikovanje sistema svih tipova koji imaju konacan broj

razlicitih stanja, kao sto su komunikacioni protokoli ili protokoli za

bezbednu razmenu informacija, itd.

Teorija algoritama,jezika i automata – 8 – Uvodni deoTeorija algoritama,jezika i automata – 8 – Uvodni deoTeorija algoritama,jezika i automata – 8 – Uvodni deo

Page 9: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati sa izlazomAutomati sa izlazomAutomati sa izlazom

Rad automata sastoji se iz niza uzastopnih prelaza iz stanja u stanje,

pod dejstvom niza uzastopnih ulaznih signala.

Medutim, prirodno se namece pitanje:

Sta je rezultat tog rada?

Automati su masine koje sluze za procesiranje informacija.

Informacije se obicno predstavljaju nizovima simbola (recima) nad nekim

alfabetom, i tipicna masina za procesiranje informacija to radi tako

sto niz ulaznih simbola (ulaznu rec) transformise u niz izlaznih signala

(izlaznu rec).

Takav vid procesiranja informacija vrse takozvani automati sa izlazom

ili transduktori.

Teorija algoritama,jezika i automata – 9 – Uvodni deoTeorija algoritama,jezika i automata – 9 – Uvodni deoTeorija algoritama,jezika i automata – 9 – Uvodni deo

Page 10: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati sa izlazomAutomati sa izlazomAutomati sa izlazom

Automati sa izlazom su apstraktne matematicke masine koje rade u

diskretnoj vremenskoj skali, i koje tokom tog rada, pod uticajem ulaznih

signala, menjaju svoja unutrasnja stanja i emituju odgovarajuce izlazne

signale.

Kakve se transformacije mogu realizovati pomocu automata sa izla-

zom?

Odgovor na ovo pitanje dali su, nezavisno jedan od drugog, Raney

[1958] i Glushkov [1961], koji su pokazali da su to transformacije ulaznih

u izlazne reci zadate takozvanim automatovnim preslikavanjima.

Pri tome je Glushkov dokazao da za svaku takvu transformaciju postoji

automat sa minimalnim brojem stanja koji je realizuje.

Teorija algoritama,jezika i automata – 10 – Uvodni deoTeorija algoritama,jezika i automata – 10 – Uvodni deoTeorija algoritama,jezika i automata – 10 – Uvodni deo

Page 11: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati sa izlazomAutomati sa izlazomAutomati sa izlazom

Ovi rezultati inicirali su intenzivno izucavanje uslova pod kojima su dva

automata ekvivalentna.

Pod ekvivalentnim automatima podrazumevamo automate koji rea-

lizuju iste transformacije ulaznih u izlazne reci.

Pod uticajem ovih rezultata je poceo i rad na pronalazenju postupaka

za minimizaciju automata, tj. za nalazenje automata sa minimalnim

brojem stanja ekvivalentnog datom automatu.

U ovom delu kursa predstavicemo algoritam za minimizaciju automata

koji su dali Aufenkamp i Hohn [1957].

Teorija algoritama,jezika i automata – 11 – Uvodni deoTeorija algoritama,jezika i automata – 11 – Uvodni deoTeorija algoritama,jezika i automata – 11 – Uvodni deo

Page 12: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati sa izlazomAutomati sa izlazomAutomati sa izlazom

Dokazacemo poznatu teoremu Gilla i Bloha [1960] koja kaze da je

svaki automat Mealyevog tipa ekvivalentan nekom automatu Moore-

ovog tipa.

Na kraju price o automatima sa izlazom bice prikazano i nekoliko

metoda za kompoziciju automata, odnosno za konstrukciju automata

polazeci od unapred datih jednostavnijih automata.

Teorija algoritama,jezika i automata – 12 – Uvodni deoTeorija algoritama,jezika i automata – 12 – Uvodni deoTeorija algoritama,jezika i automata – 12 – Uvodni deo

Page 13: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati bez izlazaAutomati bez izlazaAutomati bez izlaza

Automati bez izlaza se mogu zamisliti kao automati koji imaju izvesnu

vrstu izlaza, koja se realizuje pomocu samo dva izlazna signala: ”da” i

”ne”.

Naime, moze se uzeti da svaka ulazna rec dovodi do toga da automat

emituje jedan od ta dva izlazna signala.

Ako ona dovodi do emitovanja signala ”da”, onda kazemo da automat

prepoznaje ili da prihvata tu rec.

U suprotnom, ukoliko dovodi do emitovanja signala ”ne”, onda kazemo

da automat ne prepoznaje ili da odbacuje tu rec.

Medutim, i ovde se postavlja pitanje: Kako se ovi izlazi predstavljaju

u strukturi automata kakvu smo zadali njihovom definicijom?

Videcemo da se to moze uciniti pomocu posebne vrste stanja, koje nazi-

vamo zavrsnim stanjima automata.

Teorija algoritama,jezika i automata – 13 – Uvodni deoTeorija algoritama,jezika i automata – 13 – Uvodni deoTeorija algoritama,jezika i automata – 13 – Uvodni deo

Page 14: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati bez izlazaAutomati bez izlazaAutomati bez izlaza

Jedna od najznacajnijih karakteristika automata bez izlaza je to sto

postoje dva dobro poznata prirodna nacina da se ti automati razmatraju

kao algebarske strukture.

Ako na nizove ulaznih simbola automata gledamo kao elemente slo-

bodnog monoida generisanog alfabetom ulaznih simbola, tada je pri-

rodno tretirati automat kao monoid transformacija skupa stanja au-

tomata.

Takav pristup izucavanju automata pokazao se veoma uspesnim.

Polugrupe i monoidi transformacija pridruzeni automatima, koje nazi-

vamo polugrupama i monoidima prelaza automata, predstavljaju po-

laznu tacku u teoriji Eilenberga [1976] koja daje klasifikaciju regu-

larnih jezika baziranu na sintaksickim monoidima i pseudo-varijetetima

monoida.

Teorija algoritama,jezika i automata – 14 – Uvodni deoTeorija algoritama,jezika i automata – 14 – Uvodni deoTeorija algoritama,jezika i automata – 14 – Uvodni deo

Page 15: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati bez izlazaAutomati bez izlazaAutomati bez izlaza

Ovakva interpretacija je osnova cuvene teorije Khrona i Rhodesa [1962,

1965] o kaskadnim razlaganjima automata.

Takode je prirodno tretirati automate bez izlaza i kao algebre u kojima

se svaki ulazni simbol realizuje kao unarna operacija.

Taj pristup, koji su Buchi i Wright dali jos pedesetih godina, povezao je

automate sa univerzalnom algebrom i stvorio uslove da se u njihovom

izucavanju koriste brojni koncepti, ideje i metodi univerzalne algebre.

U ovom delu predavanja pokazacemo da postoji obostrano jednoznacna

veza izmedu povezanih inicijalnih automata sa ulaznim alfabetom X i

desnih kongruencija na slobodnom monoidu X∗, koju su prvi uocili

Nerode [1958] i Myhill [1957], a razmatracemo i osnovne osobine polu-

grupa prelaza automata.

Teorija algoritama,jezika i automata – 15 – Uvodni deoTeorija algoritama,jezika i automata – 15 – Uvodni deoTeorija algoritama,jezika i automata – 15 – Uvodni deo

Page 16: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati bez izlazaAutomati bez izlazaAutomati bez izlaza

Glavni zadatak automata bez izlaza svakako je raspoznavanje jezika, a

problem opisivanja jezika koji se mogu raspoznati konacnim automa-

tima, takozvanih raspoznatljivih jezika, jedan je od najvaznijih u Teoriji

automata.

Kada se bavimo dizajniranjem automata radi njihovih prakticnih pri-

mena, srecemo se sa dva osnovna problema:

➠ Da li za dati jezik postoji konacan automat koji ga raspoznaje?

➠ Kako konstruisati automat sa sto je moguce manje stanja koji ras-

poznaje dati jezik?

Prvi problem je bitan jer u prakticnim primenama automata ucestvuju

samo konacni automati.

Teorija algoritama,jezika i automata – 16 – Uvodni deoTeorija algoritama,jezika i automata – 16 – Uvodni deoTeorija algoritama,jezika i automata – 16 – Uvodni deo

Page 17: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Automati bez izlazaAutomati bez izlazaAutomati bez izlaza

Beskonacni automati imaju samo teoretski znacaj, i izucavaju se iz

metodoloskih razloga, jer je lakse raditi u teoriji u kojoj nismo sputani

uslovom konacnosti skupa stanja automata.

Drugi problem je bitan iz razloga sto veci broj stanja automata znaci

➠ veci broj hardverskih komponenti, kada se radi o primeni automata

u dizajniranju hardvera,

➠ glomaznije i sporije programe, kada se radi o primeni automata u

dizajniranju softvera.

Mi cemo ovde dokazati da medu svim automatima koji raspoznaju dati

jezik postoji automat najmanje kardinalnosti, odnosno, automat sa na-

jmanjim brojem stanja, ako se radi o konacnom automatu i dacemo

algoritme za konstrukciju minimalnog automata jezika i minimizaciju

automata.

Teorija algoritama,jezika i automata – 17 – Uvodni deoTeorija algoritama,jezika i automata – 17 – Uvodni deoTeorija algoritama,jezika i automata – 17 – Uvodni deo

Page 18: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Regularni izraziRegularni izraziRegularni izrazi

Jos jedan nacin predstavljanja regularnih jezika, pored konacnih au-

tomata je njihovo predstavljanje regularnim izrazima.

Regularni izrazi kao i dokaz njihove ekvivalentnosti sa konacnim au-

tomatima prvi put se srecu u radu Kleenea [1956].

Ipak, regularni izrazi daju nesto sto automati ne mogu: obavestenje o

nacinu procesiranja reci koje treba da budu prihvacene.

Zato se regularni izrazi koriste kao ulazni jezici mnogih sistema koji vrse

procesiranje informacija.

Teorija algoritama,jezika i automata – 18 – Uvodni deoTeorija algoritama,jezika i automata – 18 – Uvodni deoTeorija algoritama,jezika i automata – 18 – Uvodni deo

Page 19: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Regularni izraziRegularni izraziRegularni izrazi

Regularni izrazi imaju mnoge primene od kojih su najvaznije:

➠ Komande pretrazivanja kao sto je UNIX grep ili ekvivalentne ko-

mande kod Web browsera ili sistema za formatiranje teksta (WinEdt).

Ovi sistemi koriste regularne izraze za opis sablona koji treba da

bude pronaden u fajlu.

➠ Leksicki-analizator (Lex ili Flex) je deo kompajlera koji razbija izvorni

program na logicke jedinice (tzv. tokene).

Regularni izrazi opisuju formu tokena koju prihvata leksicki-analizator

kompajlera.

Teorija algoritama,jezika i automata – 19 – Uvodni deoTeorija algoritama,jezika i automata – 19 – Uvodni deoTeorija algoritama,jezika i automata – 19 – Uvodni deo

Page 20: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Regularni izraziRegularni izraziRegularni izrazi

U delu ovog kursa koji se bavi regularnim jezicima govoricemo o nji-

hovom raspoznavanju konacnim deterministickim i nedeterministickim

automatima, kao i o njihovom predstavljanju regularnim izrazima.

Takode, dokazacemo da za svaki regularan jezik postoji minimalan

konacan deterministicki automat koji ga raspoznaje i koji je jedinstven

do na izomorfizam.

U slucaju kada je regularan jezik zadat konacnim deterministickim au-

tomatom dacemo i algoritam za njegovu minimizaciju, tj. za nalazenje

minimalnog automata koji raspoznaje isti jezik.

Teorija algoritama,jezika i automata – 20 – Uvodni deoTeorija algoritama,jezika i automata – 20 – Uvodni deoTeorija algoritama,jezika i automata – 20 – Uvodni deo

Page 21: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Konteksno-nezavisni jeziciKonteksno-nezavisni jeziciKonteksno-nezavisni jezici

U cilju formalizacije gramatickih svojstava prirodnih jezika nastali su

konteksno-nezavisni jezici.

Konteksno-nezavisni jezici su se vrlo brzo pokazali veoma pogodnim za

formalno opisivanje sintakse programskih jezika. Zato su nasli znacajne

primene u definisanju programskih jezika (Fortran je definisao Backus

[1959], a Algol Naur [1960]), kao i u sintaksnoj analizi jezika i ko-

nstrukciji kompajlera.

Razvoj XML-a (Extensible Markup Language) u mnogome je olaksao

elektronsku trgovinu, jer je omogucio ucesnicima da lakse naprave ko-

nvencije o visini cena, dokumenta sa opisom proizvoda i mnoga druga

dokumenta.

Teorija algoritama,jezika i automata – 21 – Uvodni deoTeorija algoritama,jezika i automata – 21 – Uvodni deoTeorija algoritama,jezika i automata – 21 – Uvodni deo

Page 22: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Konteksno-nezavisni jeziciKonteksno-nezavisni jeziciKonteksno-nezavisni jezici

Osnovni deo XML-a je Definicija tipa dokumenta u cijoj je osnovi

konteksno-nezavisna gramatika koja opisuje dozvoljene komande (ta-

gove) i nacine pisanja teksta u okviru tih komandi, sto u sustini nema

veze sa formatiranjem teksta, vec sa njegovim znacenjem.

Siroka primena konteksno-nezavisnih jezika dovela je do razvoja teorije

konteksno-nezavisnih jezika kao jedne od najznacajnijih oblasti Teorije

formalnih jezika.

Teorija algoritama,jezika i automata – 22 – Uvodni deoTeorija algoritama,jezika i automata – 22 – Uvodni deoTeorija algoritama,jezika i automata – 22 – Uvodni deo

Page 23: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Konteksno-nezavisni jeziciKonteksno-nezavisni jeziciKonteksno-nezavisni jezici

Konteksno-nezavisni jezici se mogu definisati ne vise razlicitih, medu-

sobno ekvivalentnih nacina:

➠ kao jezici koji se mogu generisati konteksno-nezavisnim gramatikama;

➠ kao komponenete najmanjeg resenja sistema polinomnih jednacina,

sto su nezavisno jedni od drugih pokazali Chomsky i Schutzenberger

[1963] i Ginsburg i Rice [1962].

➠ potisnim automatima ciji je matematicki model uveden u radu Schu-

tzenbergera [1963], a ciju su ekvivalentnost sa konceptom gener-

isanja jezika konteksno-nezavisnom gramatikom u svojim radovima

dokazali Chomsky [1962] i Evey [1963].

Teorija algoritama,jezika i automata – 23 – Uvodni deoTeorija algoritama,jezika i automata – 23 – Uvodni deoTeorija algoritama,jezika i automata – 23 – Uvodni deo

Page 24: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Konteksno-nezavisni jeziciKonteksno-nezavisni jeziciKonteksno-nezavisni jezici

Tokom ovog kursa pokazacemo da je moguce izvrsiti redukciju konteksno-

nezavisne gramatike do takozvane ciste gramatike i gramatike u Nor-

malnoj formi Chomsky koje prepoznaju isti jezik.

Potom cemo uvesti pojam potisnog automata, tj. automata sa po-

tiskujucom memorijom (stekom), pojmove raspoznavanja jezika skupom

stanja potisnog automata i raspoznavanja jezika praznim stekom i po-

kazacemo da su ova dva nacina raspoznavanja ekvivalentna.

Konacno, dokazacemo da je model generisanja jezika potisnim automa-

tima ekvivalentan generisanju konteksno-nezavisnim gramatikama, odno-

sno da su jezici koji se mogu raspoznati potisnim automatima tacno

konteksno-nezavisni jezici.

Teorija algoritama,jezika i automata – 24 – Uvodni deoTeorija algoritama,jezika i automata – 24 – Uvodni deoTeorija algoritama,jezika i automata – 24 – Uvodni deo

Page 25: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Jezici tipova 0 i 1Jezici tipova 0 i 1Jezici tipova 0 i 1

Konteksno-zavisni jezici drugacije se nazivaju jezicima tipa 1, dok su

jezici generisani proizvoljnim gramatikama jezici tipa 0.

Prirodno se namece pitanje:

Da li se navedeni tipovi jezika mogu okarakterisati pomocu nekih mo-

dela apstraktnih matematickih masina koje raspoznaju te jezike?

Odgovor na ovo pitanje je pozitivan.

Za raspoznavanje jezika tipa 0 koristi se apstraktna masina koju je,

jos pre pojave elektronskih racunara, 1930-ih godina, definisao britan-

ski matematicar-informaticar Alan Tjuring (Alan Turing, 1912-1954), i

koja, u pogledu onoga sto moze izracunati, poseduje sve mogucnosti

danasnjih racunara.

Teorija algoritama,jezika i automata – 25 – Uvodni deoTeorija algoritama,jezika i automata – 25 – Uvodni deoTeorija algoritama,jezika i automata – 25 – Uvodni deo

Page 26: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Jezici tipova 0 i 1Jezici tipova 0 i 1Jezici tipova 0 i 1

U njegovu cast, tu masinu danas nazivamo Tjuringova masina.

Tjuringov cilj bio je da precizno opise granice izmedu onoga sto racunske

masine mogu i onoga sto ne mogu, odnosno, da odgovori na pitanja

➠ Koji problemi su algoritamski resivi?

➠ Koji problemi su algoritamski neresivi?

Zakljucci do kojih je tom prilikom Tjuring dosao primenljivi su ne samo

na apstraktne Tjuringove masine, vec i na danasnje realne racunare.

Tokom ovog kursa uvescemo pojmove deterministicke i nedetermin-

isticke Tjuringove masine i raspoznavanja jezika tim masinama. Pri

tome cemo pokazati da oba ova tipa Turingovih masina raspoznaju

istu klasu jezika.

Teorija algoritama,jezika i automata – 26 – Uvodni deoTeorija algoritama,jezika i automata – 26 – Uvodni deoTeorija algoritama,jezika i automata – 26 – Uvodni deo

Page 27: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Jezici tipova 0 i 1Jezici tipova 0 i 1Jezici tipova 0 i 1

Sa druge strane, jezici tipa 1, odnosno konteksno-zavisni jezici, raspo-

znaju se specijalnim tipom Turingovih masina uvedenim u radu Myhilla

[1960], koje se nazivaju linearno ogranicenim automatima.

Landweber [1963] i Kurod [1964] su dokazali da klasa jezika koji se

mogu raspoznati nedeterministickim linearno ogranicenim automatima

jeste upravo klasa konteksno-zavisnih jezika.

Smatrajuci da Turingova masina ispunjava tacno one uslove za koje se

smatra da ih intuitivni pojam algoritma treba imati, Church [1936] je

izneo tezu da se svaki algoritam moze realizovati nekom Turingovom

masinom.

Ova teza poznata je pod nazivom Churchova teza i do danas nije

opovrgnuta i opste je prihvacena.

Teorija algoritama,jezika i automata – 27 – Uvodni deoTeorija algoritama,jezika i automata – 27 – Uvodni deoTeorija algoritama,jezika i automata – 27 – Uvodni deo

Page 28: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Izracunljivost i odlu civostIzracunljivost i odlu civostIzracunljivost i odlu civost

U ovom delu kursa bice reci o neformalnim pojmovima izracunljivosti i

odlucivosti i njihovim formalnim ekvivalentima– Turing-izracunljivosti i

Turing-odlucivosti.

Dacemo zatim karakterizaciju rekurzivnih i rekurzivno nabrojivih jezika,

kao i rezultat do koga su prvi dosli Davis [1958] i Chomsky [1959] da

je jezik rekurzivno nabrojiv ako i samo ako je generisan proizvoljnom

gramatikom (jezik tipa 0).

Takode se dokazuje da su konteksno-nezavisni jezici rekurzivni jezici.

Teorija algoritama,jezika i automata – 28 – Uvodni deoTeorija algoritama,jezika i automata – 28 – Uvodni deoTeorija algoritama,jezika i automata – 28 – Uvodni deo

Page 29: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Izracunljivost i odlu civostIzracunljivost i odlu civostIzracunljivost i odlu civost

Klasu algoritamski resivih problema je 1969. godine americki infor-

maticar Stefan Kuk (Stephen Cook, 1939- ) podelio u dve podklase:

❏ Problemi koji se zaista mogu prakticno realizovati racunarima;

❏ Problemi koji su u principu algoritamski resivi, ali njihovo prakticno

resavanje zahteva toliko mnogo vremena, da su racunari beskorisni u

svim, osim u malom broju najjednostavnijih slucajeva tih problema.

Problemi iz ove druge klase nazivaju se neobradivi problemi (engleski

intractable), ili NP-teski problemi.

Teorija algoritama,jezika i automata – 29 – Uvodni deoTeorija algoritama,jezika i automata – 29 – Uvodni deoTeorija algoritama,jezika i automata – 29 – Uvodni deo

Page 30: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Izracunljivost i odlu civostIzracunljivost i odlu civostIzracunljivost i odlu civost

Cak ni danasnji eksponencijalni rast brzine racunara, poznat kao Murov

zakon, nece imati znacajan uticaj na nasu mogucnost da resavamo veli-

ke slucajeve neobradivih problema.

Na ovoj konstataciji temelji se i danasnja kriptografija.

Sva ova pomenuta teorijska dostignuca imaju veliki uticaj na ono sta

informaticari (computer scientists) danas rade.

Neki koncepti, kao sto su konacni automati ili neke vrste formalnih

gramatika, koriste se u dizajniranju i konstrukciji vaznih tipova softvera.

Drugi koncepti, poput Tjuringovih masina, pomazu nam da razumemo

sta mozemo ocekivati od naseg softvera.

Teorija algoritama,jezika i automata – 30 – Uvodni deoTeorija algoritama,jezika i automata – 30 – Uvodni deoTeorija algoritama,jezika i automata – 30 – Uvodni deo

Page 31: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Vec smo pomenuli da su zadaci ovog kursa:

➠ Da se upoznamo sa najvaznijim tipovima apstraktnih masina;

➠ Da vidimo kakvi se problemi mogu resavati odredenim tipom masina;

➠ Da se upoznamo sa prakticnim primenama tih masina;

Pored pomenutih zadataka treba i da uocimo gde su granice mogucnosti

danasnjih apstraktnih masina i realnih racunara, kao i da nazremo kako

se te granice u buducnosti eventualno mogu pomeriti.

Teorija algoritama,jezika i automata – 31 – Uvodni deoTeorija algoritama,jezika i automata – 31 – Uvodni deoTeorija algoritama,jezika i automata – 31 – Uvodni deo

Page 32: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Turingov rad predstavlja ogroman korak u standardizaciji pojma racunar-

skih masina u matematickim terminima.

U poslednje vreme, predmet izucavanja sve vise postaju nove nekonven-

cionalne metode izracunavanja.

Postoje dva osnovna razloga za to:

❏ veoma progresivna minijaturizacija koja ce u narednih dvadesetak

godina doseci do atomskog kvantnog nivoa

❏ potreba za kvalitativno novim algoritmima kojima bi se napali stari,

nesavladivi, teski problemi

Osnovna ideja koja se krije iza svega toga je masovni paralelizam.

Teorija algoritama,jezika i automata – 32 – Uvodni deoTeorija algoritama,jezika i automata – 32 – Uvodni deoTeorija algoritama,jezika i automata – 32 – Uvodni deo

Page 33: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Racunarske nauke sada trpe vaznu transformaciju nastojanjem da se

kombinuju izracunavanja koja se obavljaju u racunarskim naukama sa

izracunavanjima koja se opazaju u prirodi, svuda oko nas.

Kao rezultat toga, rodeno je novo polje izucavanja koje je nazvano

Prirodna izracunavanja (Natural Computing).

Prirodna izracunavanja je opsti pojam koji upucuje na to da se racunar-

stvo sve vise oslanja na prirodu i da je inspirisano prirodom.

Teorija algoritama,jezika i automata – 33 – Uvodni deoTeorija algoritama,jezika i automata – 33 – Uvodni deoTeorija algoritama,jezika i automata – 33 – Uvodni deo

Page 34: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Prirodna izracunavanja pokusavaju da imitiraju izracunavanja onako

kako se ona odvijaju u prirodi:

➠ Izucavanjem modela izracunavanja i racunarskih paradigmi sa ko-

jima je priroda eksperimentisala milijardama godina

➠ njihovim implementiranjem u izracunavanjima koja se obavljaju u

laboratorijskim uslovima (in vitro), ili

➠ njihovim implementiranjem u izracunavanjima koja se vrse u infor-

matici (in info), simbolickim izrazima, i eventualno implementiranim

u silicijumskim medijima.

Teorija algoritama,jezika i automata – 34 – Uvodni deoTeorija algoritama,jezika i automata – 34 – Uvodni deoTeorija algoritama,jezika i automata – 34 – Uvodni deo

Page 35: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Prirodna izracunavanja obuhvataju cetiri osnovne oblasti:

➠ neuronska izracunavanja, koja su inspirisana medusobno

povezanim neuronskim strukturama u mozgu i nervnom sistemu

➠ evolucionarna izracunavanja, koja koriste koncepte mu-

tacije, rekombinacije gena i prirodne selekcije iz biologije

➠ kvantna izracunavanja, koja su zasnovana na kvantnoj

fizici i koriste kvantni paralelizam

➠ molekularna izracunavanja, koja su zasnovana na paradig-

mama iz molekularne biologije

Teorija algoritama,jezika i automata – 35 – Uvodni deoTeorija algoritama,jezika i automata – 35 – Uvodni deoTeorija algoritama,jezika i automata – 35 – Uvodni deo

Page 36: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Evolucionarni algoritmi i algoritmi koji se zasnivaju na neuronskim mre-

zama su u ovom trenutku implementirani i u konvencijalnim racunarima.

Kvantna izracunavanja su usmerena ka netradicionalnom hardveru koji

bi bio baziran na kvantnim efektima

Molekularna izracunavanja nastoje da postanu alternativa za silicijumski

hardver, implementirajuci algoritme u bioloskom hardveru (bioware), uz

koriscenje DNK molekula i enzima.

Teorija algoritama,jezika i automata – 36 – Uvodni deoTeorija algoritama,jezika i automata – 36 – Uvodni deoTeorija algoritama,jezika i automata – 36 – Uvodni deo

Page 37: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Analiza racunarskih modela pokazuje da se tradicionalni modeli izracu-

navanja mogu uspesno objasniti pomocu uredaja koji se opisuju korisce-

njem klasicne fizike.

Feynman (1982) je postavio hipotezu da je nemoguce simulirati fenome-

ne kvantne fizike klasicnim racunarom bez eksponencijalnog smanjenja

brzine efikasnosti simulacije.

On je sugerisao da bi koriscenjem kvantnog racunara koji radi prema

zakonima kvantne fizike bila moguca efektivna simulacija.

Drugim recima, Feynman je prvi predlozio kvantni racunar koji bi imao

eksponencijalno vecu efikasnost racunanja od bilo kog klasicnog racunara.

Teorija algoritama,jezika i automata – 37 – Uvodni deoTeorija algoritama,jezika i automata – 37 – Uvodni deoTeorija algoritama,jezika i automata – 37 – Uvodni deo

Page 38: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Ne primer, veca efikasnost je potvrdena poznatim kvantnim algoritmi-

ma koje je otkrio Peter W. Shor, 1994. godine:

➠ za faktorizaciju celih brojeva, i

➠ za nalazenje diskretnih logaritama.

Shorov kvantni algoritam za faktorizaciju brojeva nudi znacajno pobo-

ljsanje u odnosu na poznate, tradicionalne tehnike.

Problemi faktorizacije celih brojeva i nalazenja diskretnih logaritama

imaju veliki teorijski, ali i prakticni znacaj.

Oni igraju kljucnu ulogu u kriptografiji sa javnim kljucem.

Naime, sigurnost cuvenog RSA kriptosistema zasniva se na cinjenici da

su ova dva problema nesavladiva.

Medutim, Shor je pokazao da to ne bi bio slucaj ukoliko bi se jednog

dana konstruisao prakticno upotrebljiv kvantni racunar.

Teorija algoritama,jezika i automata – 38 – Uvodni deoTeorija algoritama,jezika i automata – 38 – Uvodni deoTeorija algoritama,jezika i automata – 38 – Uvodni deo

Page 39: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

DNK izracunavanja su oblast istrazivanja koja se brzo razvija i bavi se

koriscenjem DNK molekula za implementaciju u procesu racunanja.

Jedno od najvaznijih dostignuca u ovoj oblasti je dizajn racunara koji

ce se zasnivati na DNK molekulima (radije nego na silicijumu), koji ce

u buducnosti ili zameniti ili uspesno dopuniti silicijumske racunare.

Konstruisanje racunara iz molekula predlozio je R. Feynman [1961], i

do danas je publikovan veliki broj teorijskih ideja.

Stvarni pocetak ove oblasti je rad Adlemana [1994].

Adleman je bio prvi koji je stvarno implementirao izracunavanje u zivim

celijama i izvrsio prvi eksperiment koji je potvrdio osnovne principe

DNK izracunavanja.

Teorija algoritama,jezika i automata – 39 – Uvodni deoTeorija algoritama,jezika i automata – 39 – Uvodni deoTeorija algoritama,jezika i automata – 39 – Uvodni deo

Page 40: Teorija algoritama, jezika i · PDF fileHijararhija Chomskog Koncept generativne gramatike prvi put se pojavio 1950-ih godina. Uveo ga je ameriˇcki lingvist, filozof i humanista

Novi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural ComputingNovi trendovi u ra cunarstvu: Natural Computing

Iako je jos prerano predvideti da li ce racunarski hardver da se promeni

iz silicijuma u ugljenik i od mikrocipova u DNK molekule, teoretske

pretpostavke se vec opsezno postavljaju.

Nezavisno od tehnoloskog napretka DNK racunarstva u buducnosti, ova

oblast nas je vec dovela do novih racunskih paradigmi koje su sigurno

obogatile razumevanje prirode izracunavanja.

Teorija algoritama,jezika i automata – 40 – Uvodni deoTeorija algoritama,jezika i automata – 40 – Uvodni deoTeorija algoritama,jezika i automata – 40 – Uvodni deo