0% found this document useful (0 votes)
102 views54 pages

Elementi Matematičke Logike

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 54

II

ELEMENTI MATEMATIKE LOGIKE

Tradicionalno, za logiku se kae da je umetnost rezonovanja.


Rezonovanje se sastoji u graenju lanaca jezikih entiteta u obliku: ova
relacija ... sledi iz .... Jeziki entiteti koji ulaze u ovu vrstu
rezonovanja nazivaju se sudovima ili iskazima, tj. entiteti koji odraavaju
kompletno miljenje, ili stanje stvari. Ove sudove nazivamo
deklarativnim. Znai, sa take gledita prirodnog jezika, naa klasa
prihvatljivih jezikih objekata je neto redukovana. Na sreu ova klasa je
dovoljno iroka sa stanovita interesa matematike. Sentence ili iskazi koje
imamo na umu su oblika: 25 je potpun kvadrat, postoji samo jedan
prazan skup, ... .
U prvom poglavlju dajemo osnovne pojmove formalnih teorija. U
drugom poglavlju izuavamo jednostavniju matematiku logiku-logiku
iskaza (ili raun iskaza). U treem, razmatramo mnogo optiji
sistem-logiku prvog reda (ili raun predikata prvog reda). etvrto
poglavlje je centralno poglavlje i u njemu izuavamo metod rezolucije,
koji je osnovni princip zakljuivanja pri implementacijama predikatskog
rauna prvog reda na raunaru. U petom poglavlju bavimo se vezom
logikog programa i PROLOG programa.

14

II Elementi matematike logike

1. FORMALNE TEORIJE
Matematika se snano razvija od XVII veka. U tom razvoju
nastaju brojne matematike discipline i svaka od njih ima svoje
poddiscipline, tako da danas u komunikaciji, dva matematiara,
istraivaa iste matematike discipline, esto nisu u stanju da razumeju
prostor istraivanja jedan drugom. Ono to je osnovno za sve
matematike discipline je da se one bave dokazima, i za njih
karakteristino je sledee: postoje osnovni pojmovi koji se ne definiu i
osnovna tvrenja (aksiome) koja se ne dokazuju. Sve ostale pojmove i
tvrenja izvodimo na osnovu polaznih.
Teorija koja je najstroija u postavkama i dokazima, ak do te
mere da se moe implementirati na raunaru, jeste formalna teorija.
U ovom delu uvodimo neke osnovne pojmove koje emo koristiti
u daljem tekstu.
Azbuka je konaan skup bilo kakvih nedeljivih simbola. Simbol
je nedeljiv ako se ne moe dobiti spajanjem bilo kojih simbola.
Re nad azbukom A je bilo koji konaan niz simbola azbuke A.
Skup svih rei nad azbukom A oznaimo sa A*. I prazna re, u oznaci ,
pripada skupu A*. A + je skup rei iz kojeg iskljuujemo praznu re . Za
svaku re iz skupa A* uvodimo pojam duine rei, u oznaci ||, koja je
jednaka broju simbola .
Definicija 1.
Formalna teorija je ureena etvorka = ( A, F , Ax , P ) gde
je:
A azbuka
F neki podskup skupa svih rei nad azbukom A koje
nazivamo
formulama (pri tome je dat efektivan postupak za
odluivanje
da li neka re jeste ili nije formula)
Ax podskup skupa formula koji nazivamo aksiomama
P skup pravila izvoenja koja su neke relacije nad skupom
F ,..., Fn
formula. Zapisujemo ih u obliku R = 1
i kaemo:
F
"iz
formula F1 ,..., Fn po pravilu R izvodimo formulu F ".

II Elementi matematike logike

15

P r i m e r 1. Teorija je definisana na sledei nain:


Azbuku ine slova a, b.
Formule su sve rei nad azbukom.
Aksioma je formula b.
Pravila izvoenja

su (1)

ab

i (2)

, gde je proizvoljna
b

formula teorije.
Poemo li od aksiome b i ako primenimo dva puta pravilo (1) i jednom
pravilo (2) dobijamo re aabbbb, to krae zapisujemo a2b4. Primetimo
da istu re moemo dobiti polazei od aksiome b i primenjujui prvo
pravilo (2), pa dva puta pravilo (1).
Definicija 2.
Dokaz u formalnoj teoriji je svaki konaan niz formula
F1 , F2 ,..., Fk takav da je svaka formula u njemu ili aksioma ili
je dobijena primenom nekog od pravila izvoenja na
prethodne formule u nizu. Duina dokaza F1 , F2 ,..., Fk je broj
k. Dokaz iz hipoteza H1 ,..., Hn u formalnoj teriji je svaki
konaan niz formula takav da je svaka formula u njemu ili
aksioma ili neka od hipoteza H1 ,..., Hn ili je dobijena
primenom nekog od pravila izvoenja na prethodne formule u
nizu.

Definicija 3.
Teorema F formalne teorije , u oznaci

F , je svaka

formula koja je poslednja formula nekog dokaza. Formula F


je izvedena iz hipoteza H1 ,..., Hn u formalnoj teoriji , u

oznaci H1 ,..., Hn |

F , ako je F poslednja formula nekog

dokaza iz hipoteza H1 ,..., Hn u teoriji .

U prethodnom primeru teoreme formalne teorije su sve rei


oblika a nb m , m > n 0.
Jedan od osnovnih problema formalnih teorija je opis svih
teorema neke formalne teorije. Na osnovu definicije formalne teorije
(naroito pravila izvodjenja) esto se lako moe uoiti kog oblika su

16

II Elementi matematike logike

teoreme konkretne formalne teorije. Medjutim, to nije dovoljno. Mora se


i dokazati da su sve teoreme formalne teorije upravo uoenog oblika, ali i
da su sve formule uoenog oblika teoreme formalne teorije. Ovi dokazi se
najee izvode korienjem indukcije.
P r i m e r 2. Opiimo sve teoreme formalne teorije iz Primera 1.
Pokuajmo prvo da uoimo oblik svih teorema ove teorije. Prva formula
u dokazu mora biti aksioma, a sve ostale rei dobijamo primenom pravila
izvoenja (1) i (2) (pogledaj sliku 5.).
b (aksioma)
(2) b2
(2) b3

(1) ab3

ab2 (1)
(2) ab3

(1) a2b3

............................
sl. 5.

Ve moemo uoiti da su teoreme oblika anbm gde vai


m > n 0 . esto teoreme u teoriji mogu imati vie dokaza razliitih
duina. Ako ne napomenemo drugaije pod dokazom podrazumevamo
dokaz sa najkraom duinom.
Dokaimo sada sledee tvrdjenje: Formula je teorema formalne teorije
ako i samo ako je oblika (*) anbm gde vai m > n 0.
(=>) Dokazujemo prvo da su sve teoreme formalne teorije oblika (*).
Dokaz izvodimo indukcijom po duini dokaza u formalnoj teoriji :
Ako je teorema formalne teorije dobijena dokazom duine 1, onda
ona mora biti jednaka aksiomi b. Aksioma b je zaista oblika (*), gde je
n=0, m=1.
Pretpostavimo da svaka teorema sa dokazom duine manje od k jeste
oblika (*).
Dokaimo da teorema sa dokazom duine k ima oblik (*). Neka je
teorema dobijena dokazom duine k. Tada je ona mogla biti dobijena
iskljuivo primenom pravila (1) ili pravila (2) na neku teoremu 1 sa
dokazom duine manje od k. Za 1 vai indukcijska hipoteza, pa je 1
oblika a n b m , m > n 0. Tada teorema mora biti oblika a n b m+1 ili

II Elementi matematike logike

17

a n+1b m+1 .
(<=) Sada dokazujemo da su sve formule oblika (*) teoreme formalne
teorije . Dokaz izvedimo indukcijom po duini formule oblika (*).
Formula (*) duine 1 je re b a to je aksioma teorije.
Pretpostavimo da sve rei oblika (*) sa duinom manjom od k jesu
teoreme teorije. Neka je re oblika (*) duine k. Dokaimo da je
teorema teorije. Ako je n = 0 , tada je =bk=bk-1b=1b. Po indukcijskoj
hipotezi za 1 postoji dokaz. Dopunimo li taj dokaz formulom
dobijenom iz 1 primenom pravila (1), dobijamo da je teorema teorije.
Ako je n>0, tada je =aan-1bm-1b=a1b , 1 je re duine k-2 pa je po
indukcijskoj hipotezi teorema formalne teorije . Primenom pravila (2) na
1 dobijamo . Time smo dokazali da je teorema formalne teorije .
Vebanje:
1. U narednim primerima azbuka A={a, b}, formule su sve rei nad
azbukom A, a grka slova oznaavaju proizvoljne formule teorije. Odredi
teoreme teorije:
a) Aksima je "a", a pravila izvoenja su:


,
a b

b) Aksima je b , a pravila izvoenja su:


,
a b

c) Aksima je b , a pravila izvoenja su:

,
b b
d) Aksiome su a i b , a pravila izvoenja su:

ab ba
,
,
,
ab ba ba ab
e) Aksiome su aa i bb a pravila izvoenja su:
, ab ba
,
,
ba ab
f) Aksioma je ab, a pravila izvoenja su:


,
,
ab

18

II Elementi matematike logike

g) Aksiome su "a" i "b", a pravila izvoenja su:

,
a a b b

2. Definisati formalnu teoriju ije su teoreme sve rei nad azbukom {a,b}
takve da se slovo a pojavljuje paran broj puta.
3. Definisati formalnu teoriju ije su teoreme sve rei nad azbukom {a,b}
takve da se slovo a pojavljuje paran broj puta, a slovo b neparan broj
puta.

II Elementi matematike logike

19

2. LOGIKA ISKAZA
2.1. ISKAZNE FORMULE
U logici iskaza interesuju nas tvrenja koja mogu biti ili lana ili
istinita. Svako takvo tvrenje nazivamo iskazom. Primeri iskaza su:
Sneg je beo, Paralelogram je etvorougao i suprotne stranice su mu
paralelne,... . Istina ili la dodeljena nekom iskazu je istinitosna
vrednost tog iskaza. Oznaimo istinu simbolom I, a la simbolom
. Polazei od iskaza moemo graditi sloene iskaze vezujui ih reima
ne, i, ili, ako ... onda ..., ... ako i samo ako ... . Prethodne veze nazivamo
logikim operacijama negacije, konjunkcije, disjunkcije, implikacije,
ekvivalencije (redom), i oznaavamo ih:
ne ....

... i ...

... ili ...

Ako ... onda ...

... ako i samo ako ...


.
Kada logikim operacijama gradimo sloene iskaze njihova
istinitosna vrednost zavisi iskljuivo od istinitosne vrednosti delova i
primenjenih logikih operacija. Navedene logike operacije definiemo
tablicama:
I
I I

I
I
I

I
(1)

I
I
I

I
I

Svaki iskaz moemo razloiti na najelementarnije iskaze koji su nedeljivi


u smislu primene logikih operacija. Takve iskaze nazivamo atomima.
Radi lakeg istraivanja osnovnih logikih operacija uvodimo pojmove
iskazna slova i iskazne formule.

20

II Elementi matematike logike

Definicija 4.
Iskazna slova su p, q, r,...(moe i sa indeksima). Logike
konstante su I i .
Definicija 5.
(i) Iskazna slova su iskazne formule (to su najkrae, atomske,
formule - atomi).
(ii) Ako su A i B iskazne formule, tada su:
A, (AB), (AB), (AB), (AB)
iskazne formule.
(iii) Iskazne formule nastaju konanom primenom pravila (i) i
(ii).
Napomena: Formule koje uestvuju u graenju iskazne formule nazivamo
podformulama date formule.
Jasno je da prethodnom definicijom ne moemo za formule dobiti
(A ) ili ( B) ili AB. Formula je ((A B) C), za formule (A B) i C
kaemo da su podformule. Da bi zapis bio pregledniji uvodimo dogovore
o brisanju zagrada:
1. spoljne zagrade u formuli se briu
2. ostale zagrade se briu u skladu sa sledeim prioritetima logikih
operacija:

,
, .
Sada, prethodni primer formule moemo zapisati A B C.
Ako su zadate istinitosne vrednosti za atome p i q tada vrednosti
formula p, pq, p q, pq, p q moemo odrediti na osnovu tablice
(1).
Posmatrajmo formulu A: p q (r s). Neka su istinitosne
vrednosti atoma p, q, r i s jednake I, , I, redom. Tada moemo
izraunati istinitosnu vrednost formule A na osnovu tablice i ona je
istinita (I). Uzmemo li istinitosne vrednosti za p, q, r i s redom I, I, , ,
formula A je lana (). Pridruivanje istinitosnih vrednosti I, I, ,
atomima
p, q, r , s, redom, nazivamo interpretacijom formule A. Jasno je da
interpretacija formule A ima onoliko koliko ima naina za dodeljivanje

II Elementi matematike logike

21

simbola I, atomima p, q, r , s, a to je 16 interpretacija.


Definicija 6.
Interpretacija I iskazne formule je preslikavanje skupa atoma
te formule u skup I, .
Neka je I interpretacija formule A i neka je p iskazno slovo formule A. Iz
definicije je jasno da I(p){I, }, interpretaciju u prethodnom primeru
moemo zapisati
p q r s

I =
Istinitosnu
vrednost iskazne formule F, u
.

interpretaciji I, izraunavamo na
oznaci (F), u
sledei nain:
1. Ako je formula F iskazno slovo p onda je (F)=I(p).
2. Ako je formula F jednog od oblika A B, A B, A B, AB,
A, vrednost formule izraunavamo redom (A) (B), (A) (B), (A)
(B), (A) (B), (A).
Definicija 7.
Iskazna formula A je tana pri interpretaciji I, u oznaci IA,
ako je njena vrednost I u interpretaciji I. Tada kaemo da je I
model formule A. Ukoliko je pri interpretaciji I vrednost
formule kaemo da je I kontramodel.
Formulu p (q p) pri svim interpretacijama ima vrednost I. Za takve
formule kaemo da su tautologije.
Definicija 8.
Formula A je tautologija, u oznaci A, ako je tana pri svakoj
interpretaciji. Formula A je kontradikcija (logiki
protivurena) ako je netana pri svim interpretacijama.
Oznaimo sa proizvoljnu tautologiju, a sa proizvoljnu
kontradikciju.
Teorema 2.1.1. Neka su A, B, C proizvoljne iskazne formule. Sledee
formule su tautologije:
1. (A B) (A B) (B A)
2. (A B) A B

22

II Elementi matematike logike

3. A A
4. A (B A)
5. (A (B C)) ((A B) (A C))
6. A (A B) B
7. (A B B) A
8. a) A B B A,
b) A B B A
9. a) A (B C) (A B) C
b) A (B C) (A B) C
10. a) A (B C) (A B) (A C)
b) A (B C) (A B) (A C)
11. a) A (B A) A
b) A (B A) A
b) A A
12. a) A A
13. a) A
b) A
14. a) A A
b) A A
15. a) (A B) A B
b) (A B) A B.
Zahvaljujui asocijativnim zakonima (tautologije 9. a) i 9. b))
zagrade u formulama (A B) C i A (B C) se mogu izostaviti ili
optije, bez dvosmislenosti, moemo zapisati A1 ... An. Isto vai za A1
.... An .
Definicija 9.
Kaemo da su formule A i B ekvivalentne ili A je
ekvivalentno sa B, u oznaci AB, ako se istinitosne vrednosti
formula A i B poklapaju pri svakoj interpretaciji I formula A i
B.
Sledee svojstvo iskaznih formula esto koristimo.
Teorema 2.1.2. Neka je F(A) formula ija je podformula A. Neka je F(B)
formula koja nastaje iz prethodne zamenom svih pojavljivanja formule A
formulom B. Tada ako je A B tautologija onda je i F(A) F(B)
tautologija.
D o k a z: Neka je I interpretacija formule F(A) F(B). Kako je A B
tautologija, vrednosti pri toj interpretaciji formula A i B su jednake, iz
ega zakljuujemo da su i vrednosti formula F(A) i F(B) jednake, pa je u
proizvoljnoj interpretaciji I ( F(A) F(B)) = I.

II Elementi matematike logike

23

Na osnovu Teoreme 2.1.2. uvodimo pojam ekvivalentnih transformacija:


Neka je F(A) formula ija je podformula A. Neka je F(B) formula
koja nastaje iz prethodne zamenom svih pojavljivanja formule A
formulom B. Za formulu F(B) kaemo da je dobijena ekvivalentnim
transformacijama iz formule F(A) ako je formula A B tautologija.
Jasno je na osnovu Teoreme 2.1.2. da ekvivalentnim transformacijama
dobijamo ekvivalentne formule.

Definicija 10.
Literal je atom ili negacija atoma.

Definicija 11.
Kaemo da je formula A u konjunktivnoj normalnoj formi
ako je oblika A1 A2 ... An, n 1 i svaka formula A1, A2,
..., An je disjunkcija literala. Formula A je u disjunktivnoj
normalnoj formi ako je oblika A1 A2 ... An, n 1 i svaka
formula A1, A2, ..., An je konjunkcija literala.
Svaka formula moe biti transformisana u konjunktivnu normalnu
formu (disjunktivnu normalnu formu), pomou ekvivalnetnih
transformacija.
Sledeim
algoritmom
opisujemo
postupak
transformisanja proizvoljne formule u njoj odgovarajui oblik
disjunktivne (konjunktivne) normalne forme.
Korak 1: Koristei tautologije:
(A B) A B
(A B) (A B) (B A)
eliminiu se iz formule logike veze i .
Korak 2: Viestrukim korienjem zakona dvojne negacije
1. A A
i De Morganovih zakona
2. (A B) A B
3. (A B) A B
dovodimo negaciju neposredno do atoma.
Korak 3: Viestrukim korienjem zakona
1. A (B C) (A B) (A C)
dovodimo formulu do konjunktivne normalne forme.

24

II Elementi matematike logike

Viestrukim korienjem zakona


2. A (B C) (A B) (A C)
dovodim formulu do disjunktivne normalne forme.
P r i m e r 3. Nai konjunktivnu normalnu formu formule
p (q r) s.
p (q r) s ( p (q r)) s
p (q r) s
((p q) (p r)) s
(p q s) (p r s).
P r i m e r 4. Dokaimo protivurenost formule (p q) q p
transformacijom u disjunktivnu normalnu formu.
(p q) q p (p q) q p
(p q p) (q q p)

2.2. LOGIKE POSLEDICE


esto nam je, kako u matematici tako i u obinom ivotu, potrebno da
zakljuimo da li je neko tvrenje posledica nekih drugih tvrenja.
P r i m e r 5. Pretpostavimo, da dete je veselo ako se mama igra sa njim.
Takoe, pretpostavimo da ako dete neto boli onda ono nije veselo.
Pretpostavimo da se mama igra sa detetom. Iz prethodnih tvrenja
moemo zakljuiti da dete nita ne boli.
Da bi proverili prethodno zakljuivanje uvedimo oznake:
p: Mama se igra sa detetom.
q: Dete je veselo.
r: Dete nita ne boli.
U naem primeru imamo sledea tvrenja:
1. p q
2. r q
3. p

II Elementi matematike logike

25

4. r.
Treba da pokaemo da je 4 istinito ako je 1 2 3 istinito. Naimo za
formulu (p (p q) (r q)) disjunktivnu normalnu formu:
(p (p q) (r q)) (p (p q) (r q))
((p p) (p q)) (r q)
( (p q)) (r q)
(p q) (r q)
(p q r) (p q q)
(p q r) (p )
(p q r)
p q r.
Sada vidimo da je pri svakoj interpretaciji u kojoj je formula 1 2 3
istinita, istinita i formula p q r, tj. istinito je tvrenje 4.
Uvedimo sada preciznu definiciju kada je neka formula logika posledica
nekog skupa formula.
Definicija 12.
Formula A je logika posledica skupa formula A1, A2, ..., An, u
oznaci A1, A2, ..., An A, ako u svakoj interpretaciji I pri
kojoj su formule A1, A2,..., An istinite sledi da je i formula A
istinita. Formule A1, A2, ..., An nazivamo aksiomama za A.
Teorema 2.2.1. Neka su date formule A1, A2, ..., An i formula A. Tada, A
je logika posledica formula A1, A2, ..., An ako i samo ako je
formula A1 A2 ... An A tautologija.
Dokaz:
() Neka je A je logika posledica formula A1, A2, ..., An i neka je
I proizvoljna interpretacija formule A1 A2 ... An A. Ukoliko su
sve formule A1, A2, ..., An istinite pri toj interpretaciji, onda je istinita i
formula A jer je njihova logika posledica formula. Ako je neka
formula iz skupa A1, A2, ..., An lana, onda je formula A1 A2 ... An
lana, tj. formula A1 A2 ... An A je istinita. Znai formula A1 A2
... An A je istinita u svim interpretacijama.
() Neka je formula A1 A2 ... An A tautologija. Tada, u
svim interpretacijama u kojima je istinita formula A1 A2 ... An
istinita je i formula A. Znai, A je logika posledica formula A1, A2, ..., An

26

II Elementi matematike logike

Teorema 2.2.2. Neka su A1, A2, ..., An , A formule. Formula A je


logika posledica formula A1, A2, ..., An ako i samo ako je
formula A1 ... An A protivurena.
D o k a z : Prema Teoremi 2.2.1. formula A je logika posledica formula
A1, A2, ..., An ako i samo ako je formula A1 A2 ... An A tautologija.
Znai ( A1 A2 ... An A) je protivurena formula. Ekvivalentnim
transformacijama dobijamo:
( A1 A2 ... An A) ( ( A1 A2 ... An) A)
A1 A2 ... An A.

P r i m e r 6. Sinoptiar je na prognozi vremena za sutra rekao sledee:


(1) Sutra e biti kia ili vetar ili sneg.
(2) Ako bude kia sa vetrom padae i sneg.
(3) Ako snega ne bude, bie vetrovito bez kie.
Kakvom zakljuku vode njegova tvrenja?
Uvedimo oznake:
p: Sutra e padati kia.
q: Sutra e duvati vetar.
r: Sutra e padati sneg.
Koristei uvedene oznake tvrenja sinoptiara moemo zapisati na
sledei nain:
(1) p q r
(2) p q r
(3) r q p.
Koristei tautologije iz Tvrenja 2.1.1. dobijamo sledei niz
ekvivalentnih formula:
(p q r) (p q r) (r q p)
(p q r) (p q r) (r (q p))
(p q r) (p q r) (r q) (r p)
(r q p) (r q) (r p q) (r p)
(r q) (r p)
r (q p).
Znai da je prognoza sinoptiara ekvivalentna tvrenju: padae sneg ili e
biti vetrovito bez kie.

II Elementi matematike logike

27

P r i m e r 7. Pokazati da je sledee zakljuivanje ispravno:


Ako je predstava dobra onda nije lo tekst ili su dobri reditelj i glumci.
Predstava je dobra. Nisu dobri glumci. Znai tekst nije lo.
Uvedimo oznake:
p: Predstava je dobra.
q: Tekst je lo.
r: Dobar je reditelj.
s: Dobri su glumci.
F1: Ako je predstava dobra onda nije lo tekst ili su dobri reditelj i
glumci.
F2: Predstava je dobra.
F3: Nisu dobri glumci.
F4: Tekst nije lo.
Treba da dokaemo da je F4 logika posledica F1, F2 i F3, a njih moemo
krae zapisati:
F1: p (q (r s))
F2: p
F3: s
F4: q.
Znai treba proveriti da li je formula (p (q (r s))) p s q
tautologija.
Prvi nain:
Pretpostavimo da formula nije tautologija, znai
((p (q (r s))) p s)=I
i (q)=
tj. (1) (p (q (r s)))=I
(2) (p)=I
(3) (s)= I
(4) (q)= I
(5) (q (r s))= I
iz (1) i (2)
(6) (r s)= I
iz (4) i (5)
(7) (r)= I iz (6)
(8) (s)= I
iz (6)
(9) (s)=
iz (3)
Ako polazna formula ne bi bila tautologija onda bi iskaz s morao da ima
u interpretaciji istovremeno I i vrednosti ( (8) i (9) ). Kako je to
nemogue polazna formula mora biti tautologija.

28

II Elementi matematike logike

Drugi nain:
Formulu (p (q (r s))) p s q napiimo u konjunktivnoj
normalnoj formi.
(p (q (r s))) p s q
(p q (r s)) p s q
((p q (r s)) p s) q
(p q (r s)) p s q
U prevoenju formule na konjunktivnu normalnu formu koristimo
intenzivno zakone distributivnosti prema . Kako distributivnost esto
koristimo u radu sa realnim brojevima, iskoristimo steene navike i u
ovakvim primerima. Kad god treba transformisati formulu u
konjunktivnu formu, operacija treba ' jae da okuplja ' nego to '
okuplja '. To znai, da je zgodno operaciju zameniti sa ' . ', a operaciju
sa '+'. Obratno radimo kada je u pitanju disjunktivna normalna forma.
Kako je polazna formula ekvivalentna formuli
(p q (r s)) p s q
njene dalje ekvivalentne transformacije imale bi sledei zapis:
(p + q + (r . s)) . p . s . q
(p + q + r . s) . p . s . q
p . p . s . q + q . p . s . q + r . s. p . s . q
(p p s q) (q p s q) (r s p s q)
( s q) ( p s) ( r p q)

P r i m e r 8. Dokazati da je sledee zakljuivanje ispravno: Ako je Sanja


dobra onda nije nervozna. Sanja je nervozna ako joj rastu zubii. Sanji
rastu zubii. Zakljuujemo da Sanja nije dobra.
Uvedimo sledee oznake:
p: Sanja je dobra.
q: Sanja je nervozna.
r: Sanji rastu zubii.
F1: Ako je Sanja dobra onda nije plaljiva.
F2: Sanja je plaljiva ako joj rastu zubii.
F3: Sanji rastu zubii.
F4: Sanja nije dobra.

II Elementi matematike logike

29

F1: p q
F2: r q
F3: r
F4: p
Da bi smo pokazali da je formula F4 logika posledica formula F1, F2 i
F3, dovoljno je da pokaemo da je formula F1 F2 F3 F4
protivurena. Dokaz izvodimo prevodei formulu F1 F2 F3 F4 u
disjunktivnu normalnu formu.
F1 F2 F3 F4
(p q) (r q) r p
(p q) (r q) r p
(p + q) . (r + q) . r . p
(p . p + q . p) . (r . r + q . r)
( + q . p) . ( + q . r)
q . p . q . r
q p q r
q q p r
pr

2.3. ISKAZNI RAUN


Iskazna logika moe se zadati formalnom teorijom koju zovemo iskazni
raun.
Alfabet ove teorije ine iskazna slova, logiki veznici , i zagrade (, ).
Formule ove teorije su sve iskazne formule u kojima uestvuju logiki
veznici iz alfabeta.
Aksiome ove teorije su:
A1: A (B A)
A2: (A (B C)) ((A B) (A C))
A3: (A B) (B A)
pri emu su A, B, C proizvoljne formule.
A, A B
Pravilo izvoenja je
modus ponens.
B

30

II Elementi matematike logike

Logiki veznici , , mogu se uvesti na sledei nain:


A B zamena za (A B)
A B zamena za A B
A B zamena za (A B) (B A).
Moe se dokazati teorema o potpunosti iskaznog rauna koju zbog
opirnosti dokaza ne dokazujemo.
Teorema 2.3.1. Formula A je teorema iskaznog rauna akko je
tautologija.
Ova teorema se naziva teorema o potpunosti iskaznog rauna.
Kako su sve aksiome tautologije, i kako primenom pravila modus ponens
na tautologije dobijamo tautologije, jasno je da su sve teoreme
tautologije. Dokaz tvrenja da su sve tautologije teoreme iskaznog rauna
znatno je sloeniji i neemo ga navoditi.
Vebanje:
1. Nai modele i kontramodele formula:
a) (p q) (r s) ((p r) (q s))
b) (p q) (r s) ((p r) (q s)).
2.Proveriti da li su sledee formule tautologije:
a) (p q) (r s) (p r q s)
b) (p q) (r s) (p r q s)
c) (p q) (q p)
d) (p q r r) (p q).
3. Nai konjunktivnu i disjunktivnu normalnu formu formula:
a) (( p q) (q r)) (( p q) (q r))
b) p s (q p) (s r).
4. Proveriti da li su formule tautologije svoenjem na konjunktivnu
normalnu formu:
a) (p q r) ((p r) (q r))
b) (p (q r)) ((p q) (p r))
c) (p q) (p q)
d) (q (p r)) ((p q) (r p)).
5. Dokazati:

II Elementi matematike logike


a) p q, q p p q
b) p q q p
c) p q, r s p r q s
d) p q, r s p r q s.

31

32

II Elementi matematike logike

3. LOGIKA PRVOG REDA


Posmatrajmo sledee rasuivanje:
A: Svi matematiari vole da itaju stripove.
B: Nenad je matematiar.
Znai:
C: Nenad voli da ita stripove.
Sa stanovita logike iskaza, ne moemo rei da je tvrenje C logika
posledica tvrenja A i B. Intuitivno gledajui prethodno rasuivanje je
ispravno.
Polazni elementi u iskaznoj logici su atomi. Iz atoma se pomou
logikih operacija , , , , grade sloene iskazne formule. I u
logici prvog reda, polazne formule su atomske formule. Npr. reenicu
Nenad je matematiar, moemo zapisati
matematiar(Nenad).
Analogno, X voli Y moemo zapisati voli(X,Y); X je vei od Y
vei(X,Y); 4 je vei od 3, tada zapisujemo vei(4,3). Taka B je
izmeu taaka A i C, moemo zapisati izmeu(A,B,C). Relacija
matematiar je unarna, voli i vei su binarne, dok je relacija izmeu
ternarna.
U logici prvog reda moemo koristiti i operacije. Npr. za prirodan
broj X imamo samo jednog naslednika X+1. Znai imamo operaciju
naslednik, a vrednost naslednik(X) je X+1. Svaki ovek ima samo jednog
oca, time imamo operaciju otac. Svakom oveku moemo pridruiti
mesto roenja, pa uvedimo operaciju mesto_roenja, a mesto_roenja(X)
uzima vrednost mesta gde je osoba X roena. U prethodnim primerima
opisali smo takozvane unarne operacije, ili operacije koje imaju jedan
argument. Meutim, operacije mogu biti i binarne, ternarne, ..., n-arne.
Ako brojevima X i Y pridruimo njihov zbir X+Y, imamo binarnu
operaciju zbir, iju vrednost za argumente X i Y oznaavamo sa zbir(X,Y).
Reenicu Nenadov otac voli Nenada moemo zapisati
voli(otac(Nenad), Nenad). Reenicu X+1 je vei od X, moemo
zapisati vei(naslednik(X), X).
U logiku prvog reda uvodimo veznike svaki ( ) i neki ( ). Prvi
nazivamo univerzalnim, a drugi egzistencijalnim kvantorom. Ako sa X
oznaimo promenljivu tada ( X) tumaimo za sve X, ( X) tumaimo
za neki X, postoji X", bar za jedno X. Sada tvrenje svaki otac voli
svoje dete moemo zapisati ( X)voli(otac(X),X). Reenicu "postoji broj
koji je vei od broja 3", moemo zapisati ( X)vei(X,3). Reenicu za

II Elementi matematike logike

33

svaki X postoji Y koji je vei od njega zapisujemo ( X)( Y)vei(Y,X).

3.1. Termi i formule


U graenju formula uestvuju etiri grupe simbola:
-logiki simboli , , , , , ,
-promenljive X, Y, Z, X1, Y1, Z1, ..., Xn , Yn , Zn
-pomoni simboli ( , ) (zagrade i zapeta)
-Jezik J koji ine tri skupa simbola:
a) Skup relacijskih znakova (simboli koji oznaavaju relacije) i
svakom relacijskom znaku je dodeljen prirodan broj n - duina
relacijskog znaka.
b) Skup operacijskih znakova i svakom operacijskom znaku dodeljen
je broj n - duina operacijskog znaka.
c) Skup znakova konstanti.
Obino za relacijske znakove koristimo slova grkog alfabeta , , ...,
za operacijske znakove slova f, g, h, ..., a za znakove konstanti koristimo
poetna slova abecede a, b, c, ... .
Prve tri grupe simbola koristimo u svim formulama, dok se jezik J
menja od formule do formule.
Definicija 13.
(i) Znakovi za konstante jesu termi.
(ii) Znakovi za promenljive jesu termi.
(iii) Neka je f operacijski znak duine n i neka su t1, t2, ...,tn
termi. Tada je f(t1, t2, ..., tn) term.
(iv) Termi nastaju konanom primenom pravila (i), (ii) i (iii).
Kako su X i Y termi, onda su zbir(X,Y), zbir(zbir(X,Y),Z), naslednik(X),
otac(X), otac(otac(X)) termi.
Definicija 14.
Neka je relacijski znak duine n. Neka su t1, t2, ..., tn termi,
tada je (t1,t2, ...,tn) atomska ili elementarna formula.
Atomsku formulu ili njenu negaciju nazivamo literalom.
Formule logike prvog reda rekurzivno se grade na sledei nain.

34

II Elementi matematike logike

Definicija 15.
(i) Atomska formula jeste formula.
(ii) Ako su A i B formule tada su A, (A B), (A B),
(A B), (A B) formule.
(iii) Ako je A formula i X promenljiva, tada su ( X)A i ( X)A
formule.
(iv) Formule nastaju konanom primenom pravila (i), (ii) i
(iii).
Kao i u logici iskaza uvodimo dogovore o brisanju zagrada:
1. spoljne zagrade u formuli se briu
2. ostale zagrade se briu u skladu sa sledeim prioritetom:
, ,
,
, .
Znai, u formuli ( X)A(X) B(X), kvantor deluje samo na formulu
A(X), dok u formuli ( X)(A(X) B(X)) kvantor deluje i na formulu
A(X) i na formulu B(X).
Pojavljivanje promenljive u formuli, koje je pod dejstvom
kvantora, naziva se vezano, a inae je slobodno. Promenljiva u formuli je
slobodna ako ima bar jedno slobodno pojavljivanje, a vezana je ako su joj
sva pojavljivanja vezana. U jednoj formuli ista promenljiva moe dakle
imati i slobodnih i vezanih pojavljivanja.
P r i m e r 9. Neka su vei i relacije duine 2, a naslednik operacija
duine 1 i 1 znak za konstantu. Posmatrajmo formule:
(a) vei(X,Y) vei(naslednik(X),naslednik(Y))
(b) ( X)vei(X,1)
(c) ( X)((X,Y) (X,Y)) (X,X).
Tada, u sluaju (a) sve promenljive u formuli su slobodne, u sluaju (b)
sve promenljive su vezane. U sluaju (c) pojavljivanje promenljive Y u
formuli je slobodno, dok promenljiva X ima dva vezana i jedno slobodno
pojavljivanje, dakle, slobodna je u formuli.
Formulu u kojoj su sve promenljive vezane nazivamo zatvorenom
formulom, a formulu bez kvantora otvorenom formulom.
U prethodnom primeru formula u sluaju (a) je otvorena, a formula u
sluaju (b) je zatvorena. Formula u sluaju (c) nije ni otvorena ni
zatvorena.

II Elementi matematike logike

35

3.2. Interpretacija formula


P r i m e r 10. Posmatrajmo predikatsku formulu:
( X)( Y)((X,Y) (Y,X))
gde je relacijski znak duine 2. Znai jezik J ove formule je J=.
Gornju formulu moemo da protumaimo na razne naine. Uzmimo za
relaciju relaciju jednako, a promenljive X i Y neka uzimaju vrednosti iz
skupa realnih brojeva. Sada prethodna reenica ima znaenje:
Za sve realne brojeve X i Y vai: ako je X=Y onda je Y=X.
Reenicu moemo tumaiti i tako to nam (X,Y) znai osoba X je roak
osobe Y. Tada formula ima sledee tumaenje:
Za sve ljude X i Y vai: ako je X roak Y onda je i Y roak X.
Neka nam (X,Y) znai osoba X voli osobu Y. Tada imamo sledee
tumaenje formule:
Za sve ljude X i Y vai: ako X voli Y onda i Y voli X.
Formula u svakom od prethodnih tumaenja ima i istinitosnu vrednost.
Istinitosna vrednost formule u poslednjem tumaenju je netana, a u
ostalim je tana.
P r i m e r 11. Posmatrajmo formulu:
( X)(X,f(X)).
Jezik formule je relacijski znak duine 2 i operacijski znak f duine 1.
Formulu moemo protumaiti na razne naine.
a) Neka je f operacija koja svakoj osobi pridruuje oca, neka (X,Y) znai
da je X roak Y . Tada gornja formula ima tumaenje:
Za sve ljude X vai: X je roak svom ocu.
b) Neka operacija f preslikava skup realnih brojeva u skup realnih brojeva
tako to svakom realnom broju X pridruuje sliku X2, a relacijski znak
protumaimo kao relaciju . Tada prethodna formula ima tumaenje:
Za svaki realan broj X vai: X X2.
U prvom tumaenju formula je tana, dok je drugom netana (npr. ne
vai za realne brojeve iz intervala (-1,1)).
Moemo zapaziti, da istoj formuli moemo pridruiti razna
tumaenja. Ali kad formuli pridruimo neko tumaenje, onda se u tom
tumaenju moe odrediti da li je ta formula tana ili naetana.

36

II Elementi matematike logike

Definicija 16.
Tumaenje ili interpretacija formule A je ureena dvojka
(D,) gde je D neprazan skup (domen interpretacije) a
preslikavanje jezika J formule A tako da: svakom znaku
konstante jezika J pridruujemo konkretan elemenat skupa
D'; svakom operacijskom znaku f duine n jezika J
pridruujemo neku operaciju f* duine n skupa D (f*:Dn
D); svakom relacijskom znaku duine n jezika J
pridruujemo neku relaciju * duine n skupa D (*Dn).
Znai, interpretacija formule A nije nita drugo do pridruivanje
ureenog para (D,) jeziku J. Ureeni par (D,) oznaavamo velikim
pisanim slovima npr. D.
P r i m e r 12. Formuli
( X)( Y)( (X,Y) (Y,X)),
gde je relacijski znak duine 2 moemo pridruiti interpretacije:
(N, ), (R, ), (N, | ).
Neka je D interpretacija formule F koja ne sadri kvantore. Ako
bi svim promenljivim pridruili neke konkretne elemente skupa D, i ako
bi logike veznike tumaili na uobiajan nain dobili bi iskaze, iju
istinitosnu vrednost moemo odrediti.
Dodeljivanje konkretnih elemenata skupa D slobodnim
promenljivim formule F nazivamo interpretacijom promenljivih formule
F.
Neka je F zatvorena formula i D interpretacija formule F.
Istinitosna vrednost formule F u interpretaciji D izraunava se na osnovu
istinitosnih vrednosti njenih podformula korienjem sledeih pravila:
(A B)=(A) (B)
(A B)=(A) (B)
(A B)=(A) (B)
(A B)=(A) (B)
(A)=(A)
i
(*)
(( X)A(X))=I akko (A(X))=I za sve interpretacije promenljive
X
(( X)A(X))=I akko (A(X))=I za neku interpretaciju promenljive

II Elementi matematike logike

37

X.
Napomena: Jasno je da ako je domen interpretacije konaan skup D={d1,
d2, ..., dn} onda je (( X)A(X))= (A(d1) A(d2) ... A(dn))
i (( X)A(X))= (A(d1) A(d2) ... A(dn)).
Uvodei vrednosti za sluajeve (*), problem zatvorenih formula tretiramo
kao uoptenje iskazne logike.
Neka je F otvorena formula i neka je D interpretacija formule.
Kako izraunati istinitosnu vrednost formule F u interpretaciji D? Kako
tumaimo u matematici neku otvorenu formulu? Ako u skupu realnih
brojeva imamo tvrenje:
Ako je X Y onda je X+1 Y+1.
Ovu reenicu tumaimo da vai za sve realne brojeve X i Y.
Definicija 17.
Formula F nad jezikom J je tana u interpretaciji D, ako je
njena istinitosna vrednost I, ma kako interpretirali slobodne
promenljive formule F. Formula F je zadovoljiva u
interpretaciji D ako postoji interpretacija slobodnih
promenljivih u skupu D, takva da je vrednost formule F pri
toj interpretaciji I. Formula F je netana u nekoj interpretaciji
ako je formula F tana u toj interpretaciji.
Definicija 18.
Ako je formula F tana u interpretaciji D, tada kaemo da je
D model za formulu F i piemo DF. Interpretacija D je
kontramodel za formulu F ako je D model za formulu F.
Neka je X slobodna promenljiva u formuli f(X). Jasno je iz definicije da
vai:
D ( X)f(X) akko D f(X).
U daljem tekstu, ukoliko ne naglasimo drugaije, razmatraemo samo
zatvorene formule.
P r i m e r 13. Neka je data formula:
( X)((X) (X)) ( X)(X) ( X)(X),
naimo neke modele i kontramodele formule.

38

II Elementi matematike logike

1) Posmatrajmo interpretaciju sa domenom N , a relacijskim znacima i


pridruimo:
a)
*(X) akko X je prost broj,
*(X) akko X je neparan broj.
Interpretacija je model formule.
b)
*(X) akko X je paran broj,
*(X) akko X je neparan broj.
Interpretacija je kontramodel.
2) Posmatrajmo interpretaciju sa domenom D=a,b,c, *,* definiimo:
a)

a I

c
I
Interpretacija je model.
b)

a I

b
I
c
I
Interpretacija je kontramodel.
P r i m e r 14. Posmatrajmo sledeu interpretaciju jezika J={a, b, f, }
gde je f operacijski znak duine 1, relacijski znak duine 2, na skupu
D={1, 2}.
1. Konstantama a i b pridruimo redom 1 i 2.
2. Operacijskom znaku f pridruimo operaciju f* koja je definisana na
sledei nain:
X
f*(X)
1
2
2
1
3. Relacijskom znaku pridruimo relaciju * definisanu sledeom
tablicom:
* 1 2
1
I I
2

Nai istinitosne vrednosti sledeih formula nad jezikom J u toj

II Elementi matematike logike

39

interpretaciji:
1) (a,f(a)) (b,f(b))
2) (X)(Y)(Y,X)
3) (X)(Y)((X,Y) (f(X),f(Y))
1) U datoj interpretaciji istinitosna vrednost formule (a,f(a)) (b,f(b))
je
( *(1,f*(1)) *(2,f*(2)) ) = ( *(1,2) *(2,1) ) = (*(1,2))
(*(2,1)) = I = .
2) Neka je X=1, tada ( (Y)*(Y,1) )= I, jer (*(1,1)) = I. Neka je X=2,
tada ( (Y)*(Y,2) ) = I, jer (*(1,2)) = I. Znai data interpretaciji je
model formule (X)(Y)(Y,X).
3) Za X=1 i Y=1 imamo ( *(1,1) *(f*(1),f*(1)) ) = (*(1,1))
((2,2)) = I = , pa je formula (X)(Y)((X,Y) (f(X),f(Y))
netana u datoj interpretaciji.
P r i m e r 15. Ako je pri interpretaciji formule (X)(Y)(X,Y)
(Y)(Y,Y) domen skup R, a relacijskom znaku pridruimo relaciju
(<) dobijamo model (kontramodel).
P r i m e r 16. Formula ( X)( Y)( (X,Y) X=Y) nema kontramodel.
U svakoj interpretaciji (( X)( Y)( (X,Y) X=Y )) = I, jer za sve XD
je ( (X,X) X=X )=I (dakle ( ( Y)((X,Y) X=Y) ) = I ).
Definicija 19.
Za formulu A kaemo da je opte vaea ili valjana formula, u
oznaci A, ako je tana u svim interpretacijama.
Posmatrajmo iskaznu formulu F(p1,..., pn) ija su sva iskazna slova p1,...,
pn. Ako svako pojavljivanje iskaznog slova pi menjamo predikatskom
formulom Ai gde je 1 i n, tada kaemo da je dobijena formula F(A1,
A2, ..., An) izvod iz iskazne formule F(p1, p2, ..., pn).
Teorema 3.2.1. Izvodi iz tautologija su valjane formule.
D o k a z: Neka je formula F(A1, ..., An) izvod iz tautologije F(p1, ..., pn).
Posmatrajmo proizvoljnu interpretaciju D formule F(A1, ..., An). Neka je I
interpretacija tautologije F(p1, ..., pn) u kojoj iskaznom slovu pi
dodeljujemo istinitosnu vrednost formule Ai u interpretaciji D, gde je 1 i

40

II Elementi matematike logike

n. Kako je F(p1, ..., pn) tautologija (F(p1, ..., pn))=I u interpretaciji I,


odnosno (F(A1, ..., An))=I u interpretaciji D.

Definicija 20.
Kaemo da je formula F ekvivalentna sa formulom G, u
oznaci FG ako je F G.
Teorema 3.2.2. Neka je F(B) formula dobijena iz F(A) tako da se sva
pojavljivanja formule A u F(A) menjaju formulom B. Tada vai:
A B onda je F(A) F(B).
D o k a z: Neka je D proizvoljna interpretacija formule F(A) F(B).
Kako je A B, imamo (A)=(B), pa je (F(A))=(F(B)) u
interpretaciji D.
U dokazu valjanosti neke formule esto koristimo Teoremu 3.2.2.
Taj nain dokazivanja nazivamo metod ekvivalentnih transformacija.
Teorema 3.2.3. Sledee formule su valjane:
1. ( X)A(X) ( X)A(X)
2. ( X)A(X) ( X)A(X)
3. ( X)(A(X) B(X)) ( X)A(X) ( X)B(X)
4. ( X)(A(X) B(X)) ( X)A(X) ( X)B(X).
D o k a z:
1. Neka je D interpretacija formule ( X)A(X) ( X)A(X). Tada:
( ( X)A(X) ) = I akko ( ( X)A(X) )=
akko ( A(X) )= za neko X D
akko ( ( X) A(X) )=I.
2. Dokaz izvodimo ekvivalentnim transformacijama:
Kako je
( X)A(X) ( X)A(X)
( sluaj 1.)
imamo
( X)A(X) ( X)A(X) (izvod iz tautologije
(pq)(pq) ).
Znai
( X)A(X) ( X)A(X).

II Elementi matematike logike

41

3. Neka je D interpretacija formule


( X)(A(X) B(X)) ( X)A(X) ( X)B(X).
Tada je:
( ( X)(A(X) B(X) ) =I
akko (A(X) B(X))=I za sve X D,
akko (A(X))=I i (B(X))=I za sve X D,
akko (( X)A(X))=I i (( X)B(X))=I
akko (( X)A(X) ( X)B(X))=I.
Za formulu 4. dokaz preputamo itaocu.

Teorema 3.2.4. Neka je A(X) formula u kojoj je X slobodna promenljiva.


Neka, u formuli B, X nije slobodna promenljiva. Tada su sledee formule
valjane:
1. ( X)A(X) B ( X)(A(X) B)
2. ( X)A(X) B ( X)(A(X) B)
3. ( X)A(X) B ( X)(A(X) B)

4. ( X)A(X) B ( X)(A(X) B).


Teorema 3.2.5. Neka je Y promenljiva koja se ne nalazi u formuli A(X) i
nije slobodna u formuli B(X). Neka je A(Y) formula koja nastaje iz
formule A(X) menjanjem svih pojavljivanja promenljive X promenljivom
Y. Tada su sledee formule valjane:
1. ( X)A(X) ( Y)A(Y)
2. ( X)A(X) ( Y)A(Y)
3. ( X)A(X) ( X)B(X) ( X) ( Y)(A(Y) B(X))
4. ( X)A(X) ( X)B(X) ( X) ( Y)(A(Y) B(X))
5. ( X)A(X) ( X)B(X) ( X)( Y)(A(Y) B(X))
6. ( X)A(X) ( X)B(X) ( X) ( Y)(A(Y) B(X)).

Posmatrajmo formulu
( X)A(X) A(t). (1)
Na prvi pogled izgleda da je formula (1) valjana i da je sledee
rezonovanje ispravno:
Neka je u interpretaciji D formula ( X)A(X) tana. Onda, za
proizvoljan term t mora biti A(t) tano.
Meutim, zakljuivanje je ispravno ali pod odreenim uslovom.
Neka je A(X)(Y)(X,Y), tada ako za term t uzmemo Y dobijamo
formulu

42

II Elementi matematike logike

(X)(Y)(X,Y) (Y)(Y,Y)
(2).
Formula (2) nije valjana (Primer 15.). Uz izvesna ogranienja za term t,
formula (1) jeste valjana. Osnovni previd u naem polaznom rezonovanju
je da zamena X termom t ne sme prouzrokovati proirenje dejstva
nekog od kvantora u formuli A(t).
Potekou prevazilazimo uvodei sledei pojam:
Definicija 21.
Zamena promenljive X termom t u formuli A(X) je ispravna
ako nijedna promenljiva terma t, posle zamene ne postaje
vezana u A(t).

Teorema 3.2.6. Sledee formule su valjane:


1. ( X)A(X) A(t), ako je zamena X termom t u formuli A(X)
ispravna
2. (X)A(X) A(c), gde je c oznaka za konstantu
3. (X)A(X) A(X).

Definicija 22.
Kaemo da je formula G logika posledica skupa formula
F1,...,Fn u oznaci F1, F2, ..., Fn G, ako svaki model formula
F1, ..., Fn je i model formule G.
Definicija 23.
Kaemo da je skup formula F1, F2, ..., Fn logiki
protuvurean skup ako ne postoji interpretacija u kojoj su sve
formule tog skupa tane.
Teorema 3.2.7. Sledea tvrenja su ekvivalentna:
F1, F2, ..., Fn G

F1 F2 ...Fn G

Skup formula F1, F2, ..., Fn, G je logiki protivurean skup


formula.

3.3. PREDIKATSKI RAUN


Logika prvog reda takoe se moe iskazati formalnom teorijom

II Elementi matematike logike

43

koju zovemo predikatski raun.


Alfabet ine svi uobiajni simboli koji se koriste u graenju predikatskih
formula izuzev , , , .
Formule su predikatske formule graene na uobiajan nain nad gornjim
alfabetom.
Aksiome su:
A1: A (B A)
A2: (A (B C)) ((A B) (A C))
A3: (A B) (B A)
A4: ( X)(A B(X)) (A ( X)B(X)), gde promenljiva X nije
slobodna u formuli A
A5: ( X)A(X) A(t), gde zamena promenljive X termom t je ispravna.
A,A B
A
modes ponens i
Pravila izvoenja su
B
( X ) A
generalizacija.
Primetimo da kvantor moemo uvesti na sledei nain
( X)A zamena za ( X)A.
Teorema 3.3.1. Formula A je teorema predikatskog rauna akko je
valjana.
Ova teorema se naziva teorema o potpunosti predikatskog rauna.
Slino kao u iskaznom raunu, kako su sve aksiome valjane formule, i
kako primenom pravila modus ponens i generalizacije na valjane formule
dobijamo valjane formule, jasno je da su sve teoreme valjane formule.
Dokaz tvrenja da su sve valjane formule teoreme predikatskog rauna
znatno je sloeniji i neemo ga navoditi.

3.4.

Preneks forma. Skolemizacija.

Definicija 24.
Za formulu F logike prvog reda kaemo da je u preneks
formi, ako je oblika:
(Q1X1)(Q2X2)...(QnXn) M,
gde je svaki (QiXi), i=1, ..., n, ili ( Xi) ili ( Xi), a M je
formula bez kvantora. (Q1X1)(Q2X2)...(QnXn) nazivamo
prefiksom formule a M matricom. Ako je matrica M u

44

II Elementi matematike logike


konjunktivnoj normalnoj formi kaemo da je formula u
preneks normalnoj formi.

Teoreme 3.2.3.-3.2.5. omoguuju nam da svakoj formuli naemo


ekvivalentnu formulu koja je u preneks formi.
P r i m e r 17. Odrediti sledeim formulama odgovarajue preneks
forme:
1.
( X)A(X) ( X)B(X) ( X)A(X) ( Y)B(Y)
( X)(A(X) ( Y)B(Y))
( X)( Y)(A(X) B(Y)), gde je Y
nova promenljiva za formule A(X) i B(X).
2.
( X)A(X) ( X)B(X) ( X)A(X) ( X)B(X)
( X)A(X) ( X)B(X)
( X)(A(X) B(X)).
Algoritam za dobijanje preneks forme:
Korak1: Koristei zakone
F G (F G) (G F)
F G F G
uklanjamo logike operacije i .
Korak2: Viestrukim korienjem zakona dvojne negacije
F F
i De Morganovih zakona za , , i :
(F G) F G
( F G) F G
( X)A ( X)A
( X)A ( X)A
znak negacije pomeramo do atomske formule.
Korak3: Ukoliko je neophodno, preimenujemo vezane promenljive.
Korak4: Koristei Teoreme 3.2.3.-3.2.5 pomeramo kvantore ispred
formule.
P r i m e r 18. Naimo preneks formu za formulu
( X)( ( ( Y)(X,Y) (( Z)(Z) (X)) ) ).
( X)( ( ( Y)(X,Y) (( Z)(Z) (X)) ) )
( X)(( ( Y)(X,Y) ( Z) (Z) (X)))

II Elementi matematike logike

45

( X)(( Y)(X,Y) ( Z)(Z) (X))


( X)( Z)( Y)( (X,Y) (Z) X)).
P r i m e r 19. Nai preneks forme za date formule
1) (X)(X) (Y)(Y)
2) (X)(X) (Y)(Y)
3) (X)(X) ( (X)(X) (X)(X) ).
1)(X)(X) (Y)(Y) (Y)( (X)(X) (Y) )
(X)(Y)( (X) (Y) ).
Prema tome (X)(Y)((X) (Y)) je preneks forma polazne formule.
Interesantno je primetiti da formula (X)(X) (Y)(Y) ima i
'jednostavniju' preneks formu, koju dobijamo na sledei nain:
(X)(X) (Y)(Y)
(X)(X) (X)(X)
(X)( (X) (X) ).
2) (X)(X) (Y)(Y)
(X)(X) (Y)(Y)
(X)(X) (X)(X)
(X)( (X) (X) ).
3) (X)(X) ( (X)(X) (X)(X) )
(X)(X) ( (X)(X) (X)(X) )
(X)(X) ( (X)(X) (X)(X) )
(X)(X) (X)( (X) (Y)(Y) )
(X)( (X) ((X) (Y)(Y)) )
(X)(Y)( (X) ((X) (Y)) ).
Neka je zatvorena formula F u preneks normalnoj formi
(Q1X1)(Q2X2)...(QnXn)M. Neka se uz promenljivu Xr, 1 r n u prefiksu
(*)(Q1X1)(Q2X2)...(QnXn), nalazi kvantor .
Ako u prefiksu levo od ( Xr) ne stoji nijedan univerzalni kvantor,
tada u matrici M sva pojavljivanja promenljive Xr zamenimo novom
konstantom c i iz prefiksa (*) izbacimo ( Xr).
Ako je Qs1, Qs2, ..., Qsm, s1<s2<...<sm, spisak svih univerzalnih
kvantora koji se javljaju u prefiksu levo od ( Xr), izaberimo novi
operacijski znak f duine m i svako pojavljivanje promenljive Xr u M
zamenimo termom f(Xs1, Xs2, ..., Xsm) i uklonimo ( Xr) iz prefiksa.
Proces nastavljamo dok se ne izbace svi egzistencijalni kvantori iz

46

II Elementi matematike logike

prefiksa. Poslednja formula naziva se skolemovskom standardnom


formom ili krae standardnom formom. Konstante i operacijske znake
dobijene uklanjanjem kvantora , nazivamo skolemovskim funkcijama.
P r i m e r 20. Naimo standardnu formu formuli
( X)( Y) ( Z)( U)( V)( W) (X, Y, Z, U, V, W).
Skolemovska standardna forma je:
( Y)( Z)( V) (c, Y, Z, f(Y,Z), V, g(Y,Z,V)).
Pogledajmo formulu ( X)(X), gde je relacijski znak duine 1.
Neka je D model formule. To znai da za neko X D (X) je tana u
interpretaciji D. Ako u formuli (c) konstanu c interpretiramo onim
elemetom skupa D za koji je (X) tana, onda smo interpretaciju D
proirili do modela formule (c). Jasno je da vai i obratno. Svaki model
formule (c) moemo skratiti do modela formule ( X)(X).
Primetimo da standardna forma formule nije ekvivalentna
polaznoj formuli, ali ako polazna formula ima model onda i njena
standardna forma ima model i obrnuto.
Teorema 3.4.1. Neka je S standardna forma formule F. Tada, F je
protivurena ako i samo ako je S protivurena.
D o k a z: Ne smanjujui optost moemo pretpostaviti da je formula F
u preneks normalnoj formi. Neka je F (Q1X1)...(QnXn)M(X1, ..., Xn) i Qr
prvi egzistencijalni kvantor standardne forme formule F.
Posmatrajmo formulu
F1( X1)...( Xr-1)(Qr+1Xr+1)...(QnXn)M(X1, ..., Xr-1, f(X1,...,Xr-1),..., Xr+1,
...,Xn)
gde je f skolemovska funkcija koja odgovara uklanjanju (QrXr), 1 r n.
Pretpostavimo da je F protivurena, a F1 neprotivurena formula.
Neka je D model formule F1. Znai, za sve X1, X2, ..., Xr-1D postoji, u
krajnjoj meri, bar jedan Xr elemenat skupa D ( f(X1,...,Xr-1) je jedan od
njih), za koji je (Qr+1Xr+1)... (QnXn)M(X1, ..., Xr-1, Xr, Xr+1, ..., Xn) istinita u
D. To znai da je D model formule F, a to je kontradikcija. Znai F1 je
protivurena.
Pretpostavimo da je F1 protivurena, a F neprotivurena. Neka je
D model formule F. Time za sve X1, X2, ..., Xr-1D postoji element Xr
D, takav da (Qr+1Xr+1)... (QnXn)M(X1, ..., Xr-1, Xr, Xr+1, ..., Xn) je istinita u
D. Proirimo interpretaciju D, tako da operacija f preslikava (X1, ..., Xr-1)
u Xr, za sve X1, ..., Xr-1D. Oznaimo novu strukturu sa D. Jasno je da u

II Elementi matematike logike

47

D za sve X1, ..., Xr-1D formula (Qr+1Xr+1)... (QnXn)M(X1, ..., Xr-1,


f(X1,...,Xr-1), Xr+1, ..., Xn) istinita. F1 je istinita u D, a to je kontradikcija.
Pretpostavimo sada da formula F ima m egzistencijalnih kvantora.
Neka je F0F i neka se Fk dobija ukljanjanjem prvog egzistencijalnog
kvantora iz formule Fk-1, k=1, ..., m. Po ve dokazanom imamo da Fk-1 je
protivurena ako i samo ako je Fk protivurena. Sada, kako je SFm,
imamo F je protivurena ako i samo ako je S protivurena.

P r i m e r 21. Nai standardne forme formula:


1) (X)(Y)(Z)(U)(V)(X,Y,Z,U,V)
2) (X)(Y)(X,Y) (X)(Y)(X,Y)
3) ( (X)(X) (Y)(Z)(Y,Z) ).
1) Standardna forma je:
(X)(Z)(X, f(X), Z, g(X,Z), h(X,Z)).
2) Prvo naemo preneks formu date formule.
(X)(Y)(X,Y) (X)(Y)(X,Y)
(X)(Y)(X,Y) (Y)(Z)(Y,Z)
(X)( (Y)(X,Y) (Y)(Z)(Y,Z) )
(X)(Y)( (X,Y) (Z)(Y,Z) )
(X)(Y)(Z)( (X,Y) (Y,Z) ).
Sada lako nalazimo standardnu formu:
(X)(Z)( (X,f(X)) (f(X),Z) ).
3) ( (X)(X) (Y)(Z)(Y,Z) )
( (X)(X) (Y)(Z)(Y,Z) )
(X)(X) (Y)(Z)(Y,Z)
(X)(X) (X)(Z)(X,Z)
(X)( (X) (Z)(X,Z) )
(X)(Z)( (X) (X,Z) )
Standardna forma je:
(X)( (X) (X,f(X)) ).
Vebanje:
1. Odredi model i kontra model formula:

48

II Elementi matematike logike

a) (X)(Y)( (X,Y) (Y,X) )


b) (X)(Y)(Z) (X,Y,Z)
c) (X)(Y)(Z)( (X,Y) (Y,Z) (X,Z))
d) (X)(X) (X)(X) (X)((X) (X)).
2. Naimo preneks normalnu formu za formulu
(X)(Y)(X,Y) (X)(Y)(X,Y).
3. Odredi standardne forme formulama:
a) (X)(X) (Y)(Y)
b) (X)(Y)(X,Y) (Y)(X)(X,Y)
c) (X)(Y)(X,Y) (X)(Y)(X,Y) (X)(Y)(X,Y)
d) (X)( (X) (Y)(Y) ) (X)(Y)( (X) (Y) )
e) (X)(Y)(X,Y) (Y)(X)(X,Y)
f) (X)(Y)(X,Y) (Z)(Y)(Y,Z)
g) (X)(Y)(X,Y) (Y)(X)(Y,X).

II Elementi matematike logike

4.

49

Metod rezolucije

Posmatrajmo sledea tvrenja:


C1: Pero je roditelj Luki.
C2: Ako je Pero roditelj Luki, onda je Luka dete Perovo.
Iz ova dva tvrenja moemo izvesti zakljuak
C3: Luka je dete Perovo.
Ovo zakljuivanje zove se modus ponens i veoma ga esto primenjujemo
u praksi. Ono se temelji na istoimenoj tautologiji p (p q) q.
Zakljuivanje po modus ponensu je specijalan sluaj pravila rezolucije.
Pri korienju pravila rezolucije umesto da dokazujemo da je F logika
posledica tvrenja F1, F2 , ..., Fn mi dokazujemo da {F1, F2 , ..., Fn , F}
logiki protivurean skup.
Definicija 25.
Klauzula je disjunkcija literala. Klauzulu koji sadri n literala
nazivamo n-literalnom klauzulom. Ako je n=1 nazivamo je
jedininom klauzulom. Klauzulu koja ne sadri nijedan literal
nazivamo praznom klauzulom i oznaavamo je sa [].
Kako prazna klauzula ne sadri literal koji bi mogao biti istinit pri nekoj
interpretaciji, to je prazna klauzula uvek lana.

4.1. Metod rezolucije iskazne logike


Posmatrajmo sledee klauzule:
C1 : p
C2: p q.
Iz klauzula C1 i C2 izvodimo
C3: q.
Ovo zakljuivanje sledi iz tautologije (p q) (p r) q r i
nazivamo ga pravilom rezolucije.
Opiimo detaljnije pravilo rezolucije:
Za bilo koje dve klauzule C1 i C2, ako postoji literal L1 u C1 koji je
suprotan literalu L2 u C2, brisanjem L1 i L2 iz C1 i C2 respektivno
dobijamo klauzule C1' i C2' i one formiraju novu klauzulu C3 C1' C2'.
Klauzulu C3 nazivamo rezolventom C1 i C2.
P r i m e r 22. Posmatrajmo klauzule:

50

II Elementi matematike logike


C1: p q r
C2: q s.
Rezolventa C1 i C2 je
C3: p r s.

P r i m e r 23. Posmatrajmo klauzule:


C1: p q
C2: p r.
Ove klauzule nemaju rezolventu jer u njima ne moemo nai par
suprotnih literala.
Teorema 4.1.1. Rezolventa dve klauzule C1 i C2 je logika posledica C1
i C2 .
D o k a z: Pretpostavimo da je C1 L C1 , a C2 L C2 i C C1
C2, gde su C1 i C2 klauzule. Neka je I model za C1 i C2 . U
interpretaciji I samo jedan od literala L ili L mora biti laan, ako je L
laan onda je C1 istinit, a ako je L laan onda je C2 istinit, znai u oba
sluaja C je istinit u interpretaciji I.

Rezolventa dve suprotne jedinine klauzule je prazna klauzula [].


Definicija 26.
Neka je S konaan skup klauzula. Kaemo da je C rezolventni
izvod iz skupa S ako postoji konaan niz klauzula C1, C2, ....,
Ck gde je Ck C, takvih da svaki Ci (i=1,...,k) ili pripada
skupu S ili je rezolventa prethodnih klauzula. Rezolventni
izvod prazne klauzule [] iz S nazivamo dokazom
protivurenosti S.
Ako je C rezolventni izvod iz skupa formula S, za C kaemo da je
dobijen metodom rezolucije iz skupa S.
P r i m e r 24. Pokaimo da je skup S={ p q , p q , p q ,
p q } logiki protivurean skup formula.
Dovoljno je pokazati da je prazna klauzula [] rezolventni izvod iz S.

II Elementi matematike logike


(1) p q
(2) p q
(3) p q
(4) p q
(5) q
(6) q
(7) []

51

element skupa S
element skupa S
element skupa S
element skupa S
rezolventa iz (1) i (2)
rezolventa iz (3) i (4)
rezolventa iz (5) i (6).

Ako elimo da dokaemo da je F logika posledica formula F1, F2


..., Fn metodom rezolucije, dovoljno je pokazati da je rezolventni izvod
iz skupa { F1, F2, ..., Fn, F} prazna klauzula [].
P r i m e r 25. Posmatrajmo Primer 7. Dokaimo da je q logika
posledica F1, F2 i F3.
Prevoenjem formule
F1 F2 F3
u konjunktivnu normalnu formu dobijamo
(p q r) (p q s) p s.
Znai iz skupa:
(1) p q r
hipoteza
(2) p q s
hipoteza
(3) p
hipoteza
(4) s
hipoteza
(5) q
negacija zakljuka
primenom pravila rezolucije izvodimo []:
(6) q s
rezolventa (2) i (3)
(7) s
rezolventa (5) i (6)
(8) []
rezolventa (4) i (7).
Ako elimo da dokaemo da je formula A tautologija metodom
rezolucije, to emo dokazati pokazujui da je rezolventni izvod formule
A prazna klauzula []. Postupak sprovodimo u nekoliko koraka: formulu
A prevedemo u konjunktivnu normalnu formu P1 P2 ... Pn; zatim
traimo rezolventni izvod prazne klauzule [] iz skupa {P1, P2, ..., Pn}.
P r i m e r 26. Pokaimo metodom rezolucije da je formula
(P S) (S U) P U
tautologija.

52

II Elementi matematike logike

((P S) (S U) P U)
( ((P S) (S U) P) U)
(P S) (S U) P U
(P S) (S U) P U
Znai imamo sledee klauzule:
(1) P S
(2) S U
(3) P
(4) U.
Rezolventni izvodi su:
(5) S
rezolventa (1) i (3)
(6) U
rezolventa (2) i (5)
(7) []
rezolventa (4) i (6).

4.2. Supstitucija. Unifikacija.


U ranijem sadraju upoznali smo pravilo rezolucije iskazne
logike. Iako pravilo rezolucije logike prvog reda polazi u osnovi od
pravila rezolucije iskazne logike ipak postoje znaajne razlike. U iskaznoj
logici barata se samo iskazima pa promenljivih nema, dok u logici
prvog reda promenljive predstavljaju osnovni pojam. Da bi u logici prvog
reda mogli koristiti pravilo rezolucije, moramo svim slobodnim
promenljivim dodeliti odgovarajue vrednosti ukoliko je to mogue. Ove
probleme prevazilazimo uvoenjem pojmova supstitucije i unifikacije.
Primer koji smo koristili kod uvoenja pravila rezolucije za
iskaznu logiku je specijalan sluaj sledeeg primera:
C1: roditelj(pero,luka)
C2: roditelj(X,Y) dete(Y,X).
Primetimo da u klauzulama C1 i C2 nemamo par suprotnih literala. U
tvrenju C2 kriju se kvantori za svaki X i Y, tj. C2 je formula
(X)(Y)( roditelj(X,Y) dete(Y,X)),
pa je jasno ako ono vredi za sve X, Y vredi i za konkretne vrednosti. To
znai, ako X zamenimo sa pero, Y sa luka onda dobijamo sledee
klauzule:
C1: roditelj(pero,luka)

II Elementi matematike logike

53

C2: roditelj(pero,luka) dete(luka,pero).


Izvodimo rezolventu
C3: dete(luka,pero).
Definicija 27.
Supstitucija je konaan skup oblika {V1/t1, ..., Vn/tn} gde
su V1, ..., Vn meusobno razliite promenljive a t1, ..., tn
termi takvi da je svaki ti razliit od Vi . Za kaemo da je
bazna supstitucija ako je svaki term ti bazni, tj. ne sadri
promenljive.
je promenljivo ista supstitucija ako su svi termi ti
promenljive. Supstituciju zadanu praznim skupom zovemo
identinom supstitucijom i oznaavamo je sa .
Definicija 28.
Izraz je term ili literal ili konjunkcija ili disjunkcija literala.
Prost izraz je ili term ili atom.
Definicija 29.
Instanca je rezultat primene supstitucije na neki izraz t u
oznaci t.
Posmatrajmo supstituciju ={X/pero, Y/luka}. Primenom ove
supstitucije na klauzulu roditelj(X,Y) dete(Y,X) dobijamo
(roditelj(X,Y) dete(Y,X)) =roditelj(pero,luka) dete(luka,pero).
P r i m e r 27. Neka je p(X, f(Y)) neka atomska formula i
supstitucija {X/a, Y/Z}. Tada je p formula oblika p(a, f(Z)). Za p
kaemo da je instanca supstitucije na formulu p(X, f(Y)).
Ako je S={E1, E2, ..., En} konaan skup izraza i ako je supstitucija, tada
je S={E1, E2, ..., En}.
Definicija 30.
Neka su
={V1/t1, V2/t2, ..., Vn/tn}
i
={U1/s1, U2/s2, ..., Um/sm} supstitucije.

54

II Elementi matematike logike


Kompozicija je supstitucija koja se dobija iz skupa
{V1/t1, V2/t2, ..., Vn/tn, U1/s1, U2/s2, ..., Um/sm}
uklanjajui sve Vi/ti ako je Vi=ti i sve Uj/sj ako je
Uj{V1, V2, ...,Vn}.

P r i m e r 28. Neka su date supstitucije i


={X/f(Y), Y/Z}
={X/a, Y/b, Z/Y}
Kompozicija ={X/f(b), Z/Y}, dok je kompozicija ={X/a,Y/b}.
Iz ovog primera vidimo da kompozicija supstitucija nije
komutativna operacija. Meutim kompozicija supstitucija jeste
asocijativna to navodimo sledeom teoremom.
Teorema 4.2.1. Neka su , i supstitucije a E izraz. Tada vai :
==
(E)=E()
()=().

Definicija 31.
Neka su E i F dva izraza. Kaemo da su E i F dve varijante
ako postoje supstitucuje i takve da vai E=F i F=E.
Izraz p(f(X,Y)), g(Z), a) je varijanta izraza p(f(Y,X), g(U), a), ali p(X,X)
nije varijanta izraza p(X,Y).
Definicija 32.
Neka je S konaan skup prostih izraza. Supstituciju zovemo
unifikatorom skupa S, ako je S jednolan skup. Unifikator
je najoptiji unifikator (MGU - most general unifier) skupa S
ako za svaki unifikator skupa S, postoji supstitucija takva
da je =.
P r i m e r 29. Neka je S={p(f(X), Z), p(Y,a)} tada MGU je ={Y/f(X),
Z/a}. Kao to vidimo unifikator je i ={Y/f(a), X/a, Z/a}, ali vai
={X/a}.
Intuitivno, kad elimo da unifikujemo izraze mi traimo
supstituciju koja e ih promeniti u identine.

II Elementi matematike logike

55

Definicija 33.
Skup razliitosti nepraznog skupa prostih izraza S dobijamo
otkrivanjem prve (sleva) pozicije na kojoj svi izrazi iz S
nemaju isti simbol i zatim uzimamo iz svih izraza skupa S
podizraze koji poinju tom pozicijom. Skup tih podizraza je
skup razliitosti od S.
P r i m e r 30. Ako je S={p(f(X), h(Y), a), p(f(X), Z, a)}, onda skup
razliitosti skupa S je D={h(Y), Z}.
Ako je S={p(X, f(Y,Z)), p(X,a), p(X, g(h(k(X))))}, onda skup
razliitosti skupa S je D={f(Y,Z), a, g(h(k(X)))}.
Za dati konaan skup prostih izraza S, MGU nalazimo sledeim
algoritmom:
Korak (1): k se postavlja na 0. (0) je identina supstitucija.
Korak (2): Odredi se S(k). Ako je dobijen jednolan skup, (k) je MGU
skupa S i to je kraj. Ako nije odreuje se skup razliitosti D(k) za S(k) i
prelazi se na korak (3).
Korak (3): Ako postoje V i t u D(k) takvi da je V promenljiva koja ne
ulazi u termu t tada se odreuje (k+1)=(k){V/t}, zatim se uveava k i
prelazi se na korak (2). U suprotnom izrazi se ne mogu unifikovati i
algoritam staje.
P r i m e r 31. Neka je S={p(f(a), g(X)), p(Y,Y)}.
Primenimo algoritam unifikacije za skup S:
(1)
k=0
(0)=
(2-1) S(0)=S
D(0)={f(a), Y}
(3-1) (1)=(0){Y/f(a)}
k=1
(2-2) S(1)={p(f(a), g(X)), p(f(a), f(a))}
D(1)={g(X), f(a)}
(3-2) Nemogue je izvriti unifikaciju jer u skupu D(1) ne postoji ni

56

II Elementi matematike logike

jedna promenljiva pa se ne moe kreirati supstitucija (2). Ovo je kraj


algoritma.
P r i m e r 32. Neka je S={p(a, X, h(g(Z))), p(Z, h(Y), h(Y))}.
Primenimo algoritam unifikacije za skup S:
(1)
k=0
(0)=
(2-1) S(0)=S
D(0)={a, Z}
(3-1) (1)=(0) {Z/a}
k=1
(2-2) S(1)={p(a, X, h(g(a))), p(a, h(Y), h(Y))}
D(1)={X, h(Y)}
(3-2) (2)=(1){X/h(Y)}={Z/a, X/h(Y)}
k=2
(2-3) S(2)= {p(a, h(Y), h(g(a))), p(a, h(Y), h(Y))}
D(2)={g(a), Y}
(3-3) (3)=(2){Y/g(a)}={Z/a, X/h(g(a)), Y/g(a)}
k=3
(2-4) S(3)= {p(a, h(g(a)), h(g(a)))}
Ovim je proces unifikacije zavren jer je S(3) jednolan skup i
unifikator je supstitucija (3).
Teorema 4.2.1. (Teorema unifikacije) Ako je S konaan neprazan skup
prostih izraza koji se moe unifikovati, onda algoritam unifikacije za
skup S zavrava na koraku (2) i poslednji (k) je MGU za S. Inae
algoritam zavrava na koraku (3).

4.3.

Metod rezolucije za logiku prvog reda

U prethodnom delu upoznali smo algoritam unifikacije i sada


moemo da razmatramo metod rezolucije za logiku prvog reda.
Definicija 34.
(Pravilo rezolucije) Neka su C1 i C2 dva klauzule koji nemaju
istih promenljivih. Neka su L1 i L2 dva literala u C1 i C2

II Elementi matematike logike

57

respektivno. Ako L1 i L2 imaju MGU , onda brisanjem L1


i L2 iz C1 i C2 redom, dobijamo disjunke C1' i C2' i oni
formiraju rezolventu C3C1' C2'.
Napomena: Uslov da klauzule C1 i C2 nemaju iste promenljive lako
prevazilazimo preimenovanjem istih promenljivih u jednom od njih.
Kao u iskaznoj logici moe se pokazati da je rezolventa klauzula
C1 i C2 njihova logika posledica.
P r i m e r 33. Posmatrajmo klauzule:
C1: P(X) Q(X)
C2: P(f(X)) R(X).
Primenom supstitucije {X/Y} na C1, dobijamo:
C1: P(Y) Q(Y).
Primetimo da se literali P(Y) i P(f(X)) iz C1 i C2 mogu unifikovati i
MGU je supstitucija {Y/f(X)}, pa je rezolventa:
C3: Q(f(X)) R(X).
Rezolventni izvod u logici prvog reda uvodi se kao u iskaznoj
logici. Kada treba da dokaemo da je F logika posledica skupa formula
{F1,..., Fn}, dokazujemo da je skup formula {F1, ..., Fn, F} logiki
protivurean. Pravilom rezolucije iz tog skupa formula izvodimo praznu
klauzulu []. Takav nain dokazivanja nazivamo dokaz metodom
rezolucije. Valjanost tog postupka opravdava sledea teorema koju
navodimo bez dokaza.
Teorema 4.3.1. (Potpunost metode rezolucije) Skup klauzula S je
protivurean akko postoji rezolventni izvod prazne klauzule [] iz skupa S.

P r i m e r 34. Dokaimo valjanost formule metodom rezolucije


(X)(C(X) W(X) R(X)) (X)(C(X) Q(X)) (X)(Q(X) R(X)).
Uvedimo oznake:
F1: (X)(C(X) W(X) R(X))
F2: (X)(C(X) Q(X))
F : (X)(Q(X) R(X)).
Treba da pokaemo da je skup formula {F1, F2, F} logiki protivurean.
Prevoenjem F1, F2 i F u standardne forme dobijamo sledee klauzule:

58

II Elementi matematike logike

(1) C(X) W(X)


iz F1
(2) C(X) R(X)
iz F1
(3) C(a)
iz F2
(4) Q(a)
iz F2
(5) Q(X) R(X)
iz F.
Taj skup klauzula dopunimo sledeim rezolventama:
(6) R(a)
rezolventa (2) i (3) primenom supstitucije
1={X/a}
(7) R(a)
rezolventa (4) i (5) primenom supstitucije
1={X/a}
(8) []
rezolventa (6) i (7).
Kako standardne forme skupa {F1, F2, F} nemaju model, onda je taj
skup logiki protivurean (na osnovu Teoreme 3.3.1).
P r i m e r 35. Metodom rezolucije pokaimo valjanost formule
(X)(Y)A(X,Y) (X)(Y)A(X,Y).
Neka je:
F1: (X)(Y)A(X,Y)
F2: (X)(Y)A(X,Y).
Nalazei standardne forme za F1 i F2 dobijamo:
(1) A(X,Y)
(2) A(X,f(X))
a zatim
(3) A(U,V) iz (1) primenom supstitucije 1={X/U, Y/V}
(4) [] rezolventa (2) i (3) primenom supstitucije 2={U/X,
V/f(X)}.
P r i m e r 36. Pokaimo valjanost formule
(X)(Y)((X) (Y)) (X)(Y)((X) (Y))
(X)(Y)((X) (Y)).
Neka je:
F1: (X)(Y)((X) (Y))
F2: (X)(Y)((X) (Y))
F: (X)(Y)((X) (Y)).
Standardna forma za F1 je (X)( (X) (f(X))).
Standardna forma za F2 je (X)((X) (g(X))).
Standardna forma za F (X)(Y)((X) (Y))
(X)(Y)((X) (Y))

II Elementi matematike logike

59

je (Y)((a) (Y)).
Klauzule dobijene iz standardnih formi su:
(1) (X) (f(X))
(2) (X) (g(X))
(3) (a)
(4) (Y).
Primenom rezolucije dobijamo:
(5) (f(a))
rezolventa (1) i (3), a supstitucija je 1={X/a}
(6) (g(f(a))) rezolventa (2) i (5), a supstitucija je 2={X/f(a)}
(7) []
rezolventa
(4) i (6), a supstitucija je
3={Y/g(f(a))}.
P r i m e r 37. Proverimo da li je ispravno zakljuivanje:
Neki aci vole dobre profesore. Ni jedan ak ne voli direktora.
Znai, ni jedan direktor nije dobar profesor.
Oznaimo sa:
D(X): X je ak
P(X): X je dobar profesor
U(X): X je direktor
V(X,Y): X voli Y.
Gornja tvrenja zapisujemo:
F1: (X)( D(X) (Y)(P(Y) V(X,Y)) )
F2: (X)( D(X) (Y)(U(Y) V(X,Y)) )
G: (X)(U(X) P(X)).
Pokaimo da je skup {F1, F2, G} logiki protivurean. Iz standardnih
formi za F1, F2 i G dobijamo sledee klauzule:
(1) D(a)
(2) P(Y) V(a,Y)
(3) D(X) U(Y) V(X,Y)
(4) P(b)
(5) U(b).
Metodom rezolucije dobijamo:
(6) V(a,b)
rezolventa (2) i (4), 1={Y/b}
(7) U(Y) V(a,Y)
rezolventa (1) i (3), 2={X/a}
(8) U(b)
rezolventa (6) i (7), 1
(9) []
rezolventa (5) i (8).

60

II Elementi matematike logike

P r i m e r 38. Proverimo da li je ispravno sledee zakljuivanje:


Deurni oficir pregleda urednost svih vojnih lica koji izlaze iz
kasarne a nisu vii oficiri. Neka vojna lica koja su neuredna izlazila iz
kasarne bila su pregledana iskljuivo od neurednih vojnih lica. Ni jedan
vii oficir nije neuredan. Znai: Neki deurni oficiri su neuredni.
Uvedimo sledee oznake:
I(X): X izlazi iz kasarne
V(X): X je vii oficir
P(X,Y): Y je pregledao urednost X
D(X): X je deurni oficir
N(X): X je neuredan.
Pretpostavke u datom primeru moemo zapisati sledeim formulama:
(X)(I(X) V(X) (Y)(P(X,Y) D(Y)) )
(X)(N(X) I(X) (Y)(P(X,Y) N(Y)) )
(X)(V(X) N(X)),
a zakljuak formulom
(X)(D(X) N(X)).
Iz standardnih formi pretpostavki dobijamo sledee klauzule:
(1) I(X) V(X) P(X,f(X))
(2) I(X) V(X) D(f(X))
(3) N(a)
(4) I(a)
(5) P(a,Y) N(Y)
(6) V(X) N(X).
Iz negacije zakljuka dobijamo:
(7) D(X) N(X).
Korienjem metode rezolucuje dobijamo:
(8) V(a)
iz (3) i (6)
(9) V(a) D(f(a)) iz (2) i (4)
(10) D(f(a))
iz (8) i (9)
(11) V(a) P(a,f(a)) iz (1) i (4)
(12) P(a,f(a))
iz (8) i (11)
(13) N(f(a))
iz (5) i (12)
(14) D(f(a))
iz (7) i (13)
(15) []
iz (10) i (14).

II Elementi matematike logike

61

P r i m e r 39. Proverimo da li je ispravno sledee zakljuivanje:


Studenti su graani. Znai, glasovi studenata su glasovi graana.
Uvedimo sledee relacije:
S(X) X je student
C(X) X je graanin,
V(X,Y) X je glas Y.
Tada, pretpostavku moemo zapisati (X)(S(X) C(X)),
a zakljuak (X)((Y)(S(Y) V(X,Y)) (Z)(C(Z) V(X,Z))).
Iz pretpostavke imamo:
(1) S(X) C(X).
Negacijom zakljuka dobijamo
((X)((Y)(S(Y) V(X,Y)) (Z)(C(Z) V(X,Z))))
((X)((Y)(S(Y) V(X,Y)) (Z)(C(Z) V(X,Z))))
((X)(Y)(Z)(S(Y) V(X,Y) (C(Z) V(X,Z))))
(X)(Y)(Z)(S(Y) V(X,Y)) (C(Z) V(X,Z))).
Iz standardne forme dobijene formule imamo sledee tri klauzule:
(2) S(b)
(3) V(a,b)
(4) C(Z) V(a,Z).
Metodom rezolucije dobijamo:
(5) C(b)
iz (1) i (2)
(6) V(a,b) iz (5) i (4)
(7) []
iz (3) i (6).
P r i m e r 40. Ako su pretpostavke:
F1: Svaki roditelj je strpljiv.
F2: Svako ko je strpljiv i nesebian ima veliki krug prijatelja.
F3: Milo je nesebian.
F4: Milo je roditelj.
Da li sledi zakjuak F : Milo ima veliki krug prijatelja.
Uvedimo relacije:
R(X) : X je roditelj.
S(X) : X je strpljiv.
N(X) : X je nesebian.
P(X) : X ima veliki krug prijatelja.
Tada pretpostavke i zakjuak moemo zapisati:
F1: (X)(R(X) S(X))

62

II Elementi matematike logike

F2: (X)(S(X) N(X) P(X))


F3: N(Milo)
F4: R(Milo)
F: P(Milo).
Iz standardnih formi za F1, F2, F3, F4 i F dobijamo:
(1) R(X) S(X)
(2) S(X) N(X) P(X)
(3) N(Milo)
(4) R(Milo)
(5) P(Milo).
Rezolventni izvodi:
(6) S(Milo)
rezolventa (1) i (4)
(7) N(Milo) P(Milo)
rezolventa (2) i (6)
(8) P(Milo)
rezolventa (3) i (7)
(9) []
rezolventa (5) i (8).

II Elementi matematike logike

63

5. Logiki program
U prethodnom tekstu smo pokazali da proizvoljnu predikatsku
formulu moemo svesti na standardnu formu, koja je protivurena akko
je polazna formula protivurena. Standardna forma je oblika
( X1)...( Xn)(F1 ... Fn)
gde je Fi (i=1, 2, ..., n) disjunkcija literala ( klauzula ) oblika
(A1 ... An B1 ... Bk)
gde su A1, ..., An, B1, ..., Bk atomi to emo krae zapisati:
A1, ..., AnB1, ...,Bk.
Kako je
(A1 ... An B1 ... Bk)
ekvivalentno sa
(B1 ... Bk A1 ... An),
moemo zakljuiti da su hipoteze B1, ..., Bk vezane konjunkcijom, a
posledice A1, ..., An vezane disjunkcijom. Specijalan tip klauzula je onaj
koji ima samo jednu posledicu (pozitivan literal) i za nas su veoma
interesantne.
Definicija 35.
Programska klauzula je klauzula oblika AB1, ..., Bk koja
sadri samo jedan pozitivan literal (A). A se zove glava, a
B1,..,Bk telo programske klauzule.
Primetimo da je programska klauzula nita drugo nego pravilo u
PROLOG-u koje bi glasilo
A:B1,...,Bk.
Definicija 36.
Jedinina programska klauzula je klauzula oblika
programska klauzula sa praznim telom.

tj.

Jedinina programska klauzula nije nita drugo nego injenica u


PROLOG-u.
Znaenje programske klauzule AB1, ..., Bk je "za sve vrednosti
promenljivih ako su B1, ..., Bk svi tani onda je A tano". Ako je k>0
klauzula je uslovna. Znaenje jedinine programske klauzule A je "za
sve vrednosti promenljivih A je tano".

64

II Elementi matematike logike

Definicija 37.
Logiki program je konaan skup programskih klauzula.
Definicija 38.
U logikom programu skup svih programskih klauzula sa
istim predikatom p u glavi zove se definicija predikata p.
Definicija 39.
Ciljna klauzula je klauzula oblika B1, ..., Bk tj. klauzula
sa praznim zakljukom. Svako Bi (i=1, ..., k) zove se podcilj
ciljne klauzule.
Ciljnu klauzulu u PROLOG-u oznaavamo na sledei nain
?-B1, ..., Bk.
Definicija 40.
Hornove klauzule su programske ili ciljne klauzule.
Ako su Y1, ..., Yn sve promenljive ciljne klauzule
B1, ..., Bk
onda je ta klauzula krai zapis za
( Y1)...( Yn)(B1 ... Bk)
ili, ekvivalentno
( Y1)...( Yn)(B1 ... Bk).
P r i m e r 41. Ponovo pogledajmo primer koji smo radili u prvoj glavi:
roditelj(pera,sima).
roditelj(marija,sima).
roditelj(sima,tomo).
roditelj(tomo,marko).
roditelj(nena,jelena).
musko(pera).
musko(sima).
musko(tomo).
musko(marko).
zensko(marija).
zensko(nena).
zensko(jelena).

II Elementi matematike logike

65

otac(X,Y):-roditelj(X,Y),musko(X).
Prevedimo program u logike reenice:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)

roditelj(pera,sima)
roditelj(marija,sima)
roditelj(sima,tomo)
roditelj(tomo,marko)
roditelj(nena,jelena)
musko(pera)
musko(sima)
musko(tomo)
musko(marko)
zensko(marija)
zensko(nena)
zensko(jelena)
otac(X,Y) roditelj(X,Y) musko(X)

To je skup aksioma nae teorije.


Postavimo pitanje "ko je markov otac". ta znai postavljeno pitanje?
Prevedeno na logiku prvog reda imamo ( X)otac(X,marko). Treba da
proverimo da li je ta reenica logika posledica naeg skupa aksioma.
Primenom metoda rezolucije proveravamo da li je negacija pitanja
logiki protivurena sa skupom aksioma. Negacijom pitanja je:
( X)otac(X,marko), a u otvorenom obliku otac(X,marko), to je ciljna
klauzula oblika
?-otac(X,marko).
Sada imamo sledei rezolventni izvod:
otac(X,marko)
ciljna klauzula
roditelj(X,marko) musko(X)
rezolventa (13) i (14)
supstitucijom
1={Y/marko}
(16) musko(tomo)
rezolventa (15) i (4)
supstitucijom
2={X/tomo}
(17) []
rezolventa (16) i (8).
(14)
(15)

Doli smo do prazne klauzule [], pa je postavljeno pitanje logika

66

II Elementi matematike logike

posledica skupa aksioma sa odgovorom X=tomo.

You might also like