Diskretne Matematicke Strukture

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 37

SADRŽAJ

1. UVOD....................................................................................................................................................................3
1.1. RELACIJA. OPERACIJA. FUNKCIJA.......................................................................................................................3
1.2. OSNOVNI POJMOVI LOGIKE................................................................................................................................5
2. MATEMATIČKA LOGIKA.....................................................................................................................................6
2.1. ISKAZNI RAČUN.................................................................................................................................................6
2.1.1. Iskazna algebra......................................................................................................................................6
2.1.2. Iskazna formula i njena vrijednost.........................................................................................................7
2.1.3. Prekidačke mreže...................................................................................................................................9
2.1.4. Bool-ove funkcije..................................................................................................................................10
2.1.5. Izvođenje zaključaka............................................................................................................................11
2.5. PREDIKATSKI RAČUN (KVANTIFIKATORSKI RAČUN).............................................................................................12
2.5.1. Predikatske formule.............................................................................................................................12
2.5.2. Pojavljivanje promjenjivih u predikatskoj formuli.................................................................................13
2.5.3. Interpretacija predikatske formule.......................................................................................................14
2.5.4. Istinitosna vrijednost predikatske formule...........................................................................................15
3. ALGEBARSKE STRUKTURE.............................................................................................................................16
3.1. GRUPA...........................................................................................................................................................16
3.1. PRSTEN. TIJELO. POLJE. BOOL-OVA ALGEBRA..................................................................................................17
4. RELACIJSKE STRUKTURE................................................................................................................................18
4.1 PARCIJALNO UREĐENI SKUP..............................................................................................................................18
4.2 SUPREMUM. INFIMUM. REŠETKA.......................................................................................................................19
5. OSNOVI TEORIJE GRAFOVA...........................................................................................................................20
5.1 DEFINICIJA GRAFA............................................................................................................................................20
Elementi skupa X su čvorovi , a elementi skupa  grane (ivice) grafa............................................................20
5.2. MATRIČNA INTERPRETACIJA GRAFA..................................................................................................................22
5.3 PUTEVI U GRAFU..............................................................................................................................................23
5.4 NEKI SPECIJALNI GRAFOVI.................................................................................................................................24
5.5 STABLO (DRVO)...............................................................................................................................................25
6. TEORIJA KONAČNIH AUTOMATA.................................................................................................................27
6.1 KONAČNA MAŠINA...........................................................................................................................................27
6.2 KONAČNI AUTOMAT................................................................................................................................31
7. FORMALNI JEZICI. GRAMATIKE......................................................................................................................33
7.1 FORMALNI JEZICI..............................................................................................................................................33
7.2 GRAMATIKE.....................................................................................................................................................34
7.3 Veza između automata i regularnih gramatika...........................................................................................36
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

1. Uvod

1.1. Relacija. Operacija. Funkcija

Def. Uređena n-torka (x1, x2,..., xn) je niz elemenata čiji se redoslijed tačno zna.

Primjer: (a, b) je uređena dvojka.

Def. (x1, x2,..., xn) = (y1, y2,..., yn) ako je x1 = y1, x2 = y2,..., xn = yn.

Def. Dekartov (direktni) proizvod skupova A1, A2,...,An je skup


A1  A2  ...  An   a1 ,a 2 , ,a n  a i  Ai , i  1,2 ,...,n.
Specijalno, A  A  ...  A  A   a1 , a 2 ,  , a n  ai  A, i  1,2,..., n.
n

Primjeri: R   x , y  x , y  R - realna ravan


2

R 3   a ,b , c  a ,b ,c  R - realni prostor

Def. f je binarna relacija nad skupovima A i B, ako je f  A B . Ako je A = B, tada je f


binarna relacija nad A.

Ako  x , y   f , kaže se "x u relaciji f sa y", a piše se x f y.

Primjeri: 
f   x, y   R 2 x 2  y 2  1  - krug u ravni sa centrom (0,0)
f   x , y   R 2
x  y - poluravan iznad prave y = x.

Def. f je relacija dužine n nad skupovima A1, A2,...,An ako je f  A1  A2  ...  An . Ako je
A1  A2  ...  An  A , tada je f relacija dužine n nad A.
Ako je f  0 , to je prazna relacija.
Ako je f  A1  A2  ...  An , to je univerzalna relacija.
Ako je n  1 tj. f  A , to je unarna relacija nad A.

Def. Neka su A i B neprazni skupovi.


Ako se po nekom pravilu f svakom elementu iz A pridružuje neki element iz B, tada se kaže
da je f funkcija koja preslikava A u B.

A B
f

a b

U oznaci: f : A  B , b  f  a  , a - original, b - slika.


A je domen, a f  A   f  a  a  A je kodomen.

2
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. f je jednoznačna funkcija ako važi da, za svako x  A i y , z  B , ako y  f ( x ) i


z  f ( x ) , onda y = z. Jednoznačna funkcija f se naziva preslikavanje.

Def. Preslikavanje f : A B je "na", ako je f ( A)  B tj. za svako b  B postoji a  A


tako da je f ( a )  b .
Preslikavanje f : A  B je "1-1", ako važi: za svako x, y  A , ako je f ( x )  f ( y ) , onda je
x y.
Ako je f : A  B i "na" i "1-1", naziva se bijekcija ili uzajamno jednoznačno preslikavanje.

A B

Primjeri: f : N  N , f ( x )  x  1

- nije "na", jeste "1-1"


Za f : N  N \  1  , jeste bijekcija

f ( x)  x 2

f : R  R , nije "na", nije "1-1"


f : R   x R x0  , jeste "na", nije "1-1"
f : N  N , jeste "na", jeste "1-1"

Def. f je binarna operacija nad skupovima A, B, C ako je f preslikavanje A  B u skup C.


f je operacija dužine n nad skupovima A1 , A2 ,  , An , B ako je f preslikavanje
A1  A2    An u B.

Za n  1 , f je unarna operacija.

Primjeri: z  x y  : R2  R
3
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

z  x y  : PA  PA  PA
z  x operacija promene znaka je unarna.

1.2. Osnovni pojmovi logike

Def. Iskaz je rečenica koja ima smisla i koja je ili istinita ili neistinita (ne može biti i jedno i
drugo ili ni jedno ni drugo).

Iskaz obilježavamo sa P, Q, R, S.

Svakom iskazu pridružujemo istinitosnu vrijednost, u oznaci v (P ) ,


 1, ako je P istinito (ili T)
v( P)  
 0, ako je P la `no (ili , L)

Primjeri:
 Za svaki realni broj x, x 2  9 . (iskaz koji je lažan)
 Kroz tačku A van prave p prolaze bar dvije različite prave koje ne sijeku pravu p.
(aksiom – dogovoreno tačan iskaz u geom. Lobačevskog)
 Ova rečenica je lažna (semantički paradoks – circulus vitiosus – nije iskaz)

Def. Predikat je rečenica koja ima smisla, sadrži jednu ili više promjenjivih i njena istinitost
zavisi od konkretnih vrijednosti tih promjenjivih.

Primjeri:
 x i y su realni brojevi i x 2  y 2  1 (predikat istinit za x  y  0 , a za x  y  1 je
lažan).
 Za svaki prirodni broj x, x > y (za y  1 , predikat je istinit, a za y  1 je lažno).

Od rečenica (iskaza i predikata) se formiraju složenije rečenice upotrebom tzv. logičkih


operacija. Istinitosna vrijednost novih rečenica zavisi od istinitosnih vrijednosti rečenica
koje ih obrazuju i utvrđuju se na osnovu ovih vrijednosti.

Negacija – "ne P" – negacija tačnog iskaza je netačan iskaz, i obrnuto.


Konjukcija – "P i Q" – istinita samo ako su i P i Q istinite.
Disjunkcija – "P ili Q" – istinita ako je bar jedan od iskaya tačan.
Implikacija – "Ako P, onda Q", - lažna je ako je P istinito, a Q lažno, u svim ostalim
slučajevima je istinito. "Iz P slijedi Q", "P povlači Q", "P je dovoljan uslov za Q", "Q je
neophodan uslov za P", itd. P je pretpostavka, premisa, Q je poslijedica, zaključak.
Ekvivalencija – "P ako i samo ako Q" – tačno ako su P i Q oba tačna ili oba
netačna. "P je ekvivalentno sa Q", "P akko Q", "P je neophodno i dovoljno za Q".

v (P ) v (Q ) v (neP ) v( P i Q ) v ( P ili Q ) v ( ako P onda Q ) v ( P akko Q )


1 1 0 1 1 1 1
1 0 0 0 1 0 0
0 1 1 0 1 1 0
0 0 1 0 0 1 1

4
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

2. Matematička logika

 Formalizuje postupke dobijanja složenih rečenica od prostih, utvrđivanje istinitosne


vrijednosti ovih rečenica u skladu sa pravilima ispravnog logičkog zaključivanja.
 Dijeli se na iskazni račun i predikatski račun.

2.1. Iskazni račun

 formalizuje pravilno zapisivanje iskaza, građenje novih složenih iskaza, kao i


utvrđivanje istinitosne vrijednosti ovih iskaza u zavisnosti od istinitosti iskaza koji ih čine.
Da bi se ova formalizacija uspešno izvela, uvodi se pojam iskazne algebre.

2.1.1. Iskazna algebra

Def. Dat je skup  0, 1  i operacije , , , ,  definisane sljedećim tablicama

elmenat iz 
 0, 1 
1 0
0 1

elemenat iz    
 0, 1  2

(1, 1) 1 1 1 1
(1, 0) 0 1 0 0
(0, 1) 0 1 1 0
(0, 0) 0 0 1 1

Skup  0, 1  snabdjeven operacijama , , , ,  je iskazna algebra.

Operacije iskazne algebre mogu, u opštem slučaju, biti bilo koje operacije sa
prethodnim tablicama. One ovde nose oznake logičkih operacija, jer logičke operacije
imaju iste tablice nad skupom {istinito, neistinito}.

Uobičajene oznake za operacije: 1  1  1 , 1  0  0

2.1.2. Iskazna formula i njena vrijednost

Simboli iskazne algebre:

 promjenjive iskazne algebre: p, q, r, p1 , q1 , r1 ,  , p n , q n , rn , 


 simboli operacija: , , , , 
 pomoćni simboli: (, ).

5
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Iskazna formula je niz sastavljen od iskaznih slova, simbola operacija i zagrada koji je
formiran prema sljedećim konvencijama formalnog zapisivanja:
1. Iskazna slova su formule
2. Ako su A i B iskazne formule, tada su i A, ( A  B ), ( A  B ), ( A  B ), ( A  B )
iskazne formule.
3. Iskazne formule se jedino obrazuju konačnom primjenom 1. i 2.

Primjeri:

p, p, ( p  q ), ((p  q )  ( r  q )) - pravilno


p, ) p  q, p   q - nepravilno

 spoljašnje zagrade mogu se izostaviti


 unutrašnje zagrade mogu se izostaviti u skladu sa sljedećim prioritetima operacija:
1) , 2) ,  , 3)  , 4)  . Npr. ( p  q)  r  q .
n
 ( A1  A2    An 1 )  An  A1  A2    An   Ai
i 1
n
 ( A1  A2    An 1 )  An  A1  A2    An   Ai
i 1

Iskazna formula za iskaznu algebru predstavlja ono što predstavlja algebarski izraz za
algebru brojeva.

Vrijednost iskazne formule A, v ( A) , dobija se kada u A svaku promjenjivu zamjenimo


sa nekom vrednošću iz  0,1  i izvršimo sve naznačene operacije. Kao rezultat se dobije
1 ili 0 koje predstavlja vrijednost formule A za odgovarajuće vrijednosti promjenjivih.

Primjer:

(( p  q )  ( r  q )) za p  q  1, r  0
v (( p  q )  ( r  q ))  (( 1  1)  ( 0  1))  ( 0  1)  1  1  0  0

Ovakva formalizacija omogućava jednoznačno izračunavanje istinitosnih


vrijednosti složenih iskaza:

Ako sada u iskaznoj algebri promjenjive p, q, r smatramo iskazima, operacije


,  ,  ,  ,  označavaju odgovarajuće logičke operacije, a 0 znači “lažno“ i 1 znači
“istinito“, tada iskazne formule predstavljaju pravilno zapisane složene iskaze.
Istinitosna vrijednost ovakvog složenog iskaza se dobija kao vrijednost njemu
odgovarajuće iskazne formule na sljedeći način: Svaki se iskaz u formuli zamjeni svojom
istinitosnom vrednošću pa se izračuna vrijednost formule kao u iskaznoj algebri.
Vrijednost formule predstavlja istinitosnu vrijednost iskaza. Tako se izračunavanje
istinitosnih vrijednosti složenih iskaza svodi na izračunavanje u iskaznoj algebri.

Primjer:

6
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Data su dva trougla ABC i A1B1C1. Ako je    1 i AB = A1B1, tada su trouglovi ABC i
A1B1C1 podudarni ako i samo ako je   1 .

Formalizacija:

p:    1 , q: AB = A1B1, r: ABC  A1B1C1, s:   1

Odgovarajuća formula iskazne algebre: ( p  q )  ( r  s)

za p  q  r  s  1 , v (( p  q )  ( r  s))  (1  1)  (1  1)  1  1  1
za p  q  1, r  1, s  0 , v (( p  q )  ( r  s))  (1  1)  (1  0)  1  0  0

Def. Tautologija je iskazna formula koja za sve moguće vrijednosti svojih promjenjivih ima
vrijednost 1. (Tautologija predstavlja zakone pravilnog formalnog zaključivanja.)

Neke poznate tautologija

1. p  p (refleksivnost)
2. p  p (isključenje trećeg)
3. ( p  p ) (neprotivurečnost)
4. p  p (dvojna negacija)
5. ( p  q)  ( q  r )  ( p  r ) (tranzitivnost za  )
6. ( p  q )  ( q  p ) (kontrapozicija)
7. ( p  q )  ( q  r )  ( p  r ) (tranzitivnost za  )
8. p  p  p , p  p  p (idempotencija za  ,  )
9. p  q  q  p , p  q  q  p (komutativnost za  ,  )
( p  q )  r  p  (q  r )
10. ( p  q )  r  p  (q  r )
(asiocijativnost za  ,  )

11. p  ( p  q )  p , p  ( p  q )  p (apsorpcija  prema  , tj.  prema )


p  (q  r )  ( p  q)  ( p  r )
12. (distributivnost)
p  (q  r )  ( p  q )  ( p  r )

13. p  q  p  q
( p  q )  p  q
14. (De Morganovi obrasci)
( p  q )  p  q

15. ( p  q )  ( p  q )  ( q  p )

Def. Dvije iskazne formule A i B su semantički ekvivalentne ako je A  B tautologija tj.


ako A i B imaju uvijek iste vrijednosti za iste vrijednosti promjenjivih. Piše se A = B.

Sada se u svim tautologijama iz 1. - 15. koje sadrže , znak  može zamjeniti sa =.

7
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

2.1.3. Prekidačke mreže

Samo one iskazne formule koje sadrže  ,  i 


, gdje se 
javlja neposredno
ispred iskaznog slova, mogu se interpretirati kao tzv. prekidačke mreže:

Iskazna slova i njihove negacije se interpretiraju kao dvopolni prekidači koji mogu
biti otvoreni (kada ne provode struju) i zatvoreni kada provode struju. Ako iskazno slovo
ima vrijednost 1, prekidač je zatvoren, a ako je 0, on je otvoren.

Ako su A i B formule koje su već prikazane kao prekidačke mreže, tada je

- Za A  B, A B - redna veza
mreža
- Za A  B, - paralelna
mreža A veza

Prekidačka mreža sadrži redno ili paralelno vezane prekidače, pri čemu su svi
prekidači označeni istim slovom istovremeno uključeni ili isključeni. Prekidač sa
oznakom p je uključen akko je prekidač sa 
p isključen i obrnuto.

Prekidačka mreža provodi struju ako odgovarajuća formula ima za odgovarajuće


vrijednosti slova (tj. stanje prekidača) vrijednost 1.

Tautologijama odgovara prekidačka mreža koja provodi uvijek struju bez obzira na
stanje svojih prekidača.

Ako je A = B, tada su odgovarajuće prekidačke mreže ekvivalentne tj. za iste položaje


svojih jednako označenih prekidača obe provode ili ne provode struju.
Primjeri.

a) p  (p  q)  p  q
p
p p q
q
b) ((p  q)  (p  q))  p  p  p - tautologija
p
p
p p

q q p

8
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

2.1.4. Bool-ove funkcije

Def. Svako preslikavanje     0,1  , n  N , je Bool-ova funkcija.


n
0,1

Svaka iskazna formula je jedna Bool-ova funkcija čiji je broj promjenjivih jednak
broju različitih iskaznih slova koje formula sadrži, tj. svakoj iskaznoj formuli F odgovara
Bool-ova funkcija f tako da je v ( F )  f ( p1 , p 2 , , p n ) za sve vrijednosti iskaznih slova
p1 , p2 , , p n iz formule F.

Bool-ove funkcije jedne promjenjive


p    
1 2 3 4
3 odgovara negaciji 
1 1 1 0 0
0 1 0 1 0

2
Bool-ove funkcije dvije promjenjive (ima ih 2 2  16 )

p q     
1 2 5 1 1

0 6
1 1 1 1 1 0 0
1 0 1 1 0 1 0
0 1 1 1 1 1 0
0 0 1 0 1 0 0

Za svaku Bool-ovu funkciju f postoji iskazna formula F tako da je


v ( F )  f ( p1 , p 2 , , p n ) . O tome govori sljedeći stav:

9
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Teorema. Neka je f ( p1 , p2 , , pn ) proizvoljna Bool-ova funkcija i


B   ( e , e , , e )   0,1  f ( e , e , , e )  1  i
n
1 1 2 n 1 2 n

B2   ( e1 , e2 , , en )   0,1   ,i p i0  p i , pi1  pi .
n
f ( e1 , e2 , , en )  0


Tada je
 
1. Za B1  0 , f ( p1 , p 2 , , p n )  v  en 
( p1  p2  pn )
e1 e1

 ( e1 ,e2 ,,en )B1 
- savršena disjunktivna normalna forma
2. Za

 , f ( p1 , p 2 ,  , p n )  v 
B2  0

 ( e , e ,, e )B
 1 2 n 2
( p1e1  p 2e1    p nen

)


- savršena konjuktivna normalna forma.

Primjer:

p q 
5
5 je implikacija
1 1 1
1 0 0
0 1 1
0 0 1

B1   (11
, ),( 0,1),( 0,0),   5  ( p1  q1 )  ( p 0  q1 )  ( p 0  q 0 )
 5  ( p  q )  ( p  q )  ( p  q )

B2   (1,0 )   5  p 1  q  0  p 0  q1  p  q

Na taj način se svaka Bool-ova funkcija može predstaviti pomoću formule sa ,


 ,  , pa i pomoću prekidačke mreže.

2.1.5. Izvođenje zaključaka

Def. Formula F je semantička poslijedica skupa formula F ako važi: Za sve vrijednosti
iskaznih slova za koje je v ( H )  1 za svako H F , važi da je i v ( F )  1 .

Elementi skupa F su hipoteze formule F, u oznaci F |= F.


Za konačan skup F = F1, F2, ..., Fn, F1, F2, ..., Fn |= F.

Teorema. F1, F2, ..., Fn |= F ako i samo ako je ( F1  F2  Fn )  F tautologija.

Neka pravila zaključivanja:

1. p, p  q |= q - modus ponens (direktni dokaz)


Primjer:
p: 1988 je deljivo sa 4
10
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

p  q : Ako je N deljivo sa 4, tada je godina N prestupna


|= q : 1988 je prestupna godina.

2. p  q, q  r |= p  r - hipotetički silogizam

Primjer:
p  q : Ako je a  2 , tada je a 2  4
q  r : Ako je a 2  4 , tada je a 3  4a
|= p  r : Ako je a  2 , tada je a 3  4a

3. p, q  p |= q - modus tolens (indirektni dokaz) - svođenje na apsurd


Primjer:
p: U sobi ima 13 ljudi
q  p : Ako sve osobe imaju rođendan različitih meseci, tada u sobi ima ne više od
12 osoba
|= q : Dvije ili više osobe imaju rođendan istog meseca

4. p  q, q  p |= p  q - ekvivalencija
Primjer:
Trougao je jednakostraničan akko su mu svi uglovi jednaki

2.5. Predikatski račun (kvantifikatorski račun)

 formalizuje pravilni način zapisivanja predikata nekog matematičkog ili drugog


jezika, određivanje istinitosne vrijednosti predikata. Pri tome se ulazi u sadržaj rečenica
koje ulaze u sastav predikata.

2.5.1. Predikatske formule

Osnovni simboli kvantitativnog računa:

1. promjenjive: x, y , z, x1 , y1 , z1 ,  , x n , y n , z n , 
2. konstante: a, b, c, a1 , b1 , c1 ,  , a n , bn , c n , 
3. operacijski simboli: f , g , h, f 1 , g 1 , h1 ,  , f n , g n , hn , 
4. relacijski simboli:  ,  ,  ,  1 ,  1 ,  1 ,  i
5. simboli logičkih operacija i kvantifikatori : ,  ,  , , ,  .
6. pomoćni simboli: male zagrade i zarezi.

 : univerzalni kvantifikator, “bilo koji“, “svaki“, “ma koji“


 : egzistencijalni kvantifikator, “postoji bar jedan“, “postoji neki“.

Formalizacija pravilnog zapisivanja predikata

11
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Izraz je niz promjenjivih, konstanti, operacijskih simbola, zagrada i zareza koji se
formira prema sljedećim konvencijama:
1. Konstante i promjenjive su izrazi (termi)
2. Ako su t1 , t 2 , , t n izrazi, a f operacijski simbol dužine n, tada je f ( t1 , t 2 , , t n ) izraz
3. Izrazi se dobijaju samo pomoću konačno mnogo primjena 1. i 2.

Primjeri: x , a, f ( x ), g( x , y ), g( g( x , a )), f ( g( x ), g( h( x , y )))

Ako je f operacijski simbol dužine 1, tada se, umesto f ( x ) , može pisati f x, a ako
je f operacijski simbol dužine 2, tada se, umesto f ( x , y ) , može pisati x f y.

Def. Ako su t1 , t 2 , , t n izrazi i  relacijski simbol dužine n, tada je ( t1 , t 2 , , t n )


elementarna formula.

Ako je  relacijski simbol dužine 2, tada se, umesto ( x , y ) , može pisati x  y.

Primjeri:  ( x , y ),  ( f ( x , y )),  ( f ( x , y ), a ),  ( x , y , f ( x ), z )

Def. Predikatska formula se definiše prema sljedećim konvencijama:


1. Elementarna formula je predikatska formula
2. Ako su A i B predikatske formule i x promjenjiva, tada su ( A),( A  B ),( A  B ) ,
( A  B), ( A  B ),( x ) A,( x ) A predikatske formule
3. Predikatske formule se dobijaju samo pomoću konačno mnogo primjena 1. i 2.

U predikatskoj formuli mogu se izostaviti spoljašnje zagrade, a i neke unutrašnje


prema prioritetu logičkih operacija.

Primjeri:

(a) ( x )( y )( ( x , y )   ( f ( x ), f ( y ))
(b) ( x )( x , y )  ( y ) ( x , y )
(c) ( x , y )  ( z )( y , f ( x , z ))

2.5.2. Pojavljivanje promjenjivih u predikatskoj formuli

( x ) ili ( x ) ili
Def. Pojavljivanje promjenjive x u formuli F je vezano, ako je oblika
ako se x pojavljuje u nekoj formuli A, pri čemu je ( x ) A ili ( x ) A podformula
formule F.
Ako pojavljivanje x nije vezano ono je slobodno.

Def. Slobodna promjenjiva formule F je promjenjiva koja ima bar jedno slobodno
pojavljivanje u toj formuli.
Vezana promjenjiva formule F je promjenjiva čija su sva pojavljivanja u toj formuli vezana.

Primjeri:

12
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

 Sve promjenjive u formuli (a) su vezane.


 x, y, iz formule (b) su slobodne promjenjive.
 x, y su slobodne, a z vezana u formuli (c).

Ako su sve promjenjive u jednoj formuli vezane, tada se ova formula zove
zatvorena formula. Takve formule predstavljaju rečenice kojima se može direktno
odrediti istinitosna vrijednost, pa one, u stvari, predstavljaju iskaze.

Ako su x1 , x 2 , , x n slobodne promjenjive formule F, tada se piše


F ( x1 , x 2 , , x n ) .

2.5.3. Interpretacija predikatske formule

Def. Uređen par ( D,  ) je interpretacija formule F, ako je


 D neprazan skup koji predstavlja oblast definisanosti svih promjenjivih i konstanti iz
formule F,
a  preslikavanje koje:
 svakoj konstanti iz formule F dodeljuje određen element iz D,
 svakom operacijskom simbolu dužine n dodeljuje konkretnu n-arnu operaciju nad D,
 svakom relacijskom simbolu dužine n dodeljuje konkretnu n-arnu relaciju u D.

D se naziva domen interpretacije formule F.

Primjeri:
( x )( y ) ( f ( x , y ), f ( y , x ))

1. D = R, : f   ,   
( x )( y ) x  y  y  x

2. D = PA, : f  ,   
( x )( y ) x  y  y  x

3. D   0,1  , : f  ,   
(x )(y ) x  y  y  x

Predikat predstavlja predikatsku formulu koja je interpretirana.

Def. Broj slobodnih promjenjivih u jednom predikatu predstavlja dužinu tog predikata.

Predikat dužine 0 predstavlja iskaz.

2.5.4. Istinitosna vrijednost predikatske formule

Istinitosna vrijednost predikatske formule može se odrediti samo ako je ta


formula interpretirana tj. istinitosna vrijednost formule zavisi od njene interpretacije i
vrijednosti njenih slobodnih promjenjivih.

13
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Formalizovani postupak utvrđivanja istinitosne vrijednosti:

1. Ako interpretirana formula ima dužinu 0, njena istinitosna vrijednost se određuje


direktno ulaženjem u sadržaj rečenice.
2. Ako je dužina interpretirane formule veća od 0, treba fiksirati vrijednosti svih
slobodnih promjenjivih formule.
3. Za fiksirane vrijednosti slobodnih promjenjivih izračunati vrijednosti svih izraza koji
ulaze u formulu (tj. izvršiti naznačene operacije nad konstantama iz D i dobiti kao
rezultat konstantu iz D).
4. Odrediti za tako dobijene vrijednosti izraza, vrijednosti elementarnih formula iz
formule kao:
 1, ( v ( t ), v ( t ), , v ( t ))  
v (  ( t , t , , t )  
1 2 n
 0, drugacije
1 2 n
.
5. Nad vrijednostima elementarnih formula (1 ili 0) izvršiti logičke operacije
,  ,  , ,  ( u domenu iskazne algebre).
6. U slučaju da se u podformulama javljaju kvantifikatori, tada
 v (( x ) A)  v ( A) , ako A ne sadrži x kao slobodnu promjenjivu
 v (( x ) A)  v ( A) , ako A ne sadrži x kao slobodnu promjenjivu

 1, ako je v ( A)  1
v (( x ) A( x ))  
 0, drugacije
 1, ako je v ( A )  1 za bar jedno x  D
 v (( x ) A( x ))  
 0, drugacije

Primjeri:  ( f ( x , y ), z ))   ( y , f ( x , z ))  ( y , z )

Interpretacija: f : , : , :


x yz y xz y  z

Za x = 1, y = 3, z = 2: 1 + 3 < 2  3 < 3  3 = 2
v (1  3  2  3  3  3  2)  v ( 4  2  3  3  3  2)  0  0  0  0  0  1

Za x = 1, y = 2, z = 4: 1 + 2 < 4  2 < 1 + 4  2 = 4
v(3  4  2  5  2  4)  1  1  0  1  0  0

Def. Formula je tačna pri interpretaciji ( d ,  ) ako za sve vrijednosti slobodnih


promjenjivih ima vrijednost 1 pri toj interpretaciji.

Def. Formula koja je tačna pri svakoj interpretaciji je valjana formula.

1. Ako se u nekoj tautologiji svaka promjenjiva zamjeni sa nekom predikatskom


formulom (istoj promjenjivoj odgovara ista formula), dobija se predikatska formula koja
je valjana.

Primjeri: F  F , F1  F2  F1  F2 , F1  F2  F2  F1 , itd.

2.
 ( x ) A( x )  ( x )A( x )
 ( x ) A( x )  ( x )A( x )
( x ) ( y ) A( x , y )  ( y )( x ) A(
( x ) ( A( x )  B( x ))  ( x ) A( x ) 
( x )( A( x )  B( x ))  ( x ) A( x ) 

valjane formule

14
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def.. Formule A i B su semantički ekvivalentne, ako je A  B valjana formula

3. Algebarske strukture

Def. Binarna operacija f u skupu S je zatvorena, ako (x, y  S ) xfy  S

Osobine zatvorene binarne operacije * u skupu S:

1. (x, y  S ) x  y  S  y  x (komutativnost) (K)


2. (x, y , z  S ) ( x  y )  z  x  ( y  z ) (asocijativnost) (A)
3. (e  S ) (a  S ) a  e  e  a (neutralni ili jedinični element) (N)
(e'  S ) (a  S ) e'a  a (e - lijevi neutralni element) (LN)
(e' '  S ) (a  S ) a  e' '  a (e - desni neutralni element) (DN)
4. (a  S ) (a 1  S ) a  a 1  a 1  a  e (inverzni element) (I)

Def. Neprazan skup S snabdjeven sa jednom ili više zatvorenih operacija f1, f2, ..., fn bilo
koje dužine naziva se algebarska struktura (ili algebra), u oznaci (S, f1, f2, ..., fn).

3.1. Grupa

Def. Specijalno, za n=1, skup S snabdjeven jednom binarnom zatvorenom operacijom je


grupoid, u oznaci (S, *).

Primjeri: (R,+), (R,  ), (Q,+), (Z,  )

Def. Ako grupoid (S,*) zadovoljava i uslove da je


 * asocijativna, tada je (S, *) polugrupa,
 * je (A) i (N), tada je (S, *) monoid,
 * je (A), (N), (I), tada je (S, *) grupa,
 * je (A), (K), (N), (I), tada je (S, *) Abelova grupa.

Primjeri:

 (N, +), (N, ) - komutativni monoidi


 (PA, ), (PA, ) - komutativni monoidi
 (Z, +), (Q, +), (R, +) - Abelova grupa
 (R\0,), (Z\0,) - Abelova grupa
 (1, -1, ) - Abelova grupa

Teorema. Ako je (S,*) grupa, njen neutralni element je jedinstven.


Dokaz: Ako postoje dva neutralna elementa e1, e2 
(x  S ) ( x  e1  e1  x  x  x  e 2  e 2  x  x  e1  e 2  e1  e 2  e1  e 2
Teorema. Ako je (S,*) grupa, svaki njen element ima jedinstveni inverzni element.
15
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Dokaz: Ako postoje dva inverzna elementa a11 , a 21 elemente a tada je
a  a11  a11  a  e  a  a 21  a 21  a  e 
a 11  a11  e  a11  ( a * a 21 )  ( a 11 * a ) * a 21  e  a 21  a 21  a11  a 21

Def. Ako je (S1,*) i (S2,) dva grupoida, tada su ovi grupoidi izomorfni, ako postoji bijekcija
f S1 na S2 tako da važi:
(x, y  S 1 ) f ( x  y )  f ( x )  f ( y )

Primjer:
(R+, ) je izomorfno sa (R, +), jer postoji bijekcija lnx: R+R, tako da je ln(xz)=lnx +lny.

Izomorfni grupoidi su iste strukture. Ako je jedan od njih grupa, i onaj drugi mora
biti grupa.

3.1. Prsten. Tijelo. Polje. Bool-ova algebra

Posmatra se algebarska struktura (S, *, ), gdje su * i  binarne zatvorene operacije na S.

Operacije  je distributivna u odnosu na *, ako važi

(x, y , z  S ) ( x  y )  z  ( x  z )  ( y  z ) -(DD) desna distributivnost


(x, y , z  S ) x  ( y  z)  ( x  y)  ( x  z) -(LD) leva distributivnost

Def. (S,*, ) je prsten, ako je


 (S,*) – Abelova grupa,
 (S, ) – polugrupa,
  je distributivna prema *.
Ako je  komutativna operacija, to je komutativan presten.

Primjeri: (Z, +, )

Def. (S,*, ) je tijelo, ako je


 (S,*) – Abelova grupa,
 (S \  0, ) –grupa (0 je neutralni element operacije *)
  je distributivna prema *.

Def. Tijelo (S,*, ) je polje, ako je (S \  0, ) Abelova grupa.

Primjeri: (R, +, )

Def. (S,*, ) je Bool-ova algebra, ako je


 *, su (A) i (K).
 * i  su obostrano distributivne.
 postoji neutralni lement e1 operacije * i neutralni elemnt e2 operacije .
16
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE


(x  S ) (x '  S )( x * x '  e 2  x  x '  e1 )

Primjeri: (P, , ) i (0,1, , )

4. Relacijske strukture

4.1 Parcijalno uređeni skup

Osobine binarne relacije  u skupu S:

1. (x  S ) xx - refleksivnost


2. (x, y  S ) x  y  y  x - simetričnost
(x, y  S ) x  y  y  x  x  y
3. - antisimetričnost
ili x  y  x  y  y  x
4. (x, y , z  S ) x  y  y  z  x  z ) - tranzitivnost

 je relacija ekvivalnecije, ako zadovoljava 1,2, 4.


 je relacija poretka, ako zadovoljava 1,3, 4.

Def. Neprazan skup S snabdjeven nekom relacijom poretka  naziva se parcijalno uređen
skup, u oznaci (S, ).

Primjeri: (R, ) , (P, ), (N, /)

Def. Parcijalno uređen skup (S, ) je lanac ako su mu svaka dva elementa urediva tj. važi.
( x , y  S ) ( x  y  y  z)

Primjeri: (R, ) - lanac


(N, /), (P, ) – nisu lanci

Def.
Najmanji element a skupa (S, ):(yS) ay.
Najveći element a skupa (S, ):(yS) ya.
Minimalni element a skupa (S, ):(yS) (ya  ya)
Maksimalni element a skupa (S, ):(yS) (ya  ay).

Svaki najmanji (najveći) element je i minimalni (maksimalni). Kod lanca je svaki


minimalni (maksimalni) element najmanji (najveći) element.

Primjeri: (PA, ), A=1, 2, 3,  je najmanji, a A najveći elemnt.


(PA \ , A , ) - 1, 2, 3 - minimalni elementi
1,2, 1,3, 2,3 - maksimalni elementi

Teorema. Ako postoje najveći ili najmanji element, oni su jedinstveni

17
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Dokaz: Ako postoje dva najveća elementa a1, a2 , tada


 y  S  y  a1  y  a 2  a 2  a 1  a1  a 2  a1  a 2

4.2 Supremum. Infimum. Rešetka

Def. Neka je (S, ) parcijalno uređen skup i S1S. Tada je aS gornja (donja) međa skupa
S1, ako je
(y  S 1 ) y  a tj. (y  S 1 ) a  y
Supremum skupa S1 je najmanji element u skupu gornjih međa skupa S1.
Infimum skupa S1 je najveći element u skupu donjih međa skupa S1.

Primjeri:
- (R,  ), S1=-1, 1: donje međe a-1, inf S1= -1
gornje međe a1, sup S1= 1

- (N,  ), gdje je ab(kN) b=ka, S1=12, 30


gornje međe: 60k, k=1,2,.., sup12, 30=60
donje međe: 2,3,6 inf12, 30=6

Def. Parcijalno uređen skup (S, ) je mreža ili rešetka ako svaka dva njegova elementa
imaju supremum i infimum.

Teorema. Svaki lanac je rešetka.

Primjeri:
a) (N,  ), sup (a, b) = najmanji zajednički sadržalac (a,b)
inf (a, b) = najveći zajednički dijelilac (a,b)
b) (S, ) S1 = 0, 2, 6,  = (0, 0), (2, 0), (6, 0), (2, 2), (2, 6), (6, 6)

 donje međe : 2, 6, infS1  6 


S1 = 0, 6 gornja međe : 0, supS  0
 1 

 donja međe : 2, infS1  2 


S1 = 0, 2 gornja međe : 0,
 supS1  0

 donja međe : 2, infS1  2 


S1 = 2, 6  
gornja međe : 0, 6 supS1  6

5. Osnovi teorije grafova


5.1 Definicija grafa

18
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Ako je X neprazan konačan skup i  binarne relacije u X, tada se uređeni par G=(x,)
naziva graf.
Elementi skupa X su čvorovi , a elementi skupa  grane (ivice) grafa.

Geometrijska predstava grafa:


 čvorovi grafa iz X se prikazuju kao međusobno različite tačke ravni ili prostora. Ako
(x,y), tada odgovarajuće tačke spajamo neprekidnom linijom koja se orijentiše od x ka
y. Ako (x,y) , odgovarajuće tačke nisu povezane linijom.

Primjer: X   a, b, c, d , p   ( a, a ), ( a, b), ( a, c ), ( a, d ), (b, b), (b, d ), ( c, a )

c
b
d

Ivica koja spaja čvor sa samim sobom zove se petlja.


Svakoj relaciji se može pridružiti graf kao geometrijska predstava i svakom grafu kao
figuri se mogu pridružiti neka binarna relacija u skupu čvorova.

Osobine binarnih relacija na grafu:

1. Refleksivnost: svaki čvor grafa ima petlju .


2. Simetričnost: između svaka dva različita čvora gdje postoji ivica,
postoji i ivica u suprotnom smeru.
3. Antisimetričnost: svaka dva različita čvora imaju najviše jednu ivicu koja ih spaja.

4. Tranzitivnost: za svaki par nadovezanih ivica (x,y) i (y,z),


x
postoji ivica (x,z) koja ih zatvara. y
z

Primjer:
X   0,2,6 , p   (0,0), ( 2,0), (6,0), ( 2,2), ( 2,6), (6,6)
-Relacija poretka
2
0

19
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Ako je kod grafa (X, ) relacija  antisimetrična , graf je orijentisan.


Ako je kod grafa (X, ) relacija  simetrična , graf je neorijentisan.

Kod neorijentisanog grafa se svi parovi grana koje spajaju čvorove zamjenjuju
jedinstvenim neorijentisanim granama.

Primjer:
c zamjenjuje se c

a a
b b

Postoje i grafovi koji nisu ni orijentisani ni neorijentisani.

Primjer:

Postoje i drugačije definicije neorijentisanog grafa:

Def. Uređeni par (X, U), gdje je X neprazan skup, a U    x, y  , x, y  X  i antisimetrično


je, naziva se orijentisani graf.

Uređeni par (X, U), gdje je X neprazan skup, a U    x , y  , x, y  X  tj. U je podskup skupa
neuređenih parova iz X, je neorijentisani graf.

Primjeri:
(X,U), X   a , b, c , U  ( a , a ), ( a , b), ( a , c), ( b, c)
a
- neorijentisan graf.
b
c
5.2. Matrična interpretacija grafa

Def. Neka su svi čvorovi nekog grafa (X,) uređeni po nekom proizvoljnom poretku u niz
x1, x2,...,xn.
1, ( x i x j )   , .
Matrica , kod koje je a ij  0, drugacije
A  a ij
nxm

je matrica susedstva grafa (X, ).

20
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Matrica susedstva neorijentisanog grafa je simetrična tj. aij =aji za svako i,j
1,2,..,n.
Za matricu susedstva orijentisanog grafa važi da je (i, j, i  j ) aij=1  aji=0.
Za aii=1, postoji petlja u čvoru xi
.
Def. Neka su svi čvorovi i ivice neorijentisanog grafa (X,) uređeni u nizove x1, x2,..., xn tj.
i1,i2,..., im.
Matrica B  b ij
nxm , kod koje je
1, ako je x i jedna od krajnjih tacaka ivice i j .
b ij  
 0, drugacije

Primjer:

a b c d
a a 1 1 0 1
b 0 0 1 0
c A  
b c 0 0 0 0
 
d 0 0 1 0

a ( a , b) (a, c) (b, c )
a 1 1 0 
A b 1 0 1 
 
b c  0 1 1 
c

5.3 Putevi u grafu

Def. Zadat je graf G=(X,). Niz ivica iz  (x1, x2), (x2, x3), ..., (xn-1, xn) je put dužine n grafa G
od x1 do xn. (x1 je početni, a xn završni čvor).
Ivice i čvorovi u putu se mogu ponavljati.
Def. Ako se svi čvorovi nekog puta različiti, tada je to elementarni put (prolazi kroz svaki
čvor puta samo jedan put).
Def. Ako je x1 =xn , tada se put naziva zatvoteni put.

Umesto (x1, x2), (x2, x3), ..., (xn-1, xn) piše se x1, x2, ..., xn.

Primjer:

-d-c-e -f-c–b - nije elementarni put


-d–c–e–f–c–b–d - nije elementarni, ali je zatvoren
- b – d – c – ed – f e - otvoren i elementaran
- b – d – c – b, e – e, c – e – f –c – zatvoren i elmentaran
c
a 21
b f
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Neka je G=(X,U) neorijentisani graf. Niz ivica iz U x1, x2, x2, x3, ..., xn-1, xn je
lanac u G od x1 do xn. (x1 je početni, a xn završni čvor).
Ivice i čvorovi u putu se mogu ponavljati.
Def. Ako se svi čvorovi lanca različiti, to je elementarni lanac.
Def. Ako je x1=xn , lanac se naziva ciklus.

Primjer:

a, b, c, d, b, - lanac, ali ne elementarni b


f, e, b, d - elementarni lanac
b, f, e, b, d, c, b - ciklus ali ne elementarni e
b, c, d, b - elementarni ciklus a
f

c d

Def. Ako je (X,) neorijentisani graf bez petlji, lanac koji prolazi tačno jedan put kroz sve
ivice grafa je Euler- ov lanac. (isto važi i za orijentisani graf i Eulerov put)
Def. Ako je (X, ) neorijentisani graf, lanac (ciklus) koji kroz sve čvorove prolazi tačno jedan
put je Hamiltonov lanac (ciklus).
(Isto važi i za orijentisani graf, Eulerov put i Hamiltonov put)

Primjeri:
a Eulerov put: a-b-c-d-b-f-e-b
b
Hamiltonov put: ne postoji
c

e f
c Nema ni Eulerov ni Hamiltonov put
a
b

22
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

b a,b,c,d,f,e,a – Hamiltonov put


d,c,b,a,c,e,d,f,e,a,f – Eulerov put
a c

f d

5.4 Neki specijalni grafovi

Potpu K Svaka dva čvora spojena su ivicom


n
n graf

Graf- C Ivice obrazuju ciklus


n
ciklus
Graf-put P Ivice obrazuju put
n

Nula-graf N Graf sadrži samo čvorove


n

K
Potpuni n, Skup čvorova se može podijeliti na dva skupa, tako da čvorovi u
biparitni m istom skupu nisu spojeni, a svaka dva čvora iz različitih skupova su
graf spojeni

K
3,

K zvijezda
1,

Mreža Orijentisani graf koji ne sarži ni jedan


yatvoreni put niti petlju

5.5 Stablo (drvo)

23
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Stablo je neorijentisani graf bez petlji kod koga između bilo koja dva čvora postoji
jedinstveni elementarni lanac.

Primjeri:

Def. Stablo sa korijenom (ukorijenjeno ili orijentisano stablo) je stablo kod koga postoji
specijalno uočeni čvor koji predstavlja korijen.

24
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Primjer:
Nivoi
a 0 Visina stabla: 3

b c d 1

e f 2

g h 3

Def. Nivo čvora x nekog stabla je dužina elementarnog lanca od korijena do tog čvora
(korijen ima nivo 0).
Visina (dužina) stabla je najveći nivo čvora u stablu.

Terminologija u ukorijenjenom stablu

Ako je dat elementarni lanac od korijena do nekog čvora, npr. a, b, f, h do h tada je

 f roditelj (otac) od h, h je djete (sin) od f,


 a, b, f su preci od h, h je potomak od a, b, f,
 g i h braća,
 ako neki čvor nema djece, zove se list. Ako neki čvor nije list, on je čvor grane.

Def. Čvor x nekog stabla zajedno sa svim svojim potomcima predstavlja podstablo ovog
stabla sa korijenom x.
Def. Binarno stablo je ukorijenjeno stablo gdje svaki čvor ima najviše dva djeteta Čvor x
nekog (lijevo ili desno).

25
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Primjeri:

Primjeri: Stablo pretraživanja u bazama podataka, gdje se svakom čvoru stabla


pridružuje neki podatak, tako da je podatak u lijevom podstablu uvijek “manji” od
podataka u desnom podstablu.

17 O

4 23
A u

2 7 19 45
AB AN T T

6 9 37 99

6. Teorija konačnih automata

- formuliše apstraktne modele rada sistema koji se može opisati na sljedeći način:

ulaz stanje izlaz


ut st it

Sistem se posmatra u diskretnim vremenskim trenucima t (t=0,1,2,…) i u svakom


od njih ga karakteriše neko stanje st u kome se nalazi. U svakom trenutku t na ulaz u
sistem dolazi neki ulazni signal ut koji izaziva (eventualno) mijenjanje njegovog stanja u
stanje st i na izlazu izlazni signal it. Pošto stanje st i izlaz it zavise, ne samo od ulaza ut već i
od prethodnog stanja sistema st-1 na koga ovaj ulaz nailazi, ovakav jedan sistem radi sa
nekom vrstom primitivne unutrašnje memorije.

6.1 Konačna mašina

Sada se abstraktni model koji opisuje rad ovakvog sistema može definisati na
sljedeći način:
26
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Konačna mašina se sastoji od:


- konačnog skupa U ulaznih simbola,
- konačnog skupa I izlaznih simbola,
- konačnog skupa S stanja,
- funkcije prelaza stanja f:SUS,
gdje f(s,u)=s znači da,ako ulaz u dođe u sistem koji je u stanju s,tada se stanje mijenja u s,
- funkcije izlaza g: SUI,
gdje g(s,u)=i znači da,ako ulaz u dođe u sistem koji je u stanju s,tada je izlaz i,
- početnog stanja sistema *S.

Ovakva konačna mašina se označava sa M=(U,I,S,f,g, *).

Primjer: U=a,b, I=0,1, S=0,1, * =0

U f g i f(0,a)= g(0,a)=
l 0 0
S i
a b a b f(0,b)= g(0,b)=
1 1
  1 0 1 f(1,a)= g(1,a)=
0 0 1 1
  1 1 0 f(1,b)= g(1,b)=
1 1 1 0

Jedna konačna mašina se može u potpunosti definasati korištenjem takozvanog


dijagrama prelaza.

Def. U dijagramu prelaza za konačnu mašinu M=(U,I,S,f,g,*) svako stanje iz S se


predstavlja kao neki čvor ovog dijagrama.
Od čvora 1 do čvora 2 postoji orijentisana ivica ako postoji ulaz u, u U, takav da važi
f(1,u)=2. Ako je, pri tome, g(1,u)=i, ovoj ivici se dodeljuje oznaka u/i. Čvor koji predstavlja
početno stanje * označen je strelicom.

Primjer: Dijagram prelaza za konačnu mrežu iz prethodnog primjera ima oblik:

a/0 a/1
b/1
0 1

b/0

27
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Sada se rad konačne mašine M može opisati na sljedeći način:


Na ulazu u mašinu se nalazi jedan niz ulaznih simbola (ulazni niz). Polazeći od početnog
stanja, svaki od ovih simbola prevodi sistem iz stanja u stanje (u skladu sa funkcijom
prelaza) pri čemu se generiše odgovarajući izlazni simbol (u skladu sa funkcijom izlaza).
Ovaj niz izlaznih simbola (izlazni niz) se zato može formalno definisati na sljedeći način:

Def. Niz y1, y2, …, yn, je izlazni niz mašine M koji odgovara ulaznom nizu x1, x2, …, xn ako
postoji niz stanja 0, 1,…, n, S tako da je
0 =*
i = f(i-1, xi), i= 1, n
yi = g(i-1, xi), i= 1, n

Primjer: Ako je na ulazu konačne mašine iz primjera ni x=aababba, odgovarajući


niz stanja kroz koje mašina prolazi je 0, 0, 0, 1, 1, 1, 1, 1.
Odgovarajući izlazni niz je y=0011001.

Mnoge operacije koje se više u digitalnom računaru mogu se prikazati kao konačne
mašine.

Primjer:

xt
zt
yt sabirac

c t-1 ct

zastoj

Serijski sabirač sabira dva binarna broja x=0 x n xn-1 …x0 i y=0 yn yn-1 …y0. Na ulazu se u
diskretnim vremenskim trenucima t=0,1,…,n+1 nalaze parovi (x 0, y0), …,(xn, zn), (0, 0).
Stanje sabirača u trenutku t se karakteriše prenosnim bitom ct, tj. prenosom na sljedeće
cifarsko mesto pri sabiranju u trenutku t. Sabiranjem binarnih cifara x t, yt i prethodnog
stanja ct-1, dobija se kao izlaz binarna cifra z t i mijenja se stanje sabirača u c t. Rezultat
sabiranja je izlazni niz zn+1 zn, …,z0.
Sabirač se može prikazati kao konačna mašina na sljedeći način:
Skupovi ulaznih i izlaznih simbola su U=00,01,10,11 i I=0,1. Skup stanja je S=0,1,
gdje 0 označava da nema prenosa na sljedeće cifarsko mesto, dok 1 označava da takav
prenos postoji.
Sada se dijagram prelaza ove mašine može prikazati kao:

28
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

01/0
00/0 01/1
00/1 10/0
0 1
11/0

10/1 11/1

Ako treba sabrati dva linerna broja x=0010 i y=0111, tada ovom sabiranju
odgovara ulazni niz (0,1), (1,1), (1,0), (0,0), a njemu odgovarajući izlazni niz prethodno
definisane konačne mašine je z =1001, što je i rezultat sabiranja.

Korištenjem konačne mašine se mogu formalno prikazati mnogi postupci koji


imaju za cilj da na određeni način prepoznaju unapred zadate osobine ulaznog niza.

Primjer: Konačna mašina definisana dijagramom prelaza:

1/0 1/1
0/0
1/0 0/0 1/1
0 1 2 3
0/1
0/0

daje na izlazu 1 čim registruje 101 u ulaznom nizu i nadalje. U ostalim slučajevima daje 0.

Međutim, za neke osobine ulaznih nizova, ne mogu se formirati konačne mašine


koje bi ih prepoznale.

Primjer:
Ne postoji konačna mašina koja na ulazu ima niz 0 i 1 i daje izlaz 1 uvijek kada je
broj 1 i 0 jednaki, u ostalim slučajevima daje 0.
Stvarno, stanja ovakve mašine trebalo bi da budu

0 – isti broj 1 i 0
1 – broj 1 veći za 1 od broja 0 1 – broj 0 veći za 1 od broja
1

2 – broj 1 veći za 2 od broja 2 – broj 0 veći za 2 od broja
0 1
 
 
 

Međutim, trebalo bi da bude beskonačno mnogo stanja, pa konačna mašina ne može da


se formira na takvom skupu stanja.

29
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

1/0 1/0
0 1 2 ...
0/1 0/0

1/1
0/0
  1/0

0/0
  ...

6.2 Konačni automat

Specijalni slučaj konačne mašine su konačni automati. Oni su od posebnog ineresa, jer
su vezani za formalne jezike i gramatike.

Def.1 Konačni automat A=( U,I,S,f,g,*) je takva konačna mašina kod koje je I= 0, 1 i
gdje je izlaz određen sljedećim stanjem mašine.

Drugim rečima, kod konačnih automata važi da, bilo kako došli u neko stanje, daju uvijek
isti izlaz tj. u njihovom dijagramu prelaza sve ivice koje ulaze u isto stanje imaju isti izlaz.

Primjer:

b/0 a/1

a/1 a/1
0 1 2
b/0
b/0

U ovoj konačnoj mašini za svako stanje važi da sve ivice koje ulaze u njega imaju
isti izlaz. Zato ona predsatvlja konačni automat.
Stanja za koja važi da uvijek kada je automat u njima daju izlaz 1 zovu se
prihvatajuća stanja.
Sada se konačni automat može definisati na drugačiji način:
Def.2 Konačni automat A se sastoji od:
 konačnog skupa U ulaznih simbola,
 konačnog skupa S stanja,
 funkcije prelaza stanja f: U S  S,
 podskupa AS prihvatajućih stanja,
 polaznog stanja *S.
U oznaci A= (U,S,f,A,*).

30
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

U dijagramu prelaza konačnog automata se prihvatajuća stanja obilježavaju sa , a


oznake izlaza se ne navode.
b a

a
0 1 b

Primjer: Konačni automat iz prethodnog primjera se može prikazati kao:

b a

a a
0  2
b
b

Svakom ulaznom nizu konačnog automata A odgovara jedan orijentisani put koji
polazi od početnog stanja o. Ako se taj put završava u nekom prihvatajućem stanju,
tada A prihvata (prepoznaje) taj ulazni niz.

Pojam prihvaćenog ulaznog niza može da se definiše na sljedeći način:

Def. Automat A=(U,S,f,A,*) prihvata (prepoznaje) ulazni niz x1, x2 ,… , xn, ako postoji niz
stanja o,1,…, n,takvih da je
o=*
f(i-1 xi)= i, i = B  b ij nxm

n A.

Skup svih ulaznih nizova koje automat A prepoznaje označava se sa Ac(A).

Primjer:
Konačni automat iz prethodnog primjera prihvata ulazni niz aabbba, jer se odgovarajući
niz stanja završava sa 1. Ovaj automat ne prihvata baabbabb, jer se odgovarajući niz
stanja završava u o .

Konačni automat je u suštini jedan algoritam koji odlučuje da li je ili ne zadati niz
prihvatljiv. Često treba naći takav konačni automat koji prepoznaje (prihvata) sve nizove
sa tačno određenim osobinama i samo njih.

Primjer:
Automat koji prepoznaje sve nizove nad skupom a, b koji sadrže neparan broj a može
se definisati sljedećim dijagramom prelaza.

31
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

b b
a

0 1
a

gdje o označava stanje u kome je broj a paran, a 1 stanje u kome je broj a neparan.

Def. Dva konačna automata A i A su ekvivalentna ako prepoznaju isti skup nizova tj.
Ac(A) =Ac(A)

Primjer:
Dva automata
b a

a
0 1 b
i
b b a

0 a a 2
1 b

su ekvivalentna, jer oba prepoznaju nizove koji se sastoje samo od b.

7. Formalni jezici. Gramatike

7.1 Formalni jezici

U opštem slučaju jezik je skup reči i metoda za njihovo kombinovanje koji se koristi i
"razume" od strane određene zajednice. Pravila formiranja reči u ovakvim prirodnim
jezicima su veoma kompleksna i teška za karakterizaciju.
Formalni jezici i gramatike modijeliraju i formalno opisuju prirodne jezike i pravila
formiranja njihovih reči, a u cilju lakše komunikacije sa računarom.

Def. Neka je A neki konačan skup. Formalni jezici L nad azbukom A je poskup od A*, gdje je
A* skup svih nizova (reči) nad A..

Primjer:
Za A=a,b, jezik L može da sadrži skup svih nizova nad A koji imaju neparan broj a tj.
L= a, ab, ba, abb, bab, bba,...

32
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

7.2 Gramatike

Def. Gramatika G se sastoji od:


 konačnog skupa N nezvršnih slova,
 konačnog skupa T završnih slova, gdje NT=
 konačnog podskupa P(NT)*-T*(NT)* koji se naziva skup pravila izvođenja
 polaznog slova *N.
U oznaci G=(N,T,P, *)

Ako (A,B)P, tada se to često označava sa AB. A(NT)*-T* i B(NT)* tj. A i B su


nizovi koji se sastoje od nezavršnih i završnih slova tako da A mora da sadrži bar jedno
nezavršno slovo, dok B može da se sastoji samo od završnih.
Polazaći od zadate gramatike G može se generisati neki jezik tj. koristeći pravila ove
gramatike mogu se izvesti nizovi (reči) ovog jezika.

Def. Zadata je gramatika G =(N,T,P,*).


Ako je  neko njeno pravilo, tj. ( ,)P, i xy(NT)*, tada je xy direktno izvodivo iz
xy, u oznaci xy xy.
Ako i(NT)* za i= 1, n i ii+1 za i= 1, n  1 , tada jen izvodivo iz 1, u oznaci

1  n.
Jezik L(G) generisan gramatikom G, L(G) je skup svih nizova nad T izveden iz *.

Primjer 1:
Gramatika G= (N, T, P, *) je zadata sa N=*, S, T=a, b i P=*b*, *aS,
SbS, Sb.

Na osnovu pravila SbS niz abSbb je direktno izvodiv iz aSbb tj. aSbb abSbb.

Takođe, *  bbab pomoću niza izvođenja * b* bb* bbaS bbab.

Odredimo opšti oblik reči nad T izvedene iz početnog slova * ove gramatike:
* b* ... bn* bnaS bnabS ...  bnabmS bnabm+1, za m0 i n0,
gdje bk označava k uzastopnih pojavljivanja slova b u reči.

To znači da jezik L(G) generisan gramatikom G sadrži sve reči ovoga oblika i samo njih tj.
sadrži sve one nizove nad a,b koji sadrže samo jedno a a završavaju se sa b.

Napomenimo da je u opštem slučaju za zadatu bilo kakvu gramatiku G teško naći oblik
opšteg člana njenog jezika L(G).
Osnovu jedne gramatike čine njen skup pravila izvođenja. Pomoću ovih pravila se,
polazeći od početnog slova i koristeći dva disjunktna skupa slova, izvode reči jezika ove
gramatike i to nad skupom završnih slova kao njegovom azbukom. Nezavršna slova
služe samo kao pomoćni simboli pri ovom izvođenju.

Gramatike i njena pravila mogu se kondenzovanije prikayati pomoću tzv. Backus-ove


normalne forme (BNF).

33
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. U Backus-ovoj normalnoj formi se prikazuju:


 nezavršna slova između uglastih zagrada ...,
 pravila ST kao S::=T,
 pravila ST1, ST2,..., STn kao S::=T1T2...Tn.

Primjer:
Gramatika iz Primjera 1. može se prikayati u obliku BNF kao
*::=b*aS
S::=bSb

Mnogi poznati skupovi iz algebre brojeva mogu se prikazati kao jezici generisani
određenim gramatikama koje definišu pravila formiranja elemenata ovih skupova.

Primjer 2:
Ako se cijeli broj shvati kao niz cifara od 0 do 9, ispred koga stoji (neobavezno) + ili -,
tada se skup svih cijelih brojeva može smatrati jezikom generisanim sljedećom
gramatikom:

cifra::=0123456789
cijeli broj::=označen cijeli brojneoznačen cijeli broj
neoznačen cijeli broj::=cifracifraneoznačen cijeli broj
Polazno slovo : cijeli broj

Sada se cijeli broj – 980 može izvesti iz početnog slova sljedećim nizom
izvođenja:
cijeli brojoznačen cijeli broj-neoznačen cijeli broj-cifraneoznačen
cijeli broj-cifracifraneoznačen cijeli broj-cifracifracifra-
9cifracifra
-98cifra-980.

U zavisnosti od oblika pravila neke gramatike postoje tri tipa gramatike (prema
klasifikaciji Čomskog):

Def. Neka je G=(N, T, P, *) neka gramatika i  prazan niz (reč).


a) Ako je svako pravilo izvođenja gramatike G oblika A, gdje je
,(NT)*,AN, (NT)*\ to je kontekstno zavisna gramatika.
b) Ako je svako pravilo izvođenja gramatike G oblika A   za AN, (NT)*\ , to je
konteksno slobodna (nezavisna) gramatika,
c) Ako je svako pravilo izvođenja gramatike G oblika A  ili AB, gdje je A,BN,
T*\, to je regularna gramatika.

Svaka regularna gramatika je i kontekstno slobodna, a svaka kontekstno slobodna je i


kontekstno zavisna.

Primjer: Gramatika iz Primjera 1. je regularna, a iz Primjera 2. je konteksno slobodna.

34
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Def. Jezik L je kontekstno zavisan (slobodan, regularan) ako postoji kontekstno zavisna
(slobodna, regularna) gramatika G tako da je L=L(G).

Primjer 3:
U Primjeru 1 prikazano je da postoji jedna kontekstno slobodna gramatika koja generiše
skup cijelih brojeva. Međutim, skup cijelih brojeva može se generisati i sljedećom
gramatikom:

cijeli broj::=+neoznačen cijeli broj-neoznačen cijeli broj *neoznačen cijeli


broj
neoznačen cijeli broj::=01234567890neoznečen cijeli
broj...9neoznečen cijeli broj
Polazno slovo : cijeli broj,

gdje je * završno slovo koje označava blanko.


Ova gramatika je regularna, pa je zato skup cijelih brojeva jedan regularan jezik.

Def. Gramatike G1 i G2 su ekvivalentne, ako je L(G1)=L(G2) .

Primjer: Gramatike iz Primjera 2 i 3 su ekvivalentne, jer generišu isti skup – skup cijelih
brojeva.

7.3 Veza između automata i regularnih gramatika

Može da se pokaže da se za svaki konačan automat A može konstruisati regularna


gramatika G tako da se jezik L(G) poklapa se skup A c(A) svih nizova koje taj automat
prepoznaje.

Tvrdnja: Neka je A=(U,S,f,A,*) konačni automat i G=(N, T, P, *) gramatika kod koje je
N=S, T=U, * početno slovo, a skup svih pravila izvođenja P definiše se na sljedeći način:
 ako f(s,x)=s¸ tada sx sP,
 ako f(s,x)=s i sA¸ tada sx s, sxP.
Tada je skup svih nizova koje prepoznaje automat A jednak jeziku L(G) generisanom
gramatikom G.

Primjer: Automatu A koji prepoznaje sve nizove nad a,b takve da sadrže neparan broj
a, zadatom dijagramom prelaza
b b
a

0 1
a
odgovara sljedeća gramatika G=(N, T, P, *):
N=0, 1, T=a, b, *=0 i P= 0a1, 0a, 0b0, 1a0, 1b1, 1b .
Obrnuto, ako je zadata neka regularna gramatika G, onda se konstrukcija automata A
takvog da je Ac(A)=L(G), ne može izvesti direktno.
35
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Regularnoj gramatici G se može, prvo, dodijeliti tzv. nedeterministički konačni automat


NA takav da je Ac(NA)=L(G).

Def. Nederministički konačni automat NA sastoji se od U,S,A, * i funkcije prelaza oblika


f: S  U  PS tj. f(s,u)=sPS, gdje je PS partitativni skup skupa stanja S.

Znači da automat NA, delovanjem ulaza u na stanje s, prelazi u jedno od stanja iz


podskupa stanja s tj. stanje u koje će NA preći nije jednoznačno određeno. Podskup s
može biti i prazan.

Primjer: NA=(U, S, f, A, *) je određeno sa U=a, b, S=*, C, F, A= F i funkcijom f
definisanom sa

U f
a b
S
 C 

C  C, F
F  

ili dijagramom prelaza

b b

a b
 C F

Tvrdnja: Neka je G=(N, T, P, *) regularna gramatika i NA nedeterministički konačni


automat kod koga je U=T, S=NF, gdje je FNT, AF i
f  s, u    s ' s  us '  P   F s  u  P .
Tada je skup svih nizova koje prepoznaje NP jednak jeziku L(G).

Primjer:
Zadata je G=(N, T, P, *) sa T=a, b, N=*, C, * kao početnim slovom i pravilima P=
*b*, *aC, CbC, Cb.
Nederministički automat NA koji odgovara ovoj gramatici je dat u prethodnom primjeru
tj. njegov dijagram prelaza je:
b b

a b
 C F

36
PANEVROPSKI UNIVERZITET APEIRON FAKULTET POSLOVNE INFORMATIKE

Svaki nedeterministički automat se može transformisati u ekvivalentni deterministički


automat.

Tvrdnja: Neka je NA=(U, S, f, A, *) nedeterministički konačni automat i neka je S =PS,


 , akoje X  

U=U, *=*, A= xSx A  i f(X,x)=   f ( s, x ), ako je X  

 sX
Tada je konačni automat A=(U, S, f, A, *) ekvivalentan automatu NA.

Primjer: Automat A=(U, S, f, A, *), ekvivalentan automatu NP iz prethodnog
primjera, može se definisati na sljedeći način:
U=a,b, S=, *, C, F, *, C, *, F, C, F, *, C, F,
A= F, *, F, C, F, *, C, F, *= * , a funkcija f se može definisati
dijagramom prelaza:
b
b

a a
{  *} {C} {  *,C,F}

a a a
b a b
 b
{  *,F} b {  *,C}

a
a
b

{ C ,F} b
{ F}

Pošto, polazeći od * A očigledno nikada ne može doći u stanja *, F, *, C,
*,C, F i  F, tada se dijagram prelaza može konačno redukovati na:

b
b
a
b
a b 
{  *} {C} { C,F}

Ovako konstruisani automat A prepoznaje sve nizove koje generiše gramatike G iz


prethodnog primjera.

37

You might also like