Loogika

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 211

Loogika

Mtlemisest testamiseni
Tnu Tamme, Tanel Tammet, Rein Prank
Tartu likooli Kirjastus
Raamat valmis Eesti Teadusfondi ja Avatud Eesti Fondi toetusel.
Keeletoimetaja Leelo Jago
Kaane kujundanud Lemmi Koni
Autorite postiaadressid: tqnu@cs.ut.ee (Tnu Tamme)
tammet@cs.chalmers.se (Tanel Tammet)
prank@cs.ut.ee (Rein Prank)
c 1997 Tnu Tamme, Tanel Tammet, Rein Prank
ISBN 9985-56-231-3
Kaas: Postimehe reprokeskus / Travere Trkikoda
Trkk: O Greif
Kide: Tartu likooli Kirjastuse trkikoda
Tellimus nr. 29
Autorid kasutasid kljendamiseks ssteemi L
A
T
E
X ning trkikirju
Times, MathTime ja LucidaSans-Typewriter.
Eessna
Maailma esimest raamatut predikaatarvutuse kohta Begriffs-
schrift, 1879 alustab autor ja arvutuse looja, Gottlob Frege,
snadega: Teadusliku te tunnetus kib reeglina lbi mitmed
tsikindluse astmed . . . kindlaim testusviis on ilmselt puhtloo-
giline, mis kigist asjade eriomadustest krvale vaadates tugineb
ainuksi nendele seadustele, millel phineb kogu tunnetus ldse.
Oma mistekirja sisuliselt, ndisaegses thenduses identsu-
sega krgemat jrku predikaatarvutuse vajalikkust phjendab
ta vrdluses tavakeelega: Pdes rangeimal viisil jrgida neid
nudeid (testuskigu augutus), leidsin ma takistusena ees keele,
mis . . . mida keerulisemaks muutusid seosed, seda vhem lubas
saavutada mu eesmrkide nutavat tpsust . . . Seost minu miste-
kirja ja tavakeele vahel arvan vivat kige selgemaks teha mikro-
skoobi vrdluses silmaga. Viimane on kasutuse ulatuse, liikuvuse
tttu, millega suudab end kohandada kige erinevamate asjaolu-
dega, suuresti le mikroskoobist . . . Niipea aga kui teaduslikud
eesmrgid pstitavad krgeid nudmisi eraldusvime teravusele,
osutub silm ebapiisavaks. Mikroskoop on just sedalaadi eesmr-
kideks tiuslikult kohandatud, aga just seetttu kigiks teisteks
kasutusklbmatu. Nii ongi see mistekiri kindlateks teaduslikeks
eesmrkideks leiutatud abivahend, mida selleprast ra ei tule
plata, et ta teistsugusteks ei klba.
Kesolev eestikeelne loogikaraamat peab siis lubades en-
dale analoogiat olema see teaduslikku tpsust vimaldav
mikroskoop tnapevaselt tiustatud kujul; ehk kll esmajoones
kooli-otstarbeks mteldud.
Mida temaga teha saab? Kellele teda vaja lheb sest nagu
vi Eessna
teldud, kigeks ja kigile ta ju ei klba? Muidugi ja esmajoo-
nes on see raamat matemaatikutele, sest matemaatika, tpsemalt,
aritmeetika aluste uurimiseks, oligi mttekiri esialgselt mteldud.
Kuid loogika on arenenud ja matemaatika koos temaga ning
loogika kasutus ei piirdu enam matemaatika alustega, loogika ise
on iseseisev, omaenda sisemiste impulsside ajendil arenev teadus,
mille otsesed praktilised rakendusvimalused, niteks programmee-
rimises ja tehisintellektis, on hsti teada. Loogika loomisega pani
aga Frege muu hulgas aluse tiesti uuele mtlemisviisile, loso-
feerimismoodusele, mille heks tunnuseks on see, mida tnapeval
nimetatakse lingvistiliseks prdeks.
Lingvistilises prdes sndinud filosoofia, olgu ta spetsiaalselt
keele-, matemaatika- vi vaimufilosoofia, ei ole viljeldav ilma
loogilise aparatuuri abita.
Tnapeva filosoofilt nutav matemaatiline ettevalmistus ei
ole mahult viksem fsikult nutavast ettevalmistusest. Kuid
vajaminevad erialad on erinevad: filosoofi matemaatiline pagas
haarab esmajoones matemaatilist loogikat.
Arvan, et just filosoofide rm kesoleva raamatu ilmumisest
on suurim.
On muidugi loogikapeatkke, mis huvitab losoofe enam, ja
neid, mis vhem. Peale ldise lause- ja predikaatarvutuse, mis
iseendastmistetavalt kuulub hariduse juurde, on losoo erilisse
huvipiirkonda haaratud niteks mudelite teooria, mitmesugused
intensionaalsed loogikad (modaal- ja ajaloogikad), intuitsionistlik
loogika, semantika erinevad probleemid (Tarski teteooria) jpm.
Kuid humanitaarteadustegi vajadus loogika jrele on kasvanud.
Filosooa lingvistiline pre tmbab kaasa ka lingvistika. Kllap
ei ole lingvistide rm selle raamatu valmimise le palju viksem
losoode omast, kuigi nende spetsiilisi huve on ehk materjali-
valikus vhem silmas peetud. Kuid raamat niisugusel kujul, nagu
talle just on antud, ei olegi meldud erialade rahuldamiseks,
oma olulises osas sisaldab ta (ka vljaspool klassikalise loogika
peatkki) klassikalist materjali, mida niihsti matemaatik, lo-
soof, lingvist, kui mne teisegi eriala asjatundja miks mitte
fsikki p e a b valdama.
24.11.96
Madis Kiv
Sisukord
Eessna v
1. Sissejuhatus 1
1.1. Loogika aine . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Loogika ajalugu . . . . . . . . . . . . . . . . . . . . . . 19
I Klassikaline loogika 53
2. Loogika phimisted 55
2.1. Philised loogikaseadused . . . . . . . . . . . . . . . . . 55
2.2. Vasturkivus ja mittevasturkivus . . . . . . . . . . . . 57
2.3. Arutlus ja jreldus . . . . . . . . . . . . . . . . . . . . . 58
2.4. Arutluste kehtivus ja korrektsus . . . . . . . . . . . . . 59
2.5. Lausete loogiline tesus ja vrus . . . . . . . . . . . . 61
2.6. Lausete ekvivalentsus . . . . . . . . . . . . . . . . . . . 62
2.7. Matemaatilised seosed . . . . . . . . . . . . . . . . . . . 62
2.8. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3. Lausearvutus 65
3.1. Lausete anals . . . . . . . . . . . . . . . . . . . . . . . 65
3.2. Lausearvutuse tehted . . . . . . . . . . . . . . . . . . . . 68
3.3. Lausearvutuse sntaks ja semantika . . . . . . . . . . . 76
3.4. Lausevormid ja arutlusvormid . . . . . . . . . . . . . . . 80
3.5. Lausearvutuses mittevljendatavad seosed . . . . . . . . 83
3.6. Tevrtustabelid . . . . . . . . . . . . . . . . . . . . . . 85
3.7. Tautoloogia, kontradiktsioon ja kontingentne lause . . . 88
3.8. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 92
viii Sisukord
4. Predikaatarvutus 94
4.1. Predikaadid ja konstandid . . . . . . . . . . . . . . . . . 95
4.2. Kvantorid . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.3. Predikaatarvutuse sntaks . . . . . . . . . . . . . . . . . 100
4.4. Tarski semantika . . . . . . . . . . . . . . . . . . . . . . 102
4.5. Loogiline ruut . . . . . . . . . . . . . . . . . . . . . . . 108
4.6. Sllogismid . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.7. Korduv kvantifitseerimine . . . . . . . . . . . . . . . . . 114
4.8. Signatuur ja interpretatsioon. Struktuuri ja struktuuride
klassi teooria . . . . . . . . . . . . . . . . . . . . . . . . 115
4.9. Lplikud struktuurid . . . . . . . . . . . . . . . . . . . . 121
4.10. Reaalarvude jrjestuse elementaarteooria . . . . . . . . . 123
4.11. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5. Klassikalised tuletusreeglid 130
5.1. Tuletusreeglid . . . . . . . . . . . . . . . . . . . . . . . . 131
5.2. Konditsionaalne testus . . . . . . . . . . . . . . . . . . 140
5.3. Kaudne testus . . . . . . . . . . . . . . . . . . . . . . . 144
5.4. Predikaatarvutuse tuletusreeglid . . . . . . . . . . . . . . 146
5.5. Formaalne ja mitteformaalne testus . . . . . . . . . . . 154
5.6. Aksioom ja mudel . . . . . . . . . . . . . . . . . . . . . 157
5.7. Aksiomatiseerimisteooria . . . . . . . . . . . . . . . . . . 164
5.8. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 165
6. Tuletusssteemid 168
6.1. Hilberti tpi tuletus . . . . . . . . . . . . . . . . . . . . 168
6.2. Loomulik tuletus . . . . . . . . . . . . . . . . . . . . . . 172
6.3. Gentzeni sekventsiaalne arvutus . . . . . . . . . . . . . . 174
6.4. Tesuspuu . . . . . . . . . . . . . . . . . . . . . . . . . . 179
II Matemaatiline loogika 185
7. Matemaatiline induktsioon 187
7.1. Induktiivne testus . . . . . . . . . . . . . . . . . . . . . 187
7.2. Duaalsus . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
8. Lausearvutuse tielikkus 192
8.1. Lausearvutuse korrektsus ja mittevasturkivus . . . . . 193
8.2. Lausearvutuse tielikkus . . . . . . . . . . . . . . . . . . 193
Sisukord ix
9. Mittelahenduvad probleemid 196
9.1. Turingi masin . . . . . . . . . . . . . . . . . . . . . . . . 197
9.2. Mittelahenduvad probleemid . . . . . . . . . . . . . . . . 201
9.3. Predikaatarvutuse mittelahenduvus . . . . . . . . . . . . 208
10. Aritmeetika mittetielikkus 213
10.1. Formaalne aritmeetika . . . . . . . . . . . . . . . . . . . 213
10.2. Gdeli teoreemid aritmeetika mittetielikkusest . . . . . 217
11. Krgemat jrku loogika 221
11.1. Aritmeetika kui teist jrku teooria . . . . . . . . . . . . 221
11.2. Teist jrku loogika . . . . . . . . . . . . . . . . . . . . . 222
11.3. Kompaktsusteoreem . . . . . . . . . . . . . . . . . . . . . 223
11.4. Vljendatavus teist jrku loogikas . . . . . . . . . . . . 224
11.5. Tbiteooria . . . . . . . . . . . . . . . . . . . . . . . . . 226
11.6. Matemaatiline teooria . . . . . . . . . . . . . . . . . . . 228
11.7. Rakendused arvutiteaduses ja programmeerimises . . . . 229
11.8. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 230
III Mitteklassikaline loogika 233
12. Modaalloogika 235
12.1. Modaalsed operaatorid . . . . . . . . . . . . . . . . . . . 235
12.2. Modaalloogika seadused . . . . . . . . . . . . . . . . . . 237
12.3. Vimalike maailmade semantika . . . . . . . . . . . . . 239
12.4. Tuletused modaalloogikas S5 . . . . . . . . . . . . . . . 241
12.5. Kanooniline tlge predikaatloogika keelde . . . . . . . . 244
12.6. Erinevad tuletusssteemid . . . . . . . . . . . . . . . . . 245
12.7. Modaalne predikaatloogika . . . . . . . . . . . . . . . . 247
13. Intuitsionistlik loogika 249
13.1. Sissejuhatus . . . . . . . . . . . . . . . . . . . . . . . . . 249
13.2. Kaks testuse nidet . . . . . . . . . . . . . . . . . . . . 252
13.3. Intuitsionistlik loogikaseoste mistmine . . . . . . . . . 254
13.4. Intuitsionistlik predikaatarvutus . . . . . . . . . . . . . . 256
13.5. Kripke mudelid . . . . . . . . . . . . . . . . . . . . . . . 258
13.6. Rekursiivne realiseeritavus. Nelsoni teoreem . . . . . . . 261
13.7. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 265
14. Hgusloogika 266
14.1. Soriitide paradoksid . . . . . . . . . . . . . . . . . . . . 266
14.2. Hgusloogika semantika . . . . . . . . . . . . . . . . . . 268
x Sisukord
15. Mittemonotoonne loogika 273
15.1. McCarthy nide . . . . . . . . . . . . . . . . . . . . . . 273
15.2. Nite formaalne ksitlus . . . . . . . . . . . . . . . . . . 276
15.3. Suletud maailm . . . . . . . . . . . . . . . . . . . . . . . 280
15.4. Piiramine . . . . . . . . . . . . . . . . . . . . . . . . . . 283
15.5. Vaikimisi-loogika . . . . . . . . . . . . . . . . . . . . . . 284
15.6. Autoepisteemiline loogika . . . . . . . . . . . . . . . . . 286
15.7. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 286
16. Lineaarloogika 287
16.1. Tegevuste ja situatsioonide kordumatus . . . . . . . . . 287
16.2. Kaks konjunktsiooni ja disjunktsiooni . . . . . . . . . . 289
16.3. Lineaarne eitus . . . . . . . . . . . . . . . . . . . . . . . 290
16.4. Sekventsiaalne tuletus . . . . . . . . . . . . . . . . . . . 291
16.5. Lineaarloogika vljendusvimsus . . . . . . . . . . . . . 293
16.6. lesanded . . . . . . . . . . . . . . . . . . . . . . . . . . 294
IV Loogika rakendusi programmeerimises ja
tehisintellektis 295
17. Automaatne teoreemitestamine 297
17.1. Eesmrgid . . . . . . . . . . . . . . . . . . . . . . . . . . 298
17.2. Sissejuhatus resolutsioonimeetodisse . . . . . . . . . . . 299
17.3. Resolutsioonimeetodi strateegiad ja rakendused . . . . . 327
17.4. Niteid ja rakendusi . . . . . . . . . . . . . . . . . . . . 335
18. Loogiline programmeerimine ja Horni disjunktid 346
18.1. Prolog . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
19. Funktsionaalne programmeerimine ja vrdusssteemid 366
19.1. Deduktsioon ja reduktsioon: termiteisendusssteemid . . 367
19.2. Lambda-arvutus . . . . . . . . . . . . . . . . . . . . . . . 376
19.3. Kombinatoorne loogika . . . . . . . . . . . . . . . . . . 382
lesannete vastused 387
Kirjandus 390
Indeks 395
1. Sissejuhatus
Puhta loogika eesmrk on olla ige kigis vima-
likes maailmades, mitte ainult selles veidersegases
vaevarikkas maailmas, kuhu juhus meid on heitnud.
Loogik peab eneses alal hoidma teatud annuse juma-
likkust: ta ei tohi alanduda selleni, et teha jreldusi
enese mber nhtust.
B. Russell, Sissejuhatus matemaatilisse filosoo-
fiasse
Kui loogika oleks olemas isegi juhul, kui maailma ei
oleks, siis kuidas saab loogika olemas olla olukorras,
kus maailm on olemas?
L. Wittgenstein, Tractatus Logico-Philosophicus
1.1. Loogika aine
Esimene ksimus, mis meil esitada tuleb, on ksimus loogika
ainest. Mis asi on loogika, ja mida loogikateadus uurib? Sageli
jaotatakse loogika aine mitmesse eraldiseisvasse gruppi: matemaa-
tiline loogika, losooline loogika, dialektiline loogika jne. Meie
raamat ksitleb peamiselt matemaatilist ehk formaalset loogikat,
mis on tnapeva loogikateaduse tuum ja arenenuim osa. Seejuures
on losooline loogika matemaatilise loogikaga vga tihedas suh-
tes ning ht ei saa olla ilma teiseta: matemaatiline loogika on alati
2 1. Sissejuhatus
ka losooline loogika, ning n. mittematemaatiline losooline
loogika on samas oluline matemaatilise loogika jaoks.
Tuleme tagasi loogika aine juurde. Lhidalt ja robustselt eldes
uurib loogika mtlemise kige fundamentaalsemaid aspekte. Mis
asi mtlemine ieti on ja mis on tema fundamentaalsed aspektid?
Mtlemist uurivad paljud distsipliinid, niteks pshholoogia, ning
miks mitte ka ajalugu ja kirjandusteadus. Loogika eripraks on
uurida, mida ldse saab melda ja mida melda ei saa vik-
sime elda, et loogika uurib puhast ehk tielikult abstraheeritud
mtlemist.
Loogika, mtlemise ja maailma suhete skaalal on mitu vas-
taspoolust: hel pool seisab loogika kui jumaliku, paratamatu
ning maailmast sltumatu te uurimine, teiselt poolt aga ei pse
loogika asjaolust, et loogikud on konkreetsed inimesed reaalses
maailmas ning neile omased fundamentaalsed mtlemisprintsiibid
ei pruugi olla needsamad, mis kujutletavatel kosmoses hljuvatel
limtlejatel.
1.1.1. Mtlemine
Vaimne tegevus ehk ajutegevus ei koosne kunagi ainult sihipra-
sest mtlemisest: suurem osa inimajust tegeleb igasuguste muude,
samuti vga oluliste asjadega, nagu silmanrvidest saabunud ku-
jutise anals, kne sntees, assotsiatsioonide otsimine mlust,
instinktimehhanismide jrgimine jne. jne. Isegi juhul, kui seda
kike peaks koordineerima meile tundmatu mittemateriaalne juma-
lik vaim, jb nimetatud vaim ikkagi ainult heks vaimse tegevuse
komponendiks. Tegelik mtlemisprotsess, nagu me enda peal ko-
geme, koosneb tuhandetest protsessidest, mida mtleja reeglina ei
teadvusta teadvus on vaimse tegevuse jme pisike veepinnale
ulatuv nurk.
Igasugune vaimne tegevus nagu ka igasugune protsess ldse,
ei ole kindlasti mitte alati mtlemisprotsess. Poolunes lebamist,
toidu ja veini nautimist ning mlestustes uitamist ei saa nime-
tada mtlemiseks selle sna ldkasutatavas thenduses. Snaga
1.1. Loogika aine 3
mtlemine thistatakse enamasti sihiprast vaimset tegevust mingi
kuigivrd selgelt kirjeldatava probleemi lahendamiseks.
Ei ole vimalik elda, mis asi on mte vi defineerida selgelt
mtlemist kui niisugust. Mida me saame teha, on tuua niteid nii
mtlemisest kui sellisest vaimsest tegevusest, mida mtlemiseks
nimetada ei saa. Ma vin niteks melda, et praegu sajab
siinsamas ues vihma, ma kaalun vhem kui sada kilo vi et
kaks pluss kaks on neli. Ma vin melda:
Kui kik inimesed on surelikud ja kui mina olen inimene,
siis ma olen surelik.
Aga ma ei saa melda:
Kui kik inimesed on surelikud ja kui mina olen inimene,
siis ma ei ole surelik.
Samamoodi ei saa melda:
Sellest, et ma olen, jreldub, et ma ei ole,
Praegu sajab siinsamas ues vihma ja ei saja vihma.
Viimased kolm videt on meldamatud ehk absurdsed. Need
vited on kahtlemata olemas kui laused, mida saab lugeda ja
mille le saab melda, aga neid endid melda ei saa: taoliste
lausete tlemine vi uskumine on kll vaimne tegevus, aga
mitte mtlemine selle sna ldkasutatavas thenduses. Ma ei saa
tunnetada, et need laused viksid olla tesed.
Mtlemise sna laiemalt mistes vib rkida igest ja
valest mtlemisest, kuid selle hinnaks on sna thenduse hgus-
tumine: kui ma saan melda A on ja A ei ole ning neli on
seesama mis viis, miks mitte siis juba igasugust vaimset tegevust
mtlemiseks nimetada. Kuna loogika seisukohast pole meie termi-
noloogiline probleem kriitiline, jtame siinkohal keelelosoolise
arutelu katki.
4 1. Sissejuhatus
1.1.2. Induktsioon ja deduktsioon
Laias laastus saab mtlemismehhanisme jagada kahte phirhma:
ldistuste ja jrelduste tegemine.
ppimine ehk ldistuste tegemine ehk induktsioon
Mrgates, et paljud asjad, millega me kokku puutume, esinevad
kas enamasti vi alati koos, ldistame selle kokkusattumuse sageli
reegliks. Laps jtab kiiresti meelde, et knlaleegi puudutamisele
jrgneb valuaisting: paarist kokkusattumusest on ta moodustanud
enda jaoks reegli, s.t. ra ppinud, et leegi puudutamine teeb
haiget. Keeleppimine kib enamvhem samamoodi: kui ema ja
isa tlevad sk enamasti sellises olukorras, kus parajasti sa
pakutakse, vi kui nad sk eldes toidule osutavad, jtab laps
mne aja prast meelde seose sgi enda ja sna sk vahel.
Enamikul igapevaselt pitud reeglitel on paraku omadus
erandlikes olukordades mitte kehtida: reeglitel on reeglina erandid.
Vanemas eas pib laps oma llatuseks, et leegi puudutamine ei
olegi alati valus: kui srm leegist hsti kiiresti lbi vuhistada
(eriti veel siis, kui ta eelnevalt mrjaks teha), ei saa ldsegi
haiget. Igaks teab, et lindudel on omadus lennata, aga mitte
alati: pingviinid ja jaanalinnud reeglina ei lenda, samuti ei lenda
surnud linnud. Erandina erandist lendab jmerest krgele kaldale
vljahppav pingviin ikkagi paar sekundit. Ja nii edasi ja nii edasi:
reeglitel on erandid, eranditel on erandid, ning viimastel omakorda
erandid, kuni lpmatuseni.
ldistuste tegemine ehk induktsioon on seega mtlemisprot-
sess, mis ei anna mingeid kindlaid teadmisi. ldistuste edukus
on statistiline: mida sagedamini selliselt leitud reegel kehtib, seda
parem, aga ei maksa loota, et ta alati kehtib. Sellele vaatamata on
ppimine ja ldistamine inimese ning muu eluslooduse jaoks ilm-
selt kige suurema thtsusega mtlemisprotsess ldse. Nii linnas
kui metsas on kiire reageerimine olulisem kui pikk aeganudev
mtisklemine.
1.1. Loogika aine 5
Kokkuvtteks: induktsioon kui statistilisi ning paratamatult
ebakindlaid tulemusi andev mtlemismehhanism ei kuulu formaal-
loogika uurimissfri. Tasub aga meelde jtta, et lalkasutatud
snal induktsioon on ka teine thendus matemaatilise indukt-
siooni nol. Viimane on tpne miste, mis annab alati igeid
resultaate: sellisena kuulub ta loogika olulisemate uurimisobjektide
hulka.
Reeglite rakendamine ehk jrelduste tegemine ehk deduktsioon
Jreldamise mistel ja jrelduste tegemisel on loogikas funda-
mentaalne koht: loogikat huvitav mtlemisprotsess on reeglina
suunatud lihtsatest faktidest vi videtest keerulisemate jrelda-
misele. Seetttu on suur osa loogikas sagedamini kasutatavatest
reeglitest esitatud jrelduse vormis: he vi mitme vite tesusest
jreldub hoopis uus vide. Loogikareeglite kasutamist uute videte
jreldamiseks nimetatakse sageli nende videte tuletamiseks ehk
testamiseks.
Inimene ja muu elusloodus on keeruliste jrelduste tegemise
jaoks palju halvemini kohastunud kui uute umbkaudsete reeglite
ppimisele. Jrelduste tegemine vtab palju aega, kuna enamikus
olukordades on meil kasutada suur hulk reegleid ning neid reegleid
saab kombineerida vga mitmel viisil. Tulemuseni pdlemine
sarnaneb labrindis ekslemisega: mida sgavamat ja keerulisemat
jreldust me teha pame, seda rohkem on teel vimalikke
eksiradu, mis tulemuseni ei vii, aega aga raiskavad kll.
Erinevalt induktsioonist garanteerib igete reeglite rakendamine
igetele faktidele alati ka ige tulemuse. Takistuseks on ainult
eelnevalt mainitud suur ajakulu ning probleem, kas meie reeglid ja
faktid ise on iged, samuti, kas neid reegleid ja fakte on piisavalt
palju. Valedelt faktidelt ning ekslike reeglite abil ei ole vimalik
teha igeid jreldusi. Suur osa loogikat ongi seetttu phendatud
kindlasti igete reeglite otsimisele.
6 1. Sissejuhatus
1.1.3. Mtlemise paratamatud aspektid
Loogika uurib mtlemise paratamatuid aspekte ehk seda, mis
ldse teeb mtlemisest mtlemise ehk ige mtlemise. Enamik
meie vaimsest tegevusest ilmselt ei ole paratamatu, vaid sltub
tujust, ilmast, haridusest ja muudest taolistest pooljuhuslikest tegu-
ritest. Sestap on oluline eraldada kasvi vga vike hulk mtlemise
komponente, ilma milleta kuidagi lbi ei saa ja mis on kindlasti,
alati ja igal juhul iged. Kui me niisugused algkomponendid oleme
kord eraldanud, saame neid loodetavasti kasutada ha suuremate
paratamatult ige mtlemise konstruktsioonide ehitamiseks.
Mtlemise fundamentaalsete aspektide eraldamisega tegi tea-
daolevalt algust vanakreeka losoof Aristoteles. Raamatus Loo-
gika loetleb ta hulga mtlemise kaheldamatult igeid reegleid,
mida kasutades saab veenduda kllalt keeruliste mtlemiskonst-
ruktsioonide igsuses.
Ksime nd, millised viksid olla need ige mtlemise
baaskomponendid. Esiteks tegeleb loogika kui teadus mtlemise
selliste meetoditega, mida saab videtena kirja panna. Uurides
mtlemise fundamentaalseid aspekte, ei juaks me kuigi kaugele,
kui htteist vahel selgelt kirja ei saaks panna.
Vited, mis on paratamatult iged, on seda sageli oma ehituse
tttu. Niteks on vide Kui praegu sajab vihma, siis praegu sajab
vihma ige sltumata sellest, kas praegu ka tegelikult vihma
sajab vi ei. Praegu sajab vihma asemele viksime uuritavas
vites samahsti kirjutada Kaks pluss kaks on neli vi Kaks
pluss kaks on viis, uuritav vide jks ikka teseks. Kuna meid
huvitab esmajoones videte ldine ehitus, siis kasutame ndsest
kokkulepet, et need vite osad, mida vib suvaliselt asendada,
thistatakse suurte thtedega, mida nimetatakse lausemuutujateks.
Niisiis on alati ehk tautoloogiliselt ige jrgmine:
Kui vide A on ige, siis on vide A ige
ehk lhemalt ja peaaegu ekvivalentselt
A-st jreldub A.
1.1. Loogika aine 7
Nagu eldud, thistab lausemuutuja A siin suvalist videt: A sisust
vi igsusest meie suurema vite igsus ei sltu. Viimane on ige
oma ehituse ehk vormi ehk struktuuri tttu.
Samamoodi on oma ehituse tttu iged
Kui A ja B, siis A;
Ei ole tsi, et A ja mitte A;
Juba vanas Kreekas tuntud jreldusreegel modus ponens:
Kui A-st jreldub B, ning A on tsi, siis on ka B tsi.
Muutujad A ja B thistavad siin jllegi suvalisi viteid.
Toodud nidetes moodustasime viteid sidesnade ja, ei,
ning jreldub ehk kui . . . siis abil. Sellised sidesnad vasta-
vad ilmsesti mtlemise teliselt fundamentaalsetele kategooriatele,
ilma milleta me mtlemist ette kujutada ei oska. Lisaks taolistele
sidesnadega mrgitud kategooriatele sisaldab mtlemine ilmselt
veel hulga teisigi keeles vljendatavaid kategooriaid. Eriti olu-
lised paistavad olevat konstruktsioonid, mida saab moodustada
kigi, olemasolemise ja omaduse abil. Nide triviaalsest
test (eeldusel, et mingid asjad on ldse olemas):
Kui kigil asjadel on omadus P, siis on olemas asi, millel
on omadus P.
Viimane vide on ige konstruktsiooni tttu, P sisust sltumata:
P vib olla omadus olla punane kala vi omadus kas mitte
olla arv vi olla viiest suurem arv, see asja ei muuda. Samas
ilmselt ei ole tsi vide
Kui on olemas asi, millel on omadus P, siis on kigil
asjadel omadus P.
Vaatame jreldust kahest eeldusest:
1. eeldus: iga koer on imetaja.
2. eeldus: mned neljajalgsed on koerad.
8 1. Sissejuhatus
Jreldus: mned neljajalgsed on imetajad.
See tuletus on ige oma konstruktsiooni tttu, sltumata snade
nagu neljajalgne, koer ja imetaja sisust. Viimased vib vlja
vahetada:
1. eeldus: iga anarhist on vabaabielu pooldaja.
2. eeldus: mned valitseva partei liikmed on anarhistid.
Jreldus: mned valitseva partei liikmed on vabaabielu pooldajad.
Tuletuse struktuuri vib seega esitada muutujate x, y ja z abil
ning tuletus on ige sltumata fraasidest, millega neid muutujaid
asendada:
1. eeldus: iga x on y.
2. eeldus: mni z on x.
Jreldus: mni z on y.
1.1.4. Videte formaalne esitus
Loogikas uuritavad tuletused ei koosne enamasti he reegli he-
kordsest rakendamisest, vaid mitme reegli mitmekordsest raken-
damisest: tuletus ehk testus koosneb lihtsatest osadest, kuid
moodustab tervikuna omaette keerulise struktuuri.
Keerulise tuletusstruktuuri esitamine inimkeelsete lausetena
muudab esimese vga suureks, kohmakaks ja raskesti mistetavaks.
Loogikas on seetttu kasutusel spetsiaalsed formaalsed keeled, mis
on harilike keeltega vrreldes lhemalt kirjapandavad. Mis kige
thtsam: formaalsed keeled vldivad harilikus keeles esinevaid
mitmethenduslikkusi. ks nide: 6. sajandil e.m.a. elanud Ldia
kuningas Krsus uuris Delfi oraaklilt jrele, kas tasub minna
sjakigule Prsia vastu. Oraakel tles: Kui alustad sda Prsiaga,
hvitad vimsa kuningriigi. Oraaklilt julgustust saanud Krsus
rndaski Prsiat, kuid kaotas. Hvis nimelt tema enda kuningriik!
Lihtsustatuse tttu on formaalsed keeled harilike keeltega
vrreldes palju vaesemad ning vimaldavad edasi anda ainult vga
1.1. Loogika aine 9
piiratud ampluaaga viteid. ks lihtsamaid formaalseid keeli on
lausearvutuse keel. Viimases saab viteid moodustada lihtviteid
thistavatest thtedest loogilise thendusega sidesnu (ja, vi, ei,
kui . . . siis) thistavate smbolitega (&, , , ).
Mainitud olulistel sidesnadel endilgi ei ole harilikus keeles
tpset thendust. Vi esineb sageli thenduses kas see vi
teine. Lause Ta on punapine vi meessoost on harilikus
keelekasutuses kohatu. Klassikalise loogika jaoks on formaalne
vide A B ige siis ja ainult siis, kui vhemalt ks videtest A
ja B on ige; seejuures vivad ka mlemad korraga iged olla.
Loomuliku keele jreldussuhe erineb samuti formaalsest. Lause
Kuu peal on lehmi, jrelikult olen ma kolm meetrit pikk on
loomuliku keele mttes vr, kuna sna jrelikult ei sobi panna
asjade vahele, mis ilmselt pole omavahel phjuslikus seoses.
Klassikalise loogika jreldussuhe A B on aga ige siis ja ainult
siis, kui kas B on ige vi A on vale: teiste snadega, B A.
Kui kuu peal lehmi pole, siis on lause Kuu peal on lehmi
ma olen kolm meetrit pikk formaalselt ige, A ja B phjuslik
suhe pole seejuures oluline.
Lisaks mainitud klassikalisele loogikale on hulk mitteklassika-
lisi loogikaid, kus videte tesus ja loogikatehete nagu ja
tpne thendus on deneeritud hoopis teisiti. Mitmed mitteklas-
sikalised loogikad pavad tabada elementaarsete loogikatehete
igapevast thendust, niteks jreldussuhte phjuslikku iseloomu.
Niteid: Lause Kui A ja B, siis A pannakse kirja kui
(A& B) A. lalmainitud jreldusreegli saab kirja panna kui
((A B) & A) B
Vaatame jrgmisena olukorda, kus meil on teada, et kehtivad
jrgmised kolm lausearvutuse keeles esitatud videt:
(1) A
(2) A B
(3) B C
Esimesest kahest saab jreldusreegliga tuletada formaalselt vite B,
10 1. Sissejuhatus
ning B ja vide (3) annavad jreldusreegli abil lpuks vite C.
Viimase tuletussammu formaalseks lbiviimiseks asendasime j-
reldusreeglis muutujad A ja B muutujatega B ning C.
Enamik loogikaharusid kasutab lausearvutuse keele rikastatud
variante, mis lubavad kirja panna mrksa keerulisemaid viteid,
kui vimaldab puhas lausearvutus. Olulisem neist rikkamatest for-
maalsetest keeltest on predikaatarvutuse keel, milles saab rkida
objektidest, nende omadustest ja omavahelistest suhetest.
Keerulisemad formaalsed keeled vimaldavad vljendada veel
samasust, paratamatust, vimalikkust, teadmist ja aega, suhtuda
videtesse kui objektidesse, kasutada vaikimisireegleid jne. P-
himtteliselt on vimalik konstrueerida kuitahes keerulisi ja vl-
jendusrikkaid formaalseid keeli, kuid kseerimata ning pidevalt
areneva loomuliku keelega vrreldes jb mistahes formaalne keel
alati piiratuks.
Kuivrd loogika uurib mtlemise fundamentaalseid ja abstrakt-
seid omadusi, siis on formaalse keele piiratus loogika seisukohast
kasulik. Formaalses keeles moodustatud tuletus ehk testus on
selgepiiriline matemaatika vahenditega uuritav objekt, ning ena-
mikku formaalset loogikat nimetatakse uurimismeetodi jrgi sageli
matemaatiliseks loogikaks.
1.1.5. Teste lausete tuletamisalgoritm
Formaalsete keelte kasutamisel loogikas pole motivatsiooniks mitte
ainult nende keelte lihtsus ja tuletuste selge ning hemtteline
struktuur. Formaalseid keeli kasutatakse ju laialdaselt ka loogikast
vljaspool, niteks arvutite programmeerimisel: kik programmee-
rimiskeeled on formaalsed keeled.
Loogikas kasutatakse selliseid formaalseid keeli, mille jaoks
on vimalik konstrueerida algoritm (s.o. selged, hemttelised,
mehhaaniliselt jrgitavad juhised) igete lausete konstrueerimiseks,
s.t. iga niisuguse keele K jaoks konstrueeritakse algoritm M,
millega saab kontrollida, kas suvaline keeles K kirjutatud vide
on ige vi ei. Taoline algoritm esitatakse enamasti loogikareeglite
koguna.
1.1. Loogika aine 11
Keerulises formaalses keeles kirjutatud keerulised vited
vivad vljendada ka olulisi ning pris keerulisi probleeme. Meh-
haanilise, arvutiga teostatava kontrolli vimalus vib tunduda vga
ahvatlev, kuid siin tuleb arvestada, et keeruliste lausete igsuse
kontroll on vga tmahukas lesanne ning et enamiku teliselt
huvitavate videte (kasvi enamiku senilahendamata matemaati-
kaprobleemide) igsuse automaatne kontrollimine ei ole tnapeva
arvutitele jukohane. Phimtteliselt on automaatne kontroll kll
vimalik, kuid see vib vtta arvutil aega sadu miljardeid aastaid,
s.t. sageli pole mingit lootust seda tegelikult kasutada. See ei
thenda muidugi, et lootust ldse pole: mnda liiki suhteliselt
lihtsamate videtega saab arvuti mistliku aja jooksul hakkama.
Videte igsuse automaatsest kontrollimisest rkides tuleb
vahet teha igete videte igsuse testamisel ja valede videte
mitteigsuse testamisel. Esimene probleem (igete videte ig-
suse testamine) on algoritmiga mehhaniseeritav, teine probleem
(valede videte mitteigsuse testamine) aga pole keerulisemate
formaalsete keelte (niteks predikaatarvutuse keel) jaoks mehha-
niseeritav. Viimasel juhul suudavad algoritmid osa videte jaoks
nidata, et need pole iged, kuid nad ei suuda nidata seda kigi
valede videte jaoks, vaid jvad halvemal juhul igavesti tle,
mingitki resultaati andmata.
Niisuguse asmmeetria phjuseks on asjaolu, et keerulisemate
formaalsete keelte jaoks saab kirjutada algoritmi kigi teste vi-
dete tuletamiseks, mitte aga kigi valede videte tuletamiseks.
Teste videte tuletamise algoritmi skeem on ldjuhul jrgmine:
alustatakse lplikust hulgast elementaarsetest baastdedest ehk
aksioomidest. Aksioomidele rakendatakse tuletusreegleid, mis ka-
sutavad teadaolevaid ehk juba tuletatud teseid viteid. Sel viisil
saadakse uued tesed vited, mida saab nd omakorda kasutada
tuletusreeglite eeldustena. Kui meid huvitav vide V on tene,
siis thendab see, et nimetatud vide taolise protsessi kigus ka
kskord tuletatakse. Kui V aga pole tene, siis seda muidugi ei
tuletata ning meil oleks vaja mingil viisil testada, et videt V
antud tuletusalgoritmiga tuletada ei saa. ldjuhul pole aga vi-
12 1. Sissejuhatus
malik anda algoritmi, mis sellise testuse iga V jaoks alati leida
suudaks.
Kokkuvtteks: loogika uurib selliseid formaalseid keeli, mille
jaoks suudetakse kirja panna selles keeles kirjutatud igete vi-
dete tuletamise algoritm. Loogika kasutatav keel kib alati paaris
mehaanilise mtlemise mehhanismiga; keelest ja tuletamismehha-
nismist koosnevat paari nimetatakse teooriaks ehk arvutuseks. Ar-
vutust, mille iga lause jaoks saab algoritmiliselt lahendada, kas ta
on tene vi vr, nimetatakse lahenduvaks (nide: lausearvutus),
lejnuid nimetatakse mittelahenduvaks (nide: predikaatarvutus).
1.1.6. Lihtsatest videtest ehitatakse keerulisi
Meie nited olid siiamaani triviaalsed ja lugejal vib tekkida
kahtlus, kas selliste triviaalsuste uurimine saab elda midagi
olulist mtlemise vi ldse millegi kohta. Vastuseks tleme, et
loogika alustab teadlikult triviaalsustest ning mida triviaalsematest,
seda parem: nende igsuse suhtes ei teki kellelgi mingeid kahtlusi.
Oluline on, et loogika ei j triviaalsuste juurde pidama, vaid
nitab, kuidas neist konstrueerida ha keerulisemaid ja sisukamaid
viteid. Viimaste igsus on sageli kike muud kui triviaalne (tegu
vib olla niteks keeruliste teoreemidega matemaatikas), aga iga
ksik samm tema konstruktsioonis on triviaalselt arusaadav ja
ige.
Sugulussidemed
Vtame esimeseks nitevaldkonnaks sugulussidemete kontrollimise
lesande. Et midagi kontrollida, peab meil kigepealt olema kuskilt
vtta andmebaas, kus hulga inimeste jaoks kirjas, kes on tema ema
ja kes on isa. Sellise andmebaasi saab kirja panna kui suure vite
stiilis Leena Tammik on Jaan Tammiku ema ja Mihkel Tammik
on Jaan Tammiku isa ja Jaan Tammik on Mart Tammiku isa ja
Maia Kask on Ants Kase ema ja Mihkel Tammik on Ants Kase isa
ja . . . . Predikaatarvutuse formaalses keeles mrgitakse asjaolu,
1.1. Loogika aine 13
et objektidel x ja y on suhe P jrgmiselt: P(x, y). Sugulaste
andmebaas neb predikaatarvutuse keeles vlja niimoodi:
ema(Leena_Tammik,Jaan_Tammik) &
isa(Mihkel_Tammik,Jaan_Tammik) &
isa(Jaan_Tammik,Mart_Tammik) &
ema(Maia_Kask,Ants_Kask) &
isa(Mihkel_Tammik,Ants_Kask) &
. . .
Vanaisaks ja vendadeks olemise saab defineerida jrgmiste
videtega:
x on y vanaisa siis ja ainult siis, kui on olemas selline z,
et x on z isa ja z on y isa vi z on y ema.
Predikaatarvutuse keeles: xy (vanaisa(x,y)
z (isa(x,z) & (isa(z,y) ema(z,y))) ). Fraas
x thendab iga x-i jaoks kehtib, x thendab on olemas
selline x, et . . ..
x on y vend siis ja ainult siis, kui kas on olemas selline z,
et z on x isa ja y isa vi kui on olemas selline u, et u on
x ema ja y ema.
Predikaatarvutuse keeles: xy (vend(x,y)
z (isa(z,x) & isa(z,y)) u (ema(u,x) &
ema(u,y)) ).
sjatoodud definitsioonides thistavad vikesed thed x, z, y ja u
suvalisi inimesi.
Nd saame leida kindlasti igeid vastuseid ksimustele
sugulussidemete kohta, mis tulenevad meie andmebaasist. K-
simusele Kas Mihkel Tammik on Mart Tammiku vanaisa?
jaatava vastuse andmiseks tuletame vite Mihkel Tammik on
Mart Tammiku vanaisa ehk predikaatarvutuse keeles vana-
isa(Mihkel_Tammik,Mart_Tammik). Tuletamise juures kasu-
14 1. Sissejuhatus
tame mehhaaniliselt, ilma omapoolsete lisaarutlusteta meile ette-
antud andmebaasi ning loogika elementaarselt teseid viteid. Sel-
leks asendame vanaisasuhet deneerivas vites muutuja x nimega
Mihkel_Tammik, muutuja y nimega Mart_Tammik ja muutuja z
nimega Jaan_Tammik. Vanaisa denitsiooni kahepoolsest jrel-
dussuhtest lheb meil tarvis ainult vasakpoolset . Seega
saame vanaisareegli meie jaoks vajaliku esialgse erikuju
vanaisa(Mihkel_Tammik,Mart_Tammik)
isa(Mihkel_Tammik,Jaan_Tammik) &
(isa(Jaan_Tammik,Mart_Tammik)
ema(Jaan_Tammik,Mart_Tammik)).
Lauseosa (isa(Jaan_Tammik,Mart_Tammik)
ema(Jaan_Tammik,Mart_Tammik)) tuletamiseks piisab
sellest, kui testada isa(Jaan_Tammik,Mart_Tammik). Reegli
lpliku erikujuna kasutame jrgmist:
vanaisa(Mihkel_Tammik,Mart_Tammik)
isa(Mihkel_Tammik,Jaan_Tammik) &
isa(Jaan_Tammik,Mart_Tammik).
Viimased kaks videt on meie sugulussidemete andmebaasis
olemas, ning jreldusreegliga saame seetttu tuletada vana-
isa(Mihkel_Tammik,Mart_Tammik).
Vib muidugi ksida, kust peaksime teadma, et z-ks sobib
nimelt Jaan_Tammik. Sellelaadsetele ksimustele vastuse leid-
mine on nimelt see, mis tegeliku testamise vga tmahukaks
muudab. ldiselt ei ole muud tkindlat varianti kui kigi vima-
luste mehhaaniline jreleproovimine, s.t. kuni tulemus kes pole,
tuleb katseliselt asendada z nii Mihkel, Mart, Jaan, Leena, Maia
Tammiku kui ka Ants Kasega.
Tuumajaama kontrollssteem
Vtame teiseks nitevaldkonnaks praktilise probleemi tuumaelekt-
rijaamadega. Sellistes suurtes jaamades on keerukad mitmekordselt
dubleeritud juhtimis- ja kaitsessteemid, mis peavad garanteerima,
1.1. Loogika aine 15
et kunagi ei juhtuks nnetusi. Iga niisuguse ssteemi saab kirja
panna suure hulga elementaarsete videtena. Ksimuse kaitsess-
teemide endi korrektsuse kohta saab pstitada kui ksimuse, et
kas nnetus on tkorras kaitsessteemi korral vlistatud. Selli-
sele ksimusele kindlasti ige vastuse leidmine on vga oluline
ja samas vga keeruline ning siin kasutataksegi sageli arvutite
abi. Arvutiga ptakse tuletada vide Juhtimisssteemi korrekt-
sust kinnitav vide jreldub juhtimisssteemi kirjeldavate videte
hulgast, kasutades abivahenditena ainult elementaarseid, kindlasti
teseid viteid.
Mistagi ei garanteeri kaitsessteemide korrektsuse testamine,
et kaitsessteemi hoopiski vlja ei llitata, misjrel nnetus vib
juhtuda kigele vaatamata. Selle vltimiseks oleks vaja kirjeldada
detailselt kigi inimeste ja ehk koguni kogu maailma olekut ja vi-
malikku kitumist. Kui teoreetiliselt viks niisugune kirjeldus olla
ehk isegi vimalik, siis praktiliselt on seda vimatu konstrueerida,
kasutamisest rkimata: kirjeldus oleks lootusetult suur.
Tisarvudega tegelev matemaatika
Vtame kolmandaks nitevaldkonnaks harilike tisarvudega tege-
leva matemaatika. Nimetame sellist sorti matemaatikat aritmee-
tikaks. Aritmeetika valdkonnas deneeritakse liitmis- ja korruta-
mistehted ning hakatakse seejrel teoreeme testama. Lihtsaimad
teoreemid on harilikud arvutuslesanded, nagu
Kas 2 15 = 25?
Kas (3 + 4) 7 = 85?,
keerulisemad aga privad arvude ja tehete ldiste omaduste jrele,
nagu
Kas iga arvu x ja arvu y jaoks kehtib x +y = y +x?
Kas algarve on lpmatu hulk?
16 1. Sissejuhatus
Fermat nn. suur teoreem, mida keegi pole veel testada
suutnud: iga kahest suurema tisarvu x jaoks kehtib vide:
ei leidu selliseid nullist suuremaid tisarve u, v ja w, et
kehtiks u
x
+v
x
= w
x

jne. jne. Aritmeetika on piiramatult keeruline: arvude kohta saab


esitada lpmatult palju ksimusi ehk testust ootavaid teoreeme,
ja lahendatud on sellest lpmatust hulgast vaid mned tuhanded.
Aritmeetika alused, niteks liitmis- ja korrutamistehted, saab
selgete videtena suhteliselt kergesti kirja panna. Samuti saab kirja
panna iga huvipakkuva aritmeetikateoreemi. Teoreemi testamiseks
tuleb teda kirjeldav vide tuletada aritmeetika aluseid kajastavate
videte hulgast, kasutades selle juures vaid elementaarselt teseid
viteid. Kui me niisuguse tuletuse oleme leidnud, on teoreem ilma
igasuguse kahtlusevarjuta ige.
1.1.7. Aksioomid, reeglid ja mittetielikkus
Niisiis on loogikute ks lesanne eraldada mtlemise kirjapan-
davaid baaskomponente: oma struktuuri tttu paratamatult teseid
viteid ehk aksioome ja teadaolevalt testest videtest uute videte
moodustamise elementaarseid reegleid.
Kigi selliste mtlemise baaskomponentide olulisim omadus
on, et nende tesust ei saa testada: me lihtsalt teame ehk
usume, et nad on tesed. Enamasti usume seda selleprast, et need
baaskomponendid on niivrd lihtsad ja nende tesus nib olevat
paratamatu. Ei saa ju kahelda vites Kui A, siis A, samas ei
saa seda videt ka kuidagi testada: testus peaks kusagilt pihta
hakkama, aga kust? Testuste alguspunktid ning uute videte
tuletamise reeglid ongi meie ainus kindel pind, mtlemise alus,
milles kahelda ei saa.
Ksime nd, kui palju selliseid uskumist nudvaid baaskom-
ponente ldse olemas on ehk kui palju neid mtlemise juures vaja
lheb?
Vastus sltub sellest, mis sorti valdkonnast me melda soo-
vime. Vib muidugi elda, et soovime melda kigest, aga
1.1. Loogika aine 17
vaatame esialgu lalpool toodud kolme nidet: sugulussidemete
andmebaas, tuumajaama kaitsessteem ja aritmeetika.
Esimese kahe oluliseks omaduseks on lplikkus. Tepoolest,
olgu sugulaste andmebaasis vi mitu miljonit nime, nende hulk
on ikkagi lplik. Samamoodi tuumajaamaga: kuitahes keeruline
kaitsessteem ka ei oleks, sellegipoolest on tegu lpliku hulga
torude, juhtmete, andurite ja muude komponentidega, mis konk-
reetsel viisil kokku pandud. Niisuguste lplike andmebaaside vi
ssteemide le arutlemise jaoks on loogika tielik: phimtteliselt
on vimalik kogu ssteem hulga videtega kirjeldada ning seejrel
saab vikese hulga standardsete loogikareeglitega tuletada iga ige
vite nimetatud ssteemi kohta.
Erinevalt esimesest kahest on meie kolmanda nite aritmee-
tika nol tegemist lpmatu ssteemiga: tisarve on ju lpmatult
palju. Kas lpmatut ssteemi saab ldse kirjeldada lpliku hulga
videtega? Teatud piirini saab. Deneerime niteks tisarvude
hulga:
0 on tisarv
Kui x on tisarv, siis x + 1 on tisarv
Definitsioonis kasutasime smboleid 0 ja +1, millele me mingit
aprioorset thendust ei omista. Oluline on vimalus konstrueerida
definitsiooni abil lpmatu hulk objekte:
{0, 0 + 1, 0 + 1 + 1, 0 + 1 + 1 + 1, . . .}
Aritmeetika jaoks tuleb meil deneerida tisarvude hulga jrg-
mine fundamentaalne omadus (matemaatilise induktsiooni reegel):
Kui arvul 0 on omadus P ja kui vitest, et arvul x on omadus P,
jreldub alati, et ka arvul x + 1 on omadus P, siis on ki-
gil arvudel omadus P. Induktsioonireeglit ei saa tuletada loogika
baasvidetest: me vtame induktsioonireegli enda uueks tisarvude
kohta kehtivaks baasviteks. Thendab, me usume, et induktsioo-
nireegel on matemaatiliselt ige. Miks me peaksime sellise reegli
tesust uskuma? Selleprast, et kui tema le mnda aega melda,
siis saame aru, et see reegel on paratamatult ige, samamoodi
18 1. Sissejuhatus
nagu me saame aru, et vide Kui A, siis A on paratamatult
ige. Erinevalt viimasest on induktsioonireegel aga keerulisem
ning tema paratamatu igsus ei tundugi enam elementaarne. Mis
juhtub, kui meil tekib vajadus samamoodi baasreeglitena uskuma
hakata induktsioonireeglist veel palju keerulisemaid matemaatilisi
viteid?
Vaatame esialgu aritmeetika piiratud varianti, nn. Presburgeri
aritmeetikat. Viimases defineeritakse ksainus tehe liitmine
ja kirja on vimalik panna mitmesuguseid teoreeme liitmise kohta.
Saab nidata, et niisugune ainult liitmist sisaldav aritmeetika on
lpliku hulga videtega tielikult aksiomatiseeritav, s.t. iga
matemaatiliselt ige teoreem selles aritmeetikas on loogiliselt
tuletatav -s sisalduvatest baasvidetest, sellele vaatamata et
tisarve on lpmatult palju.
Liigume nd edasi piiranguteta aritmeetika juurde. Piirangute
kaotamiseks piisab korrutamise lubamisest: nimelt saab liitmise ja
korrutamise abil defineerida ka teised tuntud aritmeetikatehted.
Olgu meil hulk aritmeetika aluseid kirjeldavaid baasviteid .
Kas iga aritmeetikateoreemi, mis on tegelikult tene, saab loo-
gikareeglitega tuletada -st? Kui jah, siis on aritmeetika jaoks
tielik aksioomide kogu. Kui ei, siis ilmselt on -st midagi
vajalikku puudu.
Kolmekmnendatel aastatel testas Kurt Gdel enamikule kaa-
saja loogikutele ootamatult he praegu kuulsaima loogikateoreemi
ldse: teoreemi mittetielikkusest. Nimetatud teoreem nitab, et
aritmeetikat ei saa taandada loogikale. Konkreetselt: ei ole olemas
lplikku baasvidete kogu , millest saaks tuletada kiki arit-
meetikateoreeme. kskik kui palju baasviteid aritmeetika kohta
me ka -sse ei vtaks, alati leidub matemaatiliselt igeid arit-
meetikateoreeme, mida sellest -st tuletada ei saa: nende jaoks
tuleb hulk uusi teseid baasviteid lihtsalt juurde vtta. Seda
saab muidugi teha: vtame uue baasvidete hulga lisaks ning
saame vajaliku teoreemi tuletada. Paraku aga leidub seejrel ik-
kagi aritmeetikateoreeme, mille jaoks ei piisa ka uuest tiendatud
baasvidete hulgast. Jne. jne.: baasvidete hulk ei saa kunagi kigi
igete aritmeetikateoreemide tuletamiseks piisavalt suureks.
1.2. Loogika ajalugu 19
Kui juba aritmeetikat ei saa lpliku hulga baasvidetega
aksiomatiseerida, siis loomulikult ei saa seda teha ka enamiku
teiste matemaatikaharude jaoks. Samuti ei saa aksiomatiseerida
palju muid, matemaatikast tiesti erinevaid mtlemisvaldkondi,
mis tegelevad lpmatute struktuuridega.
See ei thenda samas, et loogikavahendid oleksid aritmeetika
vi muude keerulisemate valdkondade juures kasutud: ldjuhul
piisab meile huvi pakkuvate videte testamiseks siiski suhteliselt
vikesest hulgast harilikest elementaaraksioomidest. Juhud, kus
neist ei piisa, on kll olemas, kuid praktikas vga haruldased.
Loogikateaduse uurimisvaldkonnaks ei ole mitte niivrd kee-
ruliste loogiliste tuletuste mehhaaniline sooritamine kui mtlemise
fundamentaalsete meetodite ja piiride uurimine. Gdeli teoreem
mittetielikkusest on ks loogikateaduse resultaatide ilusamaid
niteid.
Mida mittetielikkus ehk aksiomatiseerimise vimatus meile
tleb? Ilmselt seda, et enamikku tdesid (me mtleme siinjuures
ka absoluutseid, paratamatuid, matemaatilisi tdesid) ei saa tule-
tada hestki vikesest konkreetsest baasvidete hulgast. Mtlemise
jaoks ei ole kindlat lplikku alust, millest kik muu loogiliselt
tuleneb. Mida keerulisemaid viteid me testada tahame, seda
suurema hulga ja keerulisemate baasvidete tesust peame us-
kuma. Maailm on tepoolest vga ebakindel: mtlemise baas on
testusteta uskumine.
1.2. Loogika ajalugu
1.2.1. Antiikloogika
Aristotelese-eelne periood
Keskajast prineva legendi jrgi leiutas loogika Kreeka losoof
Parmenides (5. sajand e.m.a.) Egiptuses kaljurngaste vahel. Te-
gelikult Parmenides loogikat siiski ei leiutanud, s.t. arutluste
struktuuri kui sellist ta ei ksitlenud. Kll aga phjendas Par-
20 1. Sissejuhatus
menides oma losoolisi vaateid pikkade arutlustega. Oletatakse,
et Parmenidese vitlusmeetod prineb kokkupuutest Pythagorase
koolkonna matemaatikaga.
Parmenidese pilane Zenon Eleast (5. sajand e.m.a.) astus oma
petajast sammu kaugemale ja phjendas Parmenidese vaateid
kuulsate Zenoni paradokside ehk apooriatega, milles ta justkui
nitas, et ruumi ja liikumist pole tegelikkuses olemas. Kuulus
apooria, mis demonstreerib liikumise vimatust: te vidate, et
liikumine on olemas, seega saab kndida mda teed punktist A
punkti B. Enne punkti B judmist peate lbima pool teed, s.o.
punkti C. Liikudes punktist C edasi B suunas peate jllegi lbima
pool teed C ja B vahel, s.o. punkti D. Liikudes punktist D edasi
B suunas peate jllegi lbima pool teed jne. jne. Seega jb teil
alati lbida pool mingist teeligust ja te ei jua kunagi punkti B.
Zenoni paradokside loogiline struktuur oli vite phjendamine
vite vastandist absurdsete jrelduste tuletamise teel: nn. reductio
ad absurdum.
Videte phjendamise ning mberlkkamise kunsti arendasid
edasi varased retoorikud ja sofistid. Tuntumad neist olid 5. sajandil
e.m.a. elanud Gorgias, Hippias, Prodicus ja Protagoras. Sofistid
ei tegelnud kll vitluse tehnika uurimisega, kuid nad nudsid
niteks, et moraaliphimtteid tuleb ratsionaalselt phjendada.
Sofistide traditsiooni kandsid edasi Sokrates (470399 e.m.a.)
ja Platon (428/427348/347 e.m.a.). Platoni kirjutistes ilmub esi-
mest korda thelepanek vitluse struktuurist kui iseseisvast uuri-
misobjektist.
Aristoteles
Loogika kui vitluse struktuuri uuriva omaette teaduse rajas Platoni
pilane Aristoteles (384322 e.m.a.). Sofistlike vastuvidete lpus
kinnitab Aristoteles oma teerajaja rolli ise: Deduktsiooni alal ei
olnud varasemast olemas ldse mitte midagi.
Aristotelese loogikaalased kirjutised koosnevad kuuest teosest
koondnimetusega Organon (Triist). Aristotelese jaoks ei olnud
1.2. Loogika ajalugu 21
loogika mitte ks teoreetilistest teadustest (need olid fsika,
matemaatika ja metafsika), vaid triist kigi teaduste jaoks.
Aristotelese vljattatud spetsiilist loogikassteemi nimeta-
takse sageli misteloogikaks ehk terminite loogikaks. Vaatleme
viteskeemi Kui iga on ja iga on , siis iga on . ,
ja on siin muutujad, s.t. formaalsed kohatitjad. Iga vide,
mis nimetatud struktuuri sobib, on korrektne sllogism. Muutu-
jate asemele saab paigutada konkreetseid misteid vi nimesid.
Asendades snaga asi, snaga loom ja snaga koer,
saame: Kui iga loom on asi ja iga koer on loom, siis iga koer on
asi.
Aristoteles vttis loogikas kasutusele muutujad: see alusidee
vimaldas luua ssteemi, mis ji loogika vundamendiks Euroopas
kuni 18. sajandini.
Aristotelese loogika ksitleb viteid, mis koosnevad jrgmis-
test grammatilistest komponentidest: (1) kvantor (kik, mni,
mitte kski), (2) subjekt, (3) koopula, (4) eitus, (5) predikaat.
Niisugusi viteid nimetatakse kategoorilisteks videteks ja nad
jagunevad kaheksaks liigiks:
1. Iga on .
2. Mitte kski pole .
3. Mni on .
4. Mni ei ole .
5. on .
6. ei ole .
7. x on , kus x thistab konkreetset indiviidi. Niteks:
Sokrates on surelik.
8. x ei ole , kus x thistab konkreetset indiviidi.
Liike 14 peeti teistest olulisemaks. ldjuhul ignoreeris sllo-
gistika liike 7 ja 8. Liigid 5 ja 6 arvati ekvivalentseks liikidega 3
ja 4. Keskajal hakati liike 14 nimetama thtedega: A, E, I, O.
22 1. Sissejuhatus
Aristoteles defineeris sllogismi kui vitluse, kus mingitest
etteantud videtest (eeldustest) jreldub paratamatult uus vide.
Konkreetselt vaatles ta ainult selliseid sllogisme, milles olid
antud kaks eeldust, nendest tuletati ks jreldus ja nii eeldused
kui jreldus olid kategoorilised vited.
Taolisi sllogisme saab moodustada neljal viisil (neli guuri),
millest Aristoteles ksitles ainult kolme esimest. Testamaks sl-
logistiliselt, et on , tuleb leida selline , et kehtiks ks
jrgmistest variantidest:
1. on ja on .
2. on ja on .
3. on ja on .
4. on ja on .
Nelja videte liiki A, E, I, O saab nelja guuri abil kombinee-
rida kokku 256 viisil ja ainult 24 nendest viisidest annavad ige
sllogismi: 6 tkki iga guuri jaoks.
Keskaja skolastilises traditsioonis oli Aristotelese loogikal
thtis koht ja nimetatud 24 ige sllogismi jaoks leiutati jrgmised
meelespidamist hlbustavad nimed (rhmitatud figuuride kaupa):
1. Barbara, Celarent, Darii, Ferio, Barbari, Celaront.
2. Cesare, Camestres, Festino, Baroco, Cesaro, Camestrop.
3. Darapti, Disamis, Datisi, Felapton, Bocardo, Ferison.
4. Bramantip, Camenes, Dimaris, Fesapo, Fresison, Camenop.
Tishlikute jrjekord nimes mrab kategooriliste videte jrje-
korra sllogismi moodustamisviisis, eeldustega alustades ja jrel-
dusega lpetades.
Sllogismid Baroco ja Bocardo on testatavad ainult kaudselt,
reductio ad absurdumiga. Kik teised sllogismid figuurides 24
saab taandada figuurile 1. Sllogismi esitht ja nimes esinevad
thed s, p, m ja c mravad taandamismeetodi:
1.2. Loogika ajalugu 23
Esitht mrab, missugusele esimese figuuri sllogismile
sllogism taandub. Niteks Felapton taandub Feriole.
Kui s ei ole viimane tht, siis thendab see Taanda vide
lihtsalt, p vastupidi, tleb: Taanda vide nn. juhusliku
meetodi abil.
S vi p viimaste thtedena tlevad: Taanda jreldus lihtsalt
vi Taanda jreldus nn. juhusliku meetodi abil.
C mitte-esithena mrgib, et sllogism ei taandu ning tuleb
testada reductio ad absurdumiga.
Sllogismi nimed jtavad tlemata, millisesse figuuri sllogism
kuulub; viimase tarvis leiutati keskajal meelespidamist hlbustavad
vrsid.
Peale mainitud kategooriliste videte huvitasid Aristotelest ka
modaalsed vited: on kindlasti ja on vibolla .
Tnapeva kontekstis saab Aristotelese loogikat vaadelda kui
predikaatarvutuse oluliselt piiratud, lahenduvat varianti. Tasub
thele panna, et Aristoteles ei tegelnud lausete loogilistest sides-
nadest (ja, vi, ei, jreldub) moodustuva struktuuri lausearvu-
tuse uurimisega.
Theophrastus
Prast Aristotelest jtkas Ateena koolkonna juhtimist Theophrastus
Ersesusest (371286 e.m.a.). Kik Theophrastuse teosed on ka-
duma linud, kuid sellegipoolest on tema ning ta kaasaegse ja
kolleegi Eudemuse tegevusest kllalt palju teada.
Theophrastus jtkas Aristotelese uuringuid modaalsuste alal,
ti Aristotelese sllogistikasse uue videte tbi ja kombineeris
misteloogikat lausearvutuse elementidega, vaadeldes sllogisme
nagu Kui , siis ; kui siis ; jrelikult, kui siis .
24 1. Sissejuhatus
Eukleidese pilased ja stoikud
Kreeka geomeetri Eukleidese (430360 e.m.a.) pilased Diodorus
Cronus (4. saj. e.m.a.) ja Philon tegelesid loogiliste mistatustega.
Videtavalt avastasid nad nn. valetaja paradoksi: Ma tlen, et ma
praegu valetan. Kas minu vide on ige vi vale?
Sarnaselt Eukleidese pilastega ning viimastelt mjutusi saa-
des tegelesid stoikud paradokside, absurdi ja vasturkivustega.
Peamiseks huviobjektiks oli Aristotelese jaoks varju jnud lause-
arvutus. Stoikud uurisid, kuidas saab loogiliste sidesnade (ja, ei,
vi, kui . . . siis) abil lihtsamatest lausetest keerulisemaid kokku
panna ja kuidas nidata selliselt moodustatud lausete igsust.
Erinevalt Aristotelesest, kes kasutas oma loogikas muutujatena
kreeka thti, tarvitasid stoikud muutujatena numbreid. Niteks:
Kas esimene vi teine; mitteteine; jrelikult esimene. Kuulsaim
loogik stoikute seast, Chrysippus (279206 e.m.a.), kinnitas, et
jrgmised viis viteskeemi on elementaarsed ehk mittetestatavad
ning kik iged viteskeemid on nendest tuletatavad (lisatud on
tlge ndisaegse lausearvutuse keelde):
1. Kui esimene, siis teine; esimene; jrelikult teine.
((A B) & A) B.
2. Kui esimene, siis teine; mitteteine; jrelikult
mitteesimene. ((A B) & B) A.
3. Mitte korraga esimene ja teine; esimene; jrelikult
mitteteine. ((A& B) & A) B.
4. Kas esimene vi teine; esimene; jrelikult mitteteine.
(((A B) & (A& B)) & A) B.
5. Kas esimene vi teine; teine; jrelikult mitteesimene.
(((A B) & (A& B)) & B) A.
Neist viiest aksioomist tuletas Chrysippus veel suure hulga igeid
viteskeeme. Paraku on ekslik Chrysippuse kinnitus, et kik iged
viteskeemid on nimetatud viiest tuletatavad.
1.2. Loogika ajalugu 25
Keskaegsed ja hilisemad loogikatekstid kommenteerisid nii
Aristotelese misteloogikat kui stoikute lausearvutust. Prast Chry-
sippust kirjutati Kreekas kll mitu kommentaari Aristotelese ja
Chrysippuse teostele, aktiivne loogikauurimine aga ji soiku.
1.2.2. Keskaegne loogika
Kreeka loogikatraditsiooni kanti ladinakeelsesse maailma hulga
tlgete abil, olulisemad olid seejuures Cicero (10643 e.m.a.),
Marius Victorinuse (4. sajand) ja Martianus Capella (5. sajand)
tlked. Keskaja mjukaimaks autoriks peetakse Boethiust (480
524/525), kes tlkis ladina keelde Aristotelese senitlkimata teosed
ning kirjutas neile kommentaare ja lisandusi. Enne 12. sajandit
Euroopas iseseisvat loogikaalast uurimistd ei tehtud, ning kuni
12. sajandini olid Boethiuse teosed olulisim loogikaalane kirjandus
Euroopas.
Araabia loogika
Stoikute ja 12. sajandil Euroopas toimunud loogika taassnni
vahele jva perioodi thtsamad loogikaalased teosed on loo-
dud araabia maailmas. Umbkaudu 850. aastaks olid Aristotelese
ja Porphyriose peateosed tlgitud araabia keelde ning Bagdadi
koolkonnas hakati kirjutama loogika originaalteoseid. Peamised
9. sajandi autorid olid al-Kindi (805873) ja Abu Nasr al-Farabi
(870950). Suure osa Bagdadi koolkonnast moodustasid nesto-
riaanlikud ja jakobiitlikud kristlased.
1050. aastaks oli Bagdadi koolkond lagunenud, ldse kahanes
11. sajandil loogika populaarsus araabia maailmas. Erandiks on
Ibn Sina ehk Avicenna (9801037). Erinevalt varasematest auto-
ritest kirjutas Avicenna uurimusi iseseisvate originaaltekstidena,
mitte kui kommentaare Aristotelese tlgetele. Seejuures kritiseeris
Avicenna Bagdadi koolkonda Aristotelese pimeda jrgimise eest.
Avicenna td jtkas teoloog al-Ghazali ehk Algazel (10581111).
12. sajandi olulisim araabia loogik oli Hispaanias elanud Ibn
Rushd ehk Averroes (11261198). Bagdadi koolkonna eeskujul
26 1. Sissejuhatus
kirjutas Averroes Aristotelese teoste kommentaare ning nende
mjukuse tttu viidati Averroesele hiljem sageli lihtsalt kui Kom-
mentaatorile. Averroese jrel algas lnepoolsetes islamimaades
loogika allakik, phjuseks islami fundamentalismi negatiivne
suhtumine loogikasse ja losooasse. Idapoolsetes islamimaades
(niteks Prsias) suhtuti loogikasse al-Ghazali eeskujul pigem kui
triista, mida muuseas saab oma losooavastastes rnnakutes
kasutada ka islami teoloogia. Seetttu jtkati Prsias ksiraamatute
ja kommentaaride kirjutamist, iseseisvate loogikauurimustega aga
ei tegeldud.
Loogika taastrkamine Euroopas
Canterbury Anselm (10331109) kasutas oma tuntud teoloogiaalas-
tes teostes antiikajast tuntud loogikameetodeid ning rajas sellega
eriti katoliikluses hiljem vga thtsaks muutunud teoloogilise tra-
ditsiooni.
Otseselt loogikaga Anselm palju ei tegelnud, kll aga tegi seda
Peter Abelard (10791142). Boethiusest ja Anselmist mjutatud
Abelard tstis oma kommentaaridega Aristotelese ning Porphyriose
klassikalistele tekstidele keskaegse loogikauurimise senisest palju
krgemale tasemele.
Aristotelese muidu suhteliselt vheoluline teos Sostlikud vas-
tuvited sobis hsti 12. sajandi teoloogiasse: tegu oli vikese
kataloogiga praktilises arutluskigus tehtavatest loogikavigadest
ning nende vltimisest. Suurem hulk 12. ja 13. sajandi loogika-
kirjandust (nn. uus loogika) on phendatud Sostlike vastuvidete
edasiarendamisele ning rakendustele teoloogias ja fsikas.
13. sajandi tuntumateks teosteks on olemasoleva loogikakir-
janduse kokkuvtted ja olulisemad autorid on Petrus Hispanus
hilisem paavst Johannes XXI ning John duns Scotus (1266
1308). Kuulsaim autor on kahtlemata katoliikliku teoloogia alustala
Aquino Thomas (12251274), kes vaatamata hulgale ratsionaalse-
tele jumalatestustele printsiibil, et miski ei saaks olemas olla, kui
poleks alguspunkti, kirjutas otseselt loogikast siiski ainult kaks
vhethtsat teost.
1.2. Loogika ajalugu 27
Keskaegse loogika hiilgeajaks peetakse 14. sajandi esimest
poolt ja keskusteks Oxfordi ning Pariisi likooli. Esimeses kirjutas
William Ockhamist (12851349), tuntud kui Ockhami habeme-
noa printsiibi autor, mjuka Summa logicae. Samuti Oxfordiga
seotud Walter Burley teos De puritate artis logicae oli Ock-
hami suhtes likriitiliselt meelestatud. Mjukaim selleaegne Pariisi
loogik oli Jean Buridan.
1.2.3. Loogika prast renessanssi: 16. sajandist
19. sajandi keskpaigani
Renessanss thendas loogika jaoks lahtitlemist keskaegsest, otse
Aristoteleselt lhtuvast skolastilisest loogikast. Hakkas sndima
uus, matemaatikaga sidet leidev smbolloogika. Viimasest jook-
sebki veelahe antiik- ja keskaegse ning tnapeva loogika vahel.
hus olevad, siin-seal vljendatud ideed tpsest, universaalsest
smbolkeelest ning selle keele abil arutlemise matematiseerimisest
ja mehhaniseerimisest ei judnud enne 19. sajandi keskpaiku aga
mingisugustegi praktiliste tulemusteni peale lihtsate, ebasstemaa-
tiliste smbolssteemide loomise.
16. ja 17. sajand
Renessanssi seostatakse kreeka-rooma klassikute ausse tstmisega,
kuid samas oli renessansiaegsete kirjanike hulgas kombeks plata
Aristotelesest lhtuvat, mdunud sajandite steriilset skolastilist
loogikat. Martin Lutherit olevat rritanud mistahes viide Aristote-
lesele.
Esimese mitteladinakeelse loogikateose Euroopas kirjutas
1555. aastal Petrus Ramus ehk Pierre de la Rame. Dialectique
ja hilisem ladinakeelne Dialecticae libri duo rndasid skolastilist
loogikat ning tegelesid kategooriliste sllogismide lihtsustamisega,
lhtumata seejuures Aristotelesest. Ramuse meetoditele oli les
ehitatud Arnauld ja Pierre Nicolei 1662. aastal avaldatud ning
Port-Royali loogika nime all tuntuks saanud ja laialt kasutatud teos
La logique ou lart de penser. Port-Royali loogika sisaldab Blaise
28 1. Sissejuhatus
Pascalist mjustatud diskussiooni denitsioonidest, kus eristatakse
nominaalseid ja reaalseid denitsioone. Filosooline diskussioon
nominalismi ja realismi le oli tuline juba 14. sajandil. Seejuu-
res rhutab Pascal matemaatiliste denitsioonide nominaalset ja
pragmaatilist iseloomu.
Skolastilise loogika traditsioon siiski silis, peamiselt muidugi
katoliiklikes likoolides ning katoliiklikes riikides: Hispaanias ja
Itaalias.
Kolmanda loogikasuuna rajajaks sai Hispaania seikleja ning
mstik Ramn Lull (12351315). Aastal 1274 ilmunud Ars magna,
generalis et ultima pab esitada kontseptsioone smbolite keeles
ning tuletada viteid variantide kombineerimise teel. Lulli ideed
ning nendega kaudselt seotud kabalistlikud mdid mjutasid
hilisemaid suurkujusid Pascali ja Leibnizit.
17. sajand oli aeg, mil tnu smbolite ja smbolkeele kasutuse-
levtule tehti vga suuri edusamme matemaatikas. Samasuguseid
smbolssteeme pti luua ka loogika jaoks.
Leibniz
17. sajandi universaalne suurkuju Gottfried Wilhelm Leibniz
(16461716) li 1680. aastatel loogikassteemi, mis on vgagi
sarnane George Boolei ssteemiga aastast 1847. Ometigi pee-
takse matemaatilise ja smbolloogika rajajaks just Boolei, mitte
Leibnizit. ksikud erandid vlja arvatud, polnud Leibnizi loo-
gikaalastel ideedel ning avastustel jrgneva kahe sajandi jooksul
praktiliselt mju.
Mjutatuna nii Ramn Lulli ideedest kui matemaatika arengust
pstitas Leibniz lesande luua universaalne smbolkeel (lingua
characteristica universalis) ja seda keelt kasutav nn. arutlemise
aritmeetika (calculus rationator), mille abil saaks algoritmiliselt
vi mehhaaniliselt tuletada uusi teseid viteid ja kontrollida
arutluste korrektsust. Leibniz oletas, et niisuguseid tuletusi ja
kontrolle saaks teha spetsiaalse masinaga.
1.2. Loogika ajalugu 29
18. sajand ning 19. sajandi algus
Leibniz ei olnud ainus, kes taolisi eesmrke pstitas. Jakob
Bernoulli (16541705), hiljem ka Gottfried Ploucquet (1716
1790) ning matemaatikud Johann Heinrich Lambert (17281777)
ja Leonhard Euler (17071783) pakkusid vlja sama laadi ideid.
Paraku ei suutnud ei Leibniz ega kski teine mainitutest konst-
rueerida loogika jaoks vhegi rahuldavat smbolkeelt, arutlemise
aritmeetikast rkimata.
Gottfried Ploucquet ehitas Leibnizi ideedel, kuid mitte Leibnizi
ssteemil baseeruva lausearvutuse smbolssteemi. Ploucquet ti
sisse kvantorid iga . . . ja on olemas . . . , tsi kll, suhteliselt
kohmakal ja piiratud viisil. Johann Heinrich Lambert konstrueeris,
tenoliselt Leibnizist sltumatult, Leibnizi ssteemiga sarnase
smboolse loogikassteemi, kus ta ti olulise uuendusena sisse
matemaatikast tuttava funktsiooni miste ja kasutas seda mitme-
kohaliste suhete (nagu niteks A on B isa) thistamiseks.
limjukad Saksa losood Immanuel Kant (17241804) ja
Georg Wilhelm Friedrich Hegel (17701831) tegelesid muu hulgas
samuti smbolloogikaga, kuid pris vhesel mral. Puhta mis-
tuse kriitikas viitab Kant loogikale kui lpetatud, valmis tehtud
konstruktsioonile. Kanti loengud loogikast tegelevad peaaegu ai-
nult loogika ajalooga. Hegel kinnitab oma monumentaalses teoses
Loogika, et senised loogikauuringud on olnud tehnilised mani-
pulatsioonid ning asub seejrel uurima loogika sisu vastandades
seda vormile. Ei Kant ega Hegel tegelnud kuigivrd smboolse,
matemaatilise loogikaga. Sellegipoolest on Kanti ja Hegeli funda-
mentaalsed losoolised teosed puhta mistuse analsidega vga
olulised loogika, sh. smbolloogika hilisema arengu jaoks.
1.2.4. Tnapeva loogika algus
Tnapeva loogikale panid aluse George Boolei, Augustus
de Morgani, Gottlob Frege ja teatud mttes ka Georg Cantori
td 19. sajandi keskel ning teisel poolel. Pris tnapeva loogi-
kast saab rkida kll alles 20. sajandi 40. aastatest, alusmisted
30 1. Sissejuhatus
ja printsiibid olid aga loodud juba 19. sajandi lpuks. Kaasaegsele
loogikale pandi alus seega mrgatavalt hiljem kui kaasaegsele
matemaatikale.
George Boole ja Augustus de Morgan
Inglise matemaatiku George Boolei (18151864) kaks peamist
loogika-alast td on Loogika matemaatiline anals aastast 1847
ja Mtlemise reeglid aastast 1854. Eriti esimene neist avaldas suurt
mju loogika jrgnevale arengule. Nimelt rakendas Boole vrskeid
ideid matemaatilisest algebrast otse loogikale, ehitades les loogika
algebra, mida sageli nimetataksegi Boolei algebraks. Kaugemaks
eesmrgiks pidas Boole nagu Leibnizki loogika keele arendamist
ja mtlemise aritmeetika ehitamist. Erinevalt Leibnizist ja teistest
varasematest loogikutest andis Boole ssteemse, matemaatilise
kuju niisuguse keele baasfragmendile lausearvutusele.
Nagu eldud, annab Boolei algebra lausearvutusele sstemaa-
tilise, kuid mitte veel rangelt aksiomaatilise kuju. Samuti ei jua
Boole lausearvutusest kaugemale, suhteid ja omadusi kirjeldava
predikaatarvutuse juurde seda teeb 1879. aastal Frege.
Kigi asjade klassi (nimetades seda universumiks) thistas
Boole numbriga 1. Thja klassi thistas number 0. Krvutiseisvad
avaldised (niteks AB) thistasid avaldiste hisosa ehk ja-tehet.
A + B thistas avaldiste hendust ehk vi-tehet, paraku aga
piirangutega: A-l ja B-l ei tohtinud olla hisosa kui neil oli
mni hine element, siis oli A+B defineerimata. AB thistas B
elementide eemaldamist A-st. Loogika algebra reeglid on Booleil
jrgmised: 1A = A, 0A = 0, A + 0 = A, A + 1 = 1
(ainult juhul kui A = 0: Boole kartis reeglit 1 + 1 = 1
hisosaga hulkade summat polnud tal ju mratletud; aga juba
1860. aastatel teisendasid Peirce ja Jevons +-tehte harilikuks vi-
tehteks, aktsepteerides reeglit 1 + 1 = 1), A + B = B + A,
AB = BA, AA = A (kuid mitte A + A = A, jllegi
hisosaga hulkade summa mramatuse tttu), (AB)C = A(BC),
A(B +C) = AB +AC ja A +(BC) = (A +B)(A +C).
Samaaegselt Boolei esimese teosega avaldas Augustus
1.2. Loogika ajalugu 31
de Morgan (18061871) raamatu Formaalloogika. De Morgani
formaalne ssteem on oma sisu poolest Boolei omaga kllalt sar-
nane, vormilt aga teistsugune ja kohmakas. Erinevalt Booleist ei
olnud de Morgan ka kuigi huvitatud loogika matematiseerimisest.
De Morgani ksitluse juures on olulisemad jrgmised punktid:
Kigi asjade ehk universumi asemel kasutas de Morgan
vabalt mratavat arutluse universumi mistet (universe of
discourse).
De Morgan rhutas Aristotelese loogika piiratust, jreldus-
tehte olulisust ja jreldamise ning tinglike videte funda-
mentaalset osa loogika formaliseerimisel.
Sajandi viimasel kolmandikul ttasid Boolei ja de Morgani
ssteemide arendamise ning kombineerimise kallal ameerika -
losoof ja loogik Charles Sanders Peirce (18391914) ning saksa
matemaatik Ernst Schrder.
Frege
Saksa matemaatiku Gottlob Frege (18481925) 1879. aastal aval-
datud lhikest teost Kontseptuaalne notatsioon (Begriffsschrift)
vib julgelt nimetada 19. sajandi olulisemaks loogikaraamatuks.
Selles raamatus esitab Frege kogu tnapeva loogika fundamentaal-
seima ssteemi, esimest jrku predikaatarvutuse. Predikaatarvutus
baseerub lausearvutusel, predikaatidel ja kvantoritel iga x jaoks
kehtib . . . ning on olemas selline x, et . . . , vimaldades kir-
jeldada asjade omadusi ja suhteid. Teatud mttes on vimalik
Wittgensteini parafraseerides elda, et kike, mida saab rangelt
kirjeldada, saab kirjeldada predikaatarvutuse keeles. Viimane vide
ei thenda, et predikaatarvutuse keel on alati kige praktilisem, sel-
gem vi mugavam meetod kskik mille rangeks kirjeldamiseks,
vaid et teoreetiliselt on iga range kirjeldus predikaatarvutuse abil
kirja pandav.
Frege antud konkreetne predikaatarvutuse esitus on raskesti
loetav ja hoopis teistsugune, kui praegusaegsed esitused. Phimt-
ted on sellegipoolest samad. Ka ei esitanud Frege oma ssteemi
32 1. Sissejuhatus
aksiomaatilisel kujul ega tuletanud kaasaegse predikaatarvutuse
jaoks olulisi metateoreeme ehk ssteemi ennast, tema vimalusi
ja puudujke ksitlevaid tulemusi: nendeni juti alles 20. sajandi
esimesel kolmandikul.
Frege thtsus ei piirdu ainult predikaatarvutuse loomisega.
Prast 1879. aastat kirjutas ta sarja mjukaid artikleid, alustades
kigepealt Boolei kritiseerimisega (Frege ei olnud teadlik Peircei
ja Schrderi parandustest ning tiendustest Boolei algebrale).
Frege kindel seisukoht oli, et kogu matemaatika saab taandada
elementaarsetele loogikareeglitele, s.t. loogikareeglitega saab tule-
tada kskik millise tese matemaatikateoreemi. Viimases ei olnud
Fregel priselt igus, kuid tema seisukoha mberlkkamiseni juti
alles 1931. aastal Gdeli teoreemiga mittetielikkusest. Vastandina
Inglismaal levinud nominalistlikele ja empiristlikele ideedele toetas
Frege Saksamaal tavaprasemaid realistlikke vaateid. Frege seisu-
koht matemaatika ja loogika vahekorrast arenes hiljem oluliseks
losoolise loogika suunaks nimega logitsism.
Frege ssteemi ja logitsistlikud vaated vtsid oma ts aluseks
20. sajandi alguse mjukaimad loogikud Bertrand Russell ja Alfred
North Whitehead; seejuures ei kasutanud nad aga Frege kirjaviisi,
vaid pigem Boolei kirjaviisi edasiarendust. Frege filosoofilised
ideed avaldasid hiljem olulist mju David Hilbertile ja Ludwig
Wittgensteinile ning on aktuaalsed ka praegu.
Georg Cantor
Taani pritolu ja St. Peterburgis sndinud Saksa matemaatik
Georg Cantor (18451918) loogikaga ei tegelnud. Teda ja Richard
Dedekindi peetakse hulgateooria rajajaks. 20. sajandil muutus
Cantori hulgateooria peaaegu kogu matemaatika baasiks: nimeta-
tud teooria olulisus seisneb lpmatute hulkade ksitlemises. Cantor
nitas, et lpmatud hulgad pole sugugi kik sama suured ehk
hesuguse vimsusega, vaid et lpmatus peidab endas kirjeldama-
tult keerulist struktuuri erineva suurusega lpmatustest.
19. sajandi viimastel aastatel mrkas Cantor, et tema niliselt
selge ja vastuvaidlematu hulgateooria lubab tuletada vastuolulisi
1.2. Loogika ajalugu 33
viteid ehk paradokse. Cantori paradoks on jrgmine: Vaatleme
kigi hulkade hulka ja thistame selle thega M. Cantori teoreemi
jrgi on suvalise hulga X kigi alamhulkade hulga vimsus (see
thendab lpmatu hulga puhul tema suurust) suurem kui X-i
vimsus. Seega on ka M-i kigi alamhulkade hulga vimsus
suurem kui M-i vimsus. Teisest kljest aga, kuna M on kigi
hulkade hulk, peab M sisaldama elemendina iga oma alamhulka,
seega ei saa M-i vimsus olla viksem kui tema kigi alamhulkade
hulga vimsus (sest viimase kik elemendid on ka M-i elemendid).
Paradoksi phjuseks on meie hpotees, et eksisteerib abstraktne
kigi hulkade hulk M. Selgub, et matemaatikas vib piiranguteta
abstraheerimine viia vastuoludeni.
Paradokside avastamine hulgateoorias sundis matemaatikuid
suhtuma kogu matemaatika-aparatuuri kriitiliselt ja ettevaatlikult.
Matemaatika aluste kriitika ja hulgateooria ise muutusid 20. sajandi
loogika heks peamiseks komponendiks ning tukejuks.
1.2.5. Loogika 20. sajandil
19. sajandil ei aktsepteeritud loogikat akadeemilistes ringkondades
tisvrtusliku teadusena. Sajandilpu edusammud kulmineerusid
aga suurejooneliselt 1900. aasta augustikuus Pariisis jrjestikku
peetud esimese rahvusvahelise losooakongressi ja teise rah-
vusvahelise matemaatikakongressiga, kus loogika, losooa ja
matemaatika lhenemine sai uue, olulise tuke. Matemaatikakong-
ressil esitas David Hilbert kuulsad 23 fundamentaalprobleemi, mis
suunasid loogika arengut 20. sajandi esimesel poolel. Mainitud
kongresside ning Hilberti ja Russelli t tulemusel muutus loo-
gika akadeemiliselt aktsepteeritud distsipliiniks ja hakkas avaldama
mju nii losooa kui matemaatika arengule.
Sajandi esimesel kolmandikul oli loogika areng seotud pea-
miselt matemaatika aluste uurimisega, mille kigus kujunes kolm
praeguseni olulist loogilis-filosoofilist koolkonda: logitsism, forma-
lism ja intuitsionism. Gdeli ning Churchi negatiivsed resultaadid
1930. aastatel hakkasid aga vhendama matemaatikute huvi loo-
34 1. Sissejuhatus
gika vastu ning praegusajal ei ole puhta matemaatikaga tegelejate
seas loogika kuigivrd tuntud vi huvipakkuv ala.
Paralleelselt matemaatikute huvi vhenemisega muutus loogika
ha olulisemaks analtilistele losoodele sajandi keskpaiga
suurkujudest nimetame Carnapit, !ukasiewiczit, Wittgensteini ja
Kripket. Nimetatud arenguga seoses hakati vlja ttama mitme-
suguseid uusi mitteklassikalisi loogikaid.
Elektronarvutite leiutamine sajandi keskel ja majanduse, tea-
duse ning hiskonna svenev arvutiseerimine andsid loogikateadu-
sele uue vimsa tuke. Viimaste kmnendite jooksul on loogika
areng olnud ha rohkem seotud arvutiteadusega ning vastupidi.
Loogika ja teoreetiline arvutiteadus on muutunud ksteisest sltu-
vaks ning mitme valdkonna puhul raskesti eristatavateks. Tehisin-
tellektiteaduse problemaatika kaudu tuleb neile kolmanda olulise
komponendina juurde analtiline losooa.
Logitsism: Russell ja Whitehead
Inglise losoof ja loogik Bertrand Russell (18721970) oli ebaha-
rilikult laia huvisfriga mtleja. Aastal 1950 plvis Russell oma
esseistika eest Nobeli auhinna, Russell oli tuntud ka kui patsismi
propageerija.
Loogika ajaloos seostub Russelli nimi filosoofi ja matemaatiku
Alfred North Whiteheadiga (18611947): Russell ja Whitehead
avaldasid aastatel 19101913 kolmeosalise suurteose Principia
Mathematica, mis vttis kokku Frege, Cantori ja Peano hiljutised
tulemused ning arendas neid kaugeleulatuvalt edasi. Sellest sai
sajandi esimese poole mjukaim loogikaraamat, mis on oluline
loogika- ja filosoofiatekst praegugi. Principiat lbiv filosoofiline
liin logitsism on Leibnizist ja Fregest lhtuv ning hiljem
Gdeli mber lkatud pdlus tuletada kogu matemaatika otse
loogikast niisugusel hemttelisel kujul snastas logitsismi
teesi esimesena Russell.
Matemaatika tuletamist loogikast alustasid Russell ja
Whitehead tisarvude teooriast ehk aritmeetikast. 19. sajandi lpus
postuleeris Giuseppe Peano jrgmised aritmeetika baasted, mil-
1.2. Loogika ajalugu 35
lest loodeti tuletada aritmeetika ning seejrel ehitada sinna peale
matemaatiline anals, algebra ja muud matemaatikaharud:
1. 0 on tisarv.
2. Kui x on tisarv, siis x-ile jrgnev arv (x + 1) on samuti
tisarv.
3. Kahel erineval tisarvul x ja y on erinevad jrgnevad arvud
(x = y (x + 1 = y + 1)).
4. 0 ei jrgne helegi arvule.
5. Matemaatilise induktsiooni printsiip. Eeldame, et mingi
vide A kehtib arvu 0 kohta. Kui asjaolust, et vide A
kehtib tisarvu x kohta, saab tuletada, et A kehtib ka arvu
x + 1 kohta, siis kehtib A kigi tisarvude kohta.
Induktsiooniprintsiibi snastamisel kasutas Peano mistet vide
ehk omadus, tpsustamata, mis keeles ja kuidas selliseid viteid
kirja panna. Seetttu ongi tegemist postulaatidega, mitte aga range
aksiomaatikaga. Frege vitis, et tal nnestus Peano postulaadid
range, hulgateoorial phineva aksiomaatikana kirja panna. Russell
demonstreeris vastuseks, et Frege aksiomaatika on vastuoluline,
s.t. sellest saab tuletada ka valesid viteid.
Jrgnev Russelli paradoks sarnaneb Cantori paradoksiga, kuid
on viimasest lihtsam. Moodustame kigi selliste hulkade hulga,
mis ei sisalda iseennast. Thistame selle hulga thega T . Ksime
nd, kas T sisaldab iseennast. Oletame, et sisaldab (T T ).
T definitsiooni jrgi (T on selliste hulkade hulk, mis iseennast
ei sisalda) ei saa T sel juhul iseennast sisaldada (T T ). Saime
vastuolu eeldusega, et T T . Oletame nd vastupidi, et T ei
sisalda iseennast (T T ). Definitsiooni jrgi peaks aga T sel
juhul T -d sisaldama (T T ), mis on vastuolus eeldusega T T .
Seega saime vastuolu mlemal vimalikul juhul.
Russelli paradoksi vib vaadata kui antiikajast tuttava valetaja
paradoksi modifikatsiooni. Russell pakkus lisaks vlja jrgmise
modifikatsiooni. Klas on habemeajaja, kes ajab kigi nende
36 1. Sissejuhatus
klaelanike habet, kes endal ise habet ei aja. Ksime nd, kas
habemeajaja ajab endal habet.
Russell ja Whitehead osutasid, et hulgateooria paradoksid
ja vastuolud tekivad niaringi phimttel ning otsisid niaringi
vltimise meetodit. Principia Mathematicas pakutud lahendus on
nn. lihtne tpide teooria: igale objektile omistatakse teatud tp
ja hulki saab moodustada ainult moodustatavast hulgast madalamat
tpi hulkadest. Nii tekib tpide hierarhia. Siis ei saa ka kigi
hulkade hulka ldse moodustada.
Logitsistlike phimtete optimistlike kandjatena ei esitanud
Russell ja Whitehead Principias kordagi ksimust, mil viisil viks
nende ehitatud loogikassteem olla piiratud vi kas on vimalik
testada selle ssteemi mittevastuolulisust ning universaalsust.
Formalism: Hilbert
Kahekmnenda sajandi esimese kolmandiku jooksul oli
David Hilbert (18621943) Saksamaa ehk kige mjukam ma-
temaatik. Muuhulgas peetakse tema teeneks funktsionaalana-
lsi rajamist. Matemaatika ja loogika arengut mjutas tugevasti
1900. aasta matemaatikakongressil Hilberti pakutud 23 peamise se-
nilahendamata matemaatikaprobleemi loetelu: osa nimetatud prob-
leemidest on praegusajaks lahendatud, osa probleemide jaoks on
nidatud, et Hilberti kujutatud lahendust ei saagi olla, osa prob-
leeme on siiani lahendamata.
Loogikuna soovis Hilbert nagu logitsistidki formaliseerida ma-
temaatika alused range aksiomaatikana, millest saaks siis tuletada
kik matemaatikateoreemid. Erinevalt logitsistidest vitis Hilbert,
et matemaatilise mtlemise objektideks on formaliseerimisel kasu-
tatud smboolika ja formaalselt esitatud vited ise, mitte aga selle
smboolika kujutatav matemaatiline sisu, ja kuna matemaatika ei
ole looduslik objekt, siis ei saa matemaatikast melda teisiti kui
abstraktsioonide ehk smbolite ssteemist.
Sajandialgust matemaatika aluste kriisi, sh. paradokside teket
lpmatuse miste ksitamisel pdis Hilbert lahendada jrgmisel
viisil:
1.2. Loogika ajalugu 37
1. Matemaatika alused tuleb esitada loogika keeles, range
aksiomaatikana.
2. Tuleb testada, et nimetatud aksiomaatika ei ole vastuolu-
line, s.t. temast ei ole vimalik tuletada korraga mingit
videt A ja sellesama vite eitust A.
Selle nn. Hilberti programmi titmise korral oleksid matemaatika
aluste igsuse probleemid mistagi lahendatud.
Hilberti printsiibiks matemaatika aksiomatiseerimisel oli ni-
tism: vastuolude puudumise testamise vimalikkus eeldas konst-
rueeritava aksiomaatika lplikku, niitset iseloomu, s.t. smboli-
tega ei lubatud thistada lpmatuid objekte. Lpmatus oli keelatud
abstraktsioon: kik tuletamissammud, kik testused ja aksioomid
pidid olema lplikud. Vastasel korral ei oleks vimalik teooria
mittevastuolulisust usaldusvrselt analsida.
1920. aastal alustas Hilbert koos silmapaistvatest loogiku-
test koosneva rahvusvahelise grupiga (Wilhelm Ackermann, Paul
Bernays, John von Neumann ja Jacques Herbrand) nimetatud
metamatemaatilise programmi titmist. Algust tehti aritmeetika
aksiomatiseerimisega Peano postulaatide baasil. 19241925 testas
Ackermann, et oluline alamhulk aritmeetikast on mittevastuoluline,
kuid terve aritmeetika jaoks ei suudetud testust leida. 1931. aastal
nitas Gdel, et Hilberti programm on phimtteliselt teostamatu,
kuid Hilbert ise ei aktsepteerinud Gdeli resultaatide sellist nega-
tiivset thendust kunagi.
Intuitsionism: Brouwer ja Heyting
Kolmandat matemaatikale kindla vundamendi rajanud koolkonda
nimetatakse intuitsionismiks ehk konstruktivismiks. lalloetletud
kolme koolkonna hulgast on just intuitsionismil oluline koht
praegusaja loogikas, iseranis teoreetilise arvutiteadusega seotud
osades. Praegusaja matemaatikute hulgas ei ole intuitsionism
seevastu kuigi populaarne.
Lhidalt ja robustselt eldes on intuitsionismi phiprintsiip
vlistatud kolmanda reegli mittetunnustamine: intuitsionist ei akt-
38 1. Sissejuhatus
septeeri klassikalise loogika reeglit A vi mitte-A (AA) ega
sellega samavrset eituse eitamise reeglit mitte-mitte-A on sama,
mis A ((A) A).
Hollandi matemaatikud Luitzen Egbertus Jan Brouwer (1881
1966) ja Arend Heyting (18981980) otsisid vljapsu hulga-
teooria paradoksidest nudmisega, et mingi matemaatilise objekti
olemasolu testamiseks tuleb see objekt konstrueerida vi ni-
data, mil viisil tpselt seda objekti konstrueerida saab. Niteks ei
ole teada mingit meetodit kigi hulkade hulga konstrueerimiseks,
jrelikult ei ole intuitsionisti seisukohalt sellise hulga olemasolu
testatud. Samamoodi nuavad intuitsionistid, et A vi B tes-
tamiseks tuleb testada eraldi kas A vi B: ldisest testusest, et
vhemalt ks neist kehtib, ei piisa. Seetttu ei aktsepteeri intuit-
sionistid reeglit A A, sest ldjuhul pole ju teada, kas mingil
konkreetsel juhul on testatav A vi A. Intuitsionistlik loogika ei
erine klassikalisest loogikast mitte ainult olemasolukvantori ning
vi- ja ja-tehete piiratuse poolest: jrgmine klassikalise loogika
jaoks tene ja ainult jreldustehet sisaldav vide (nn. Peircei
reegel) ei ole intuitsionistlikult testatav: ((A B) A) A.
Intuitsionismi filosoofiline tuum on abstraktsete platooniliste
tdede mitteaktsepteerimine: intuitsionisti jaoks on tde ainult
see, mille jaoks on konstrueeritud testus. Sellest ka koolkonna
nimi intuitsionism thistab intuitiivselt selget ja arusaadavat
matemaatikat, vastandina niteks Hilberti formalismile.
Harilikud loogikatehted saavad klassikalisest loogikast hoopis
erineva thenduse. Niteks on vide A B klassikaliselt ige
siis, kui A vi B vi mlemad on iged, ning vide A B
on ige siis, kui kas A on vale vi B on ige (vi mlemad
korraga). Intuitsionistlikult on A B testatav (intuitsionistid ei
rgi abstraktsest igsusest) siis, kui kas A vi B (vi mlemad)
on testatav(ad), ning me teame, milline neist on testatav. Vide
A B on testatav siis, kui A testusest saab alati konstrueerida
B testuse. Eitus A on testatav siis, kui A testusest saab
konstrueerida vastuolu.
Seni kuni on tegemist konkreetsete lplike hulkadega, ei erine
intuitsionistlik matemaatika klassikalisest. Vahe tekib lpmatute
1.2. Loogika ajalugu 39
hulkade, niteks tisarvude ksitlemisel. Klassikalise loogika jrgi
kehtib jrgmine intuitsionistlikult mittekehtiv vide: ks kahest,
kas igal arvul on omadus P vi on olemas arv a, millel seda
omadust ei ole. Kuidas saaks suvalise omaduse P jaoks kindlaks
teha, kas igal arvul on see omadus P? Ei kuidagi, sest arve on
lpmatult palju ja seetttu ei ole phimtteliselt vimalik neid
kiki kontrollida.
Intuitsionistliku koolkonna alguspunktiks on L. E. J. Brouweri
1907. aastal ilmunud ja oletatavasti Kantist mjutatud doktoridis-
sertatsioon. Dissertatsiooni ilmumise jrel vttis Brouwer ette
mammutprojekti matemaatika lesehitamiseks intuitsionistlikest
printsiipidest, s.o. piirangutest lhtudes. Intuitsionistlike testuste
leidmine on ldjuhul keerulisem kui klassikaliste testuste leid-
mine, kuid sellegipoolest suutis Brouwer neid testusi leida ja
sel viisil nidata, et suur hulk olulist matemaatikat kehtib ka
intuitsionistlikust vaatepunktist. Aastal 1918 avaldas Brouwer in-
tuitsionistliku hulgateooria, 1919 intuitsionistliku mduteooria ja
1923 funktsiooniteooria.
Kuigi Brouwer rajas intuitsionistliku koolkonna ja ehitas les
suure hulga intuitsionistlikku matemaatikat, ei formaliseerinud
ta intuitsionistlikku loogikat. Sellega sai 1930. aastal hakkama
Arend Heyting. Intuitsionistlik loogika on klassikalisega vga
sarnane, erinevus on (konkreetsest esitusest sltuvalt) vaid paaris
lisapiirangus ehk mne klassikalise aksioomi keelamises.
Loogikute hulgas on intuitsionism olnud suur ja oluline kool-
kond Brouwerist kuni tnase pevani. Intuitsionismile annab prak-
tilise rakendusliku vrtuse asjaolu, et mingi objekti olemasolu
intuitsionistlik testus annab alati algoritmi selle objekti tege-
likuks konstrueerimiseks. Seetttu saab intuitsionistlikku loogikat
kasutada arvutiprogrammide automaatseks snteesimiseks.
Formaalne ssteem: sntaks, reeglid ja semantika
Russell ja Whitehead nimetasid loogikaks muuhulgas nii hul-
gateooriat kui endaleiutatud tbiteooriat. Loogika thendus oli
neil kllaltki laialivalguv. Poola pritolu USA matemaatiku ja
40 1. Sissejuhatus
loogiku Alfred Tarski (19021983) ning Saksa-Austria-USA lo-
soo, loogilise positivisti Rudolf Carnapi (18911970) td tid
udusesse pilti vajalikku selgust. Kuigi loogika thendusvli on
jtkuvalt pris avar ja ka kitsamas mttes ei ole loogikud sugugi
hel nul, millist formaalset ssteemi vib loogikaks nimetada ja
millist mitte, ollakse enam-vhem hel meelel, et iga formaalne
loogikassteem peab sisaldama kolme komponenti: sntaksit, tule-
tamisreegleid ja semantikat.
Sntaks on reeglite ssteem, mis mrab loogika vaadelda-
vate videte keele, s.o. milline vide ldse on nimetatud
loogika vide ja milline mitte, sltumata tesusest ja tuleta-
tavusest.
Tuletamisreeglite ssteem on iga loogika kige olulisem osa.
Reeglid jaotuvad eeldusteta aksioomideks ja juba tuletatud
videtest uute videte tuletamise reegliteks. Reeglite ss-
teem mrab, millised vited on antud loogikas tuletatavad,
s.o. iged.
Semantika annab formaalsetele loogikavidetele thenduse.
Formaalse loogikassteemi semantika mrab kigepealt,
missugust osa maailmast vited kirjeldavad. Sageli vaadel-
dakse seejuures mingit lihtsat matemaatilist ssteemi, niteks
tisarve, kuna kskik mida muud, kasvi inimesi, saab ob-
jektide nummerdamise teel esitada tisarvudena. Seejrel
mratakse loogika elementaarvidete tesustingimused an-
tud maailmaosas. Lpuks nidatakse, kuidas leida keerukate
videte tesus komponentideks olevate elementaarvidete
tesusest. Seesugust kolmest komponendist koosnevat se-
mantikat nimetatakse antud loogika mudeliks.
Tarski uuris 1920.1930. aastatel keele, sh. loogika formaalse
keele objektkeele ja keelest knelemise keele meta-
keele vahekordi, pannes sellega aluse semantika ja mudelite
praegusaegsele ksitlusele. Muu hulgas nitas Tarski, et heski
formaalses keeles endas ei ole vimalik vljendada selle keele
1.2. Loogika ajalugu 41
lausete tesust. Tepoolest, oletame, et mingi formaalne keel vi-
maldab vljendada selle keele lausete tesust. Siis saab selles
keeles kirja panna vite, mille sisu on jrgmine: See lause on
vale. Judsime antiikajast tuttava valetaja paradoksini; nimetatud
lause ei saa olla ei tene ega vr.
Mistahes formaalse keele lausete tesuse vljendamiseks tuleb
appi vtta nimetatud keelest vljendusrikkam formaalne keel.
Aastatel 19151920 testasid Lwenheim ja Skolem
nn. Lwenheimi-Skolemi teoreemi, millele lalpool sai juba kaud-
selt viidatud: semantikas kasutatava maailma osana piisab alati
lihtsalt tisarvude vaatlemisest. Teisisnu: kskik kui keerulise
ainevaldkonna kirjeldamiseks me mingit formaalset keelt kasu-
tame, objektide nummerdamise teel saab selle valdkonna alati
esitada tisarvudena. Teatavasti kasutatakse matemaatikas ja hul-
gateoorias tisarvude hulgast veel suuremaid lpmatuid hulki;
selliste lpmatute hulkade kiki omadusi ei saagi hegi lpliku
keele vahenditega kirjeldada, s.t. nende struktuur vib olla sna
otseses mttes kirjeldamatult keeruline.
Tielikkus, mittetielikkus ja Kurt Gdel
Nagu Albert Einstein fsikas nii on Austria-USA loogik Kurt
Gdel (19061978) ks vheseid, keda vib lepakkumist kartmata
geeniuseks nimetada.
1930. aastal testas Gdel, et kaasaegse loogika baaskeel,
Fregest lhtuv ja Russelli, Whiteheadi, Hilberti, Tarski, Gentzeni
tdes kaasaegse kuju saanud esimest jrku predikaatarvutus on
tielik: iga tegelikult ige vide, mida saab predikaatarvutuses
kirja panna, on predikaatarvutuse formaalsete reeglitega testa-
tav. Siinkohal toetub igsuse miste Tarski rajatud semantika ja
mudelite teoorial.
Esmapilgul tundub teoreem tielikkusest olevat vastuolus jrg-
mises ligus vaadeldava teoreemiga formaalse aritmeetika mitte-
tielikkusest, kuid see vastuolu on ainult niline: predikaatarvutuse
keeles ei saa otseselt kirja panna matemaatilise induktsiooni print-
siipi, mis n. loob ehk genereerib tisarvud koos kigi nende
42 1. Sissejuhatus
omadustega. Kike, mida ldse kirja panna saab, saab teha seda
otseselt vi kaudselt predikaatarvutuse vahenditega; tisarvude
kigi omaduste hulka ei saa aga ldse lplikul viisil kirja panna.
Gdeli kige kuulsam resultaat on varem mitmel korral mai-
nitud mittetielikkuse teoreem, avaldatud 1931. aastal: Peano
aritmeetika postulaatide range aksiomatiseerimine annab formaalse
teooria, millest ei saa tuletada kiki tegelikult teseid aritmeetika-
viteid.
Testuse alusidee on tuntud valetaja paradoks: kas vide Ma
praegu valetan on tene vi mitte? Lihtne arutlus nitab, et see
ei saa olla kumbagi.
Koostame nd sellise aritmeetilise vite A, mis tleb, et
seesama A ei ole testatav (see vide ei tle, et A ei ole tsi!).
Siis ei saa vide A ise olla vale. Tepoolest, kui A oleks vale, siis
A sisu kohaselt peaks A olema testatav. Kuna me valesid viteid
testada ei saa, siis peabki A olema ige. Kuna A on ige, peab
kehtima see, mida A vidab: A pole testatav. Tepoolest, kui A
oleks testatav, siis oleks A sisu (A ei ole testatav) vale, see
on aga, nagu nidatud, vimatu. Kokkuvtteks, A on ige, aga ei
A ega A eitus pole testatavad.
sjatoodud mitteformaalne arutlus muidugi veel aritmeetika
mittetielikkust ei testa. Gdel kodeeris mittetielikkuse testa-
miseks formaalse aksiomaatika aritmeetikasse. Nimelt saab kogu
nimetatud formaalse ssteemi ja kik vited esitada aritmeetika
enda teoreemidena, s.t. teoreemidena tisarvude kohta. Seega n-
nestub kirja panna aritmeetikateoreem A, mille sisuline thendus
formaalses ssteemis on, et seesama teoreem A ei ole aritmeetika
aksiomaatikast testatav.
Teoreem A on tegelikult tene, aga kasutatud formaalsest
ssteemist endast teda tuletada ei saa, tarvis on lisada aksioome.
Nende lisamise korral ilmnevad uued tesed, aga mittetestatavad
teoreemid, mille testamiseks on tarvis jlle lisada uusi aksioo-
me jne. jne.
Sellest niliselt ainult aritmeetikasse puutuvast spetsiilisest
teoreemist jreldub, et htegi piisavalt keerulist matemaatilist
ssteemi ei saa lpliku hulga aksioomidega tielikult aksioma-
1.2. Loogika ajalugu 43
tiseerida. Nii ei saa lpliku aksiomaatika abil aksiomatiseerida
htegi lpmatust sisaldavat, piisavalt keerulist ssteemi, olgu siis
tegemist matemaatilise vi matemaatikavlise ssteemiga.
Mittetielikkuse testamine andis sisuliselt surmahoobi Hilberti
formalistlikule ja Russelli logitsistlikule kogu matemaatika lpliku
aksiomatiseerimise programmile ning kahandas lppkokkuvttes
matemaatikute huvi loogika vastu. Nii praktilisest kui ka losoo-
lisest seisukohast tuleb mittetielikkuse kasutamisse suhtuda siiski
ettevaatlikult. Esiteks on vga suured ja huvipakkuvad alamhulgad
matemaatikat ning matemaatikavliseid ssteeme siiski lplikult
aksiomatiseeritavad, s.t. loogika ja formaalne aksiomaatika kui
praktiline triist ei kaota sugugi oma thtsust: lihtsalt ei saa
loota, et mingi lplik hulk aksioome suudaks kirjeldada absoluut-
selt kike. Teiseks ei ole nha fundamentaalset vahet inimese ja
formaalse aksiomaatika teoreetiliste vimaluste vahel: ka inimene
on piiratud, nii ruumis kui ajas lplik ega suuda samuti kike
kirjeldada ja lahendada. Inimese vimaluste kohta eldakse vahel,
et inimene suudab teha vigu ja saab just seeprast lahendada ks-
kik milliseid probleeme; tringu lisamise teel saab ka formaalse
ssteemi panna vigu tegema ning selline tringuga tiendatud, ju-
huslikke vigu tegev ssteem suudab samuti lahendada mistahes
probleemi. Mis puutub inimese probleemilahendamise vimetesse
ja intuitsiooni, siis tuleb alati meeles pidada, et tegu ei pruugi
olla jumalikest sfridest lhtuva otsese abiga, vaid nrvivrgust
paralleelprotsessorina ttava inimaju tundmatute ja teadvustamata
protsessidega, mille nagu ka kivi kukkumise kohta ei saa kuidagi
elda, et tegu on millegi a priori loogikavlisega.
Gdeli enda losoolised vaated kaldusid matemaatilisse pla-
tonismi: ta suhtus tisarvudesse kui objektidesse, mis on tegelikult
olemas ning millel on kindlad omadused sltumata sellest, kas
ja millises ulatuses me neid omadusi aksiomatiseerida ja testada
suudame.
Predikaatarvutuse tielikkus ja aritmeetika ning keerulisemate
ssteemide mittetielikkus on kll kige kuulsamad, kuid kaugeltki
mitte ainsad 20. sajandi loogika fundamentaalsetest teoreemidest,
mille autoriks on Gdel. Oma elu jooksul judis Gdel publitsee-
44 1. Sissejuhatus
rida aukartustratava hulga artikleid ning ksitleda peaaegu kiki
loogikavaldkondi.
Automaadid, programmeerimine ning lahenduvus
Tuhandeid aastaid on lisaks srmedele kasutatud arvutamisel abiks
arvutuspulki, arvelaudu jm. Selliseid abivahendeid ei saa ni-
metada arvutusmasinateks, sest arvutamise meetodid pidid olema
ikkagi kasutaja peas. Esimesed mehhaanilised arvutusmasinad leiu-
tati Euroopas 17. sajandil, tuntumad neist on Prantsuse losoo
Blaise Pascali liitmise-lahutamise masin ning Leibnizi masin, mis
suutis ka korrutada, jagada ja ruutjuuri arvutada. 1822. a. ehitas
inglane Charles Babbage esimese programmeeritava arvuti proto-
tbi: Babbagei masinale sai kasutaja anda vabalt ette meetodeid,
mida mehhaaniliselt jrgides judis masin soovitud tulemuseni.
Esimesi programmeeritavaid elektronarvuteid hakati ehitama
1930. aastate lpus ja 1940. alguses nii Saksamaal, Inglismaal
kui ka USAs. Paar aastat varem oli loogikutel ja matemaatikutel
tekkinud aktiivne huvi arvutite programmeerimise ja algoritmide
ning nende ldise teooria vastu.
Teooria jaoks pole tegelikult ttada suutvat arvutit vaja, pii-
sab abstraktselt kujutatavast arvutist, mis suudab tita etteantud
operatsioone. Sellised abstraktsed arvutid ja nende programmee-
rimise teooria lid teineteisest sltumatult ameeriklane Alonzo
Church (19031995) ja inglane Alan Turing (19121954) (hiljem
oli Turing mnda aega kll Churchi pilane).
Aastatel 19351937 kirjutas Turing artikli, kus ta kirjeldas
vga lihtsat abstraktset arvutit, nn. Turingi masinat. Arvuti koos-
nes lputult pikast lindist (mlu), kirjutavast-lugevast peast ja seda
kirjutuspead juhtivat programmi sisaldavast tabelist. Turingi veen-
dumuse kohaselt sai Turingi masinaga arvutada kike sedasama,
mida kskik millise teistsuguse vi suurema arvutiga: keeru-
lisemat arvutit saab Turingi masin programmiliselt simuleerida.
Tegu on niisiis universaalse arvutiga, nagu on universaalsed ka
tegelikult eksisteerivad arvutid.
Turingi eesmrk oli uurida, mida ldse phimtteliselt arvutada
1.2. Loogika ajalugu 45
saab, ning mida ei saa ehk teisisnu, missuguste lahendust oma-
vate probleemide jaoks eksisteerib lahendamise algoritm. Selleks
piisas Turingi veendumust mda Turingi masina kui universaalse
masina teoreetiliste vimaluste uurimisest. Turing testas, et tema
masinaga ei ole alati vimalik otsustada, kas suvaline predikaat-
arvutuse keeles kirjutatud vide on ige ja seega predikaatarvutuse
reeglitest mehhaaniliselt tuletatav vi ei. Predikaatarvutus ei ole
lahenduv. Mittelahenduvus laieneb predikaatarvutuselt muidugi
kigile ssteemidele, mille kaudu saab predikaatarvutust esitada.
Predikaatarvutusest oluliselt lihtsamad loogikassteemid on sageli
lahenduvad. Juba enne Turingit oli teada, et niteks klassikaline
lausearvutus on lahenduv. On olemas algoritmid, mis suudavad
(kui neile piisavalt aega anda) iga lausearvutuse keeles kirjutatud
vite kohta elda, kas see vide on ige ja tuletatav vi vale ega
ole tuletatav.
Lahenduvuse takistuseks on vited, mis pole tuletatavad: ei
saa olla olemas algoritmi, mis suudaks mittetuletatava predikaat-
arvutuse vite puhul alati igesti otsustada, et seda videt tuletada
ei saa ja otsingu vib katki jtta. Tuletatavate videte puhul aga
suudab Turingi masin teoreetiliselt alati leida tuletuse. Muidugi
vib mittetriviaalsete videte tuletuste leidmiseks kuluda sageli
rohkem aega kui universumil vanust.
1936. aastal esitas Alonzo Church minimaalsete vahenditega
algoritmikirjutamis- ehk programmeerimiskeele: lambda-arvutuse.
Lambda-arvutus erineb kardinaalselt Turingi masinast, kuid teo-
reetiliselt on neil samasugused arvutamisvimed: ks on teises
algoritmiliselt simuleeritav. Churchi loodud lambda-arvutus on
tnapeva funktsionaalsete programmeerimiskeelte eellane, ning
tema teoreetiline thtsus praegusaegses loogikas ja teoreetilises
arvutiteaduses on erinevalt Turingi masina omast vga suur. Ana-
loogiliselt Turingiga testas Church, et lambda-arvutuse abstraktse
masinaga ei ole vimalik alati otsustada, kas suvaline formaalse
aritmeetika teoreem on formaalse aritmeetika reeglitest tuletatav
vi mitte.
Churchi nime mainitakse kige sagedamini seoses Churchi
teesiga. Nimelt vitis Church, et kskik millise algoritmi saab
46 1. Sissejuhatus
esitada lambda-arvutusega. Sellest teesist tuleneb, et kskik mil-
lise algoritmi saab esitada ka Turingi masinaga vi iga tegeli-
kult kasutatava programmeerimiskeelega. Tuleb thele panna, et
Churchi tees ei ole teoreem ega ka kindlasti ige. Nimelt ei
ole vimalik tpselt deneerida loomulikus keeles kasutatava sna
algoritm sisu, niteks ei saa me kindlad olla, et hel hetkel ei leita
mingit uut ja hoopis eriskummalist, senitundmatut ja ettekujutama-
tut meetodit, mida siiski algoritmiliseks vib pidada. See on kll
rmiselt ebatenone siiamaani pole kellelgi tekkinud tsist
soovi vi vimalust Churchi teesi kuidagi kahtluse alla seada.
Peale Churchi ja Turingi tegeles lahenduvuse problemaatikaga
veel pris palju loogikuid: probleemiklasside lahenduvuse uurimine
on 20. sajandi loogika klassikaline temaatika ning praegusajal
ttatakse selle kallal aktiivselt. Ainult lahenduvuse probleemidega
tegelevat spetsiaalset uurimisvaldkonda nimetatakse algoritmi- ehk
rekursiooniteooriaks.
ks suuremaid valdkondi loogikaga seotud lahenduvuse uurin-
gutes on predikaatarvutuse lahenduvate ja mittelahenduvate klas-
side selgitamine. Nagu eldud, pole predikaatarvutus tervikuna
lahenduv. Kui aga predikaatarvutuse keelt sobivalt piirata, vime
saada sellise piiratud vimalustega ssteemi, mis on lahenduv.
Juba aastatel 19151919, s.t. enne Churchi teesi ja lahenduvuse
tpse miste sissetoomist testasid Lwenheim ja Skolem, et kui
lubada predikaatarvutuses ainult objektide omaduste, mitte aga
suhete kirjeldamist, s.o. kasutada ainult hekohalisi predikaate,
siis selline loogikassteem on lahenduv.
Mis puutub loogika ja arvutiteaduse suhetesse, siis need on
mrksa laiemad kui algoritmi- ja rekursiooniteooria problemaatika.
Viimane pakub peamist huvi loogikasiseselt ja losoolisest vaa-
tepunktist, praktilise arvutiteaduse seisukohalt on lahendamatuse
eri astmeid ja lahendamatuse struktuuri uurivad algoritmiteooria
sfrid suhteliselt vhem huvitavad. Iga probleemiklassi lahendata-
vuse/mittelahendatavuse probleem ise on arvutiteaduse jaoks siiski
vga oluline, sest lahendatavuse testamine annab krvalproduk-
tina enamasti kaasa lahendusalgoritmi enda.
1.2. Loogika ajalugu 47
Loogika ja analtiline filosoofia
Analtiline losooa tekkis sajandivahetuse Inglismaal reaktsioo-
nina seni domineerinud, Hegelilt prit idealismile. Alusepanijateks
peetakse losoofe Bertrand Russelli ja George Edward Moorei
(18731958). Russell nimetas oma vaateid loogiliseks atomis-
miks ning need vaated kujunesid koosts Wittgensteiniga viimase
varasemal tegevusperioodil.
Tnapeva analtilise losooa kige radikaalsemaks ja
ehk kige mjukamaks suunaks kujunes Humeist ja Russelli-
Whiteheadi loogikast inspireeritud loogilise positivismi ehk loo-
gilise empirismi koolkond. Vormiliselt pandi loogilise positivismi
koolkonnale alus 1926. aastal Moritz Schlicki seminarides Viini
likoolis ning koolkond psis Viini ringi nimetuse all kuni
1938. aastani. Viini ringi olulise liikmena vib nimetada Austria-
USA semantikut ja losoo Rudolf Carnapit (18911970).
Loogilise positivismi peamiseks tulemuseks on losooa kui
sellise rolli muutumine. Loogilised positivistid nudsid, et lo-
sooa peab olema teaduslik ja keeruliste maailmapiltide asemel
tuleb produtseerida selget mtlemist. Kuigi suurem osa losooat
seeprast veel eriti teaduslikuks ei muutunud, hakkasid ometigi
tekkima teaduslikkust oluliseks pidavad koolkonnad. Filosooa
taustssteem nihkus.
Viini ringiga tihedalt seotud Austria-Inglise losoof Ludwig
Wittgenstein (18891951) kirjutas oma Loogilis-filosoofilises trak-
taadis (selle traktaadi uurimine oli Viini ringi algusaastate ks
phitegevusi): Filosooa eesmrk on mtlemise loogiline sel-
gitamine. Filosooa on tegevus, mitte teooria. Filosooline teos
koosneb peamiselt selguse toomisest. Filosooa tulemus pole mitte
hulk losoolisi viteid, vaid videte selgus.
Loogiliste positivistide olulisemad teesid kannavad endas
Russelli-Whiteheadi logitsistliku programmi vaimu (praegusajal
on muidugi kerge nimetada seda programmi naiivoptimistlikuks)
ja ldistavad selle universaalseks eesmrgiks mujalgi peale mate-
maatika:
48 1. Sissejuhatus
1. Mtestatud tekst koosneb kas (a) loogika ja matemaatika
formaalsetest videtest vi (b) konkreetsete teadusharude
fakte esitavatest lausetest.
2. Igasugusel fakti esitaval vitel on sisu ainult siis, kui on
vimalik elda, kuidas selle vite kehtivust kontrollida.
3. Metafsilised vited, mis ei lange punktide 1 ja 2 alla, on
sisutud.
4. Kik moraali, esteetikat ja religiooni ksitlevad vited on
mittekontrollitavad ja mttetud.
Niisiis oli loogiliste positivistide vtmeksimuseks videte kont-
rollitavus ehk veritseerimine. Ajapikku selgus, et usaldusvrne
veritseerimine pole ldjuhul vimalik ei loodusteadustes ega
sageli ka mitte matemaatikas (Gdeli resultaadid mittetielikku-
sest), ning loogiline positivism kaotas oma aktuaalse (aga mitte
ajaloolise) thenduse.
Loogiliste positivistide kolm phihuvi olid loogika, keel ja
taju. Russell alustas loogikaga, jtkas tajuprobleemidega ja lpetas
semantikauurijana; Carnap alustas tajust, jtkas semantikaga ja
lpetas loogikuna. Kesksel kohal neist kolmest probleemiringist
seisis keel ja keelefilosoofia.
Protsessi sajandivahetuse logitsistlikust optimismist neljakm-
nendate aastate n. kpsema suhtumiseni illustreerib hsti Ludwig
Wittgensteini vaadete areng. Wittgensteini vaated ja looming jaotu-
vad selgelt kaheks perioodiks, kus phiksimused jvad samaks,
kuid neile lhenemise teed, metoodika ja lootused muutuvad
kardinaalselt.
Mitmeklgselt andekas Wittgenstein alustas teadlasekarjri
1908. aastal Manchesteri likoolis aeronautika lipilasena, hak-
kas aga varsti huvi tundma matemaatika aluste vastu. Russelli
1903. aastal ilmunud raamat Matemaatika phimtted avaldas
talle sgavat mju ja 1911. aastal lks Wittgenstein Cambridgei,
kus tal nnestus hakata ppima Russelli juures. Hiljem era-
kuna Norras ttades ja Esimese maailmasja ajal suurtkive
1.2. Loogika ajalugu 49
ohvitserina rindel teenides kirjutas Wittgenstein mrkmeid, mil-
lest sai kokku 1921. aastal avaldatud lhike (75 leheklge), aga
rmiselt mjukas Loogilis-filosoofiline traktaat (Tractatus Logico-
Philosophicus). Tractatuse ja kogu Wittgensteini loomingu p-
hiteema on keele ja vljendatavuse piirid: kuidas on vimalik
keele olemasolu; kuidas on vimalik teistele midagi elda; miks
nad eldust aru saavad? Wittgenstein rhutab Tractatuses keele
piiratust (On asju, millest ei saa rkida), kuid suhtub samas
lemra optimistlikult loogika keele vimalustesse. Keelte paljus,
vitis Wittgenstein, viib eksiteele; tarvis on otsida fundamentaalset,
tpset, hist nimetajat. Keel ja eldavus piirneb Tractatuses enam-
vhem sellega, mida saab elda loogika formaalses keeles. Maailm
on analoogiliselt logitsistide arusaamaga, a priori korrastatud.
Tractatuse kirjutamise jrel lpetas Wittgenstein ajutiselt -
losooaga tegelemise, ttas aastaid kolkakla koolipetajana,
seejrel aedniku ja arhitektina. 1929. aastal prdus Wittgenstein
tagasi Cambridgei, seekord ppejuna, ning alustas losooa-
uuringuid, nn. hilise Wittgensteini perioodi. Wittgensteini hilist
perioodi kokkuvttev teos Philosophische Unterschungen (Philo-
sophical Investigations) ilmus 1953. aastal, prast Wittgensteini
surma.
Investigations vtab maailma korrastatuse ning keele ja mt-
lemise tpsuse suhtes Tractatusega vastupidise hoiaku. Keele ja
mtlemise mitmekesisuse taga ei ole universaalset hist nimetajat.
Keel on praktiline triist, mis tekib ja kannab thendust ainult te-
gelikus kommunikatsiooniprotsessis. Wittgensteini lemmiknide on
sna mng. Ta veenab lugejat, et mnguks nimetatavatel tegevustel
pole hist tuuma, pole mingit loogilist phjust, miks neid kiki
just mngudeks nimetatakse, teisisnu, loomuliku keele snu ei
saa deneerida. Snade kasutus ongi snade thendus. Deneerida
ei saa ka selliseid losooa jaoks fundamentaalseid snu nagu
teadmine, vide, reegel, phjus jne. Mingi snaga thistatavate
objektide hise essentsi asemel tuleb rkida nende perekondlikust
sarnasusest. Mittergitavaid asju pole.
Wittgensteini varase perioodi ideoloogia htib oma philoo-
mult selleaegse loogika ideestiku ja he universaalse formalismi
50 1. Sissejuhatus
ning aksiomaatika ootustega, mille abil saaks kike kirjeldada
ning aksiomatiseerida. Wittgensteini hiline periood haakub Gdeli
negatiivsete tulemuste jrel saabunud murranguga loogikas: maa-
ilma lihtsa loogilise aluse lootus oli kadunud. Varane Wittgenstein
sobis logitsistide ning loogiliste positivistide programmi, hiline
enam mitte: Bertrand Russell hindas krgelt Tractatust, kuid
suhtus negatiivselt Investigationsisse.
Logitsistika ja loogilise positivismi allakigu jrel jtkusid
loogika ja losooa vastasmjud, kuid ilma seniste ekstsessideta.
Palju fundamentaalseid loogikaprobleeme ja teoreeme pakub ise-
seisvat losoolist huvi. Otsesed kokkupuutepunktid on loogikal ja
analtilisel losooal endiselt keelelosooa pinnal, kus loogika
oma kaugelearendatud teooriaga semantikast ja mudelitest esindab
matemaatiliselt tpset rmust, andes losooale seega kindla
punkti, millele vajaduse korral toetuda. hist huvi pakuvad mitte-
klassikalised loogikad (lisaks intuitsionistlikule on neist olulisemad
modaalne, relevantne, lineaarne, episteemiline ja mittemonotoonne
loogika), mis formaliseerivad spetsiaalset tpi arutlusi.
Niteks formaliseerib modaalloogika arutlusi, kus kasutatakse
vimalikkuse ja paratamatuse misteid. Paratamatu on niteks
vide 2 +2 = 4, vimalik aga vide Prantsusmaa on vabariik.
Vime ette kujutada maailma, kus viimane vide ei kehti (neid
on ajaloos juba olnud), kuid ei suuda ette kujutada maailma,
kus esimene vide ei kehti. 1950. aastate lpul ehitas modaalsele
loogikale range vimalike maailmade semantika Ameerika seman-
tik Saul Kripke. Richard Montague kasutas modaalset loogikat
loomuliku keele semantika analsiks (Montague grammatikad),
katoliiklik loogik Bochenski aga religiooniprobleemide analsiks.
Analtilise tesuse (s.o. loogiline tesus laiemas mttes)
ksimused on ks olulisemaid filosoofilisi ksimusi, mille uurimise
juures on loogikal thtis koht. Siinkohal tuleb mainida Willard
Van Orman Quinei (s. 1908) ja nn. funktsionalistliku koolkonna
rajanud ja sellest hiljem lahti telnud Hilary Putnami (s. 1926)
nime, kes tegelevad nii puhta loogika kui ka filosoofiaga.
Quinei ja Putnami seisukohalt ei ole analtilistel ja em-
piirilistel videtel mingit fundamentaalset vahet. Analtilisteks
1.2. Loogika ajalugu 51
nimetatakse viteid, mille tesus vi mittetesus tuleneb loogi-
liselt denitsioonidest, nagu vide Onupoeg on meessoost ja
matemaatikateoreemid. Empiiriliste videte tevrtus sltub mb-
ritsevast maailmast, tpiliseks niteks on siin fsika- ja muude
loodusteaduste vited. Quine pab seejuures nidata, et teadus
saab phimtteliselt hakkama puhtalt loogikal baseeruva keelega
ning intensionaalseid mratlusi, nagu thendus ja paratamatu
igsus pole teaduskeeles vaja kasutada.
Loogikaga on seotud ka Ameerika lingvisti Avram Noam
Chomsky (s. 1928) td ning kaudselt kogu strukturaalne lingvis-
tika.
Mahukaima koostpinnase loogikale ja losooale on vii-
maste kmnendite jooksul andnud tehisintellektiteadus ja kog-
nitiivsusteadus (cognitive science). Neis valdkondades uuritakse
informatsiooni esitamise ja vaimse tegevuse viise pris praktilisel
eesmrgil, ehitamaks arvutiprogramme, mis suudaksid lahendada
keerulisi, intellekti nudvaid lesandeid. Selle uurimist kigus
areneb samas ettekujutus inimese enda vaimsetest protsessidest.
Loogika jaoks on siin fundamentaalseks probleemiks igapevaste,
tavaliselt ebakindlate ja umbmraste teadmiste esitamine ning
arutlemise juures kasutamine, introspektsioon, kommunikatsioo-
niprobleemid ja eksitustest ning vrinformatsioonist tekkinud
segadustest lesaamine.
I
Klassikaline loogika
2. Loogika phimisted
Armastus ja loogika on kaks asja, mis hoiavad maa-
ilma koos.
Linnar Priimgi, Ars et vita, Eesti Televisioon,
1995
2.1. Philised loogikaseadused
Iga loogilise teooria aluseks on phited. Niisuguseid baastdesid
nimetatakse loogikaseadusteks.
Samasusseadus on ks thtsamaid formaalloogilisi seadusi:
Mitte hegi lause sisu ei muutu arutluse kigus.
p p.
S.t. lause on alati ja igal pool iseendaga identne.
Ilma samasusseaduseta ei ole arutluste igsust praktiliselt vimalik
kontrollida.
Vasturkivusseadus vidab, et
kski lause ei saa olla iseendaga vastuolus.
(p & p).
S.t. lause ei saa olla korraga tene ja vr.
56 2. Loogika phimisted
Me ei saa lubada, et arutlus sisaldab viteid, mis on omavahel
vastuolus.
Kui soovitakse mingit mttekiku kritiseerida, siis viidatakse
tavaliselt selles mttekigus esinevatele videtele, mis on vastuolus
ldtuntud tdedega vi mttekigu osadega.
Vasturkivusi sisaldav arutlus ei saa olla korrektne. Vastur-
kivusseadus ei luba niteks sellist olukorda, kus samaaegselt sajab
vihma ega saja vihma.
Mned vanakreeka filosoofid vitsid, et teseid ja vraid
lauseid ei ole ldse olemas. Aristoteles snastas neile vastukaaluks
vlistatud kolmanda seaduse:
Iga lause on kas tene vi vr, kolmandat vimalust ei ole.
p p.
S.t. Ei saa olla olukorda, kus ei lause ega selle eitus pole
tene.
Neid vrtusi, mida laused vivad omandada, nimetatakse te-
vrtusteks. Vlistatud kolmanda seadus vidab, et lausetel on
ainult kaks tevrtust: tene vi vr. Sellisel juhul on tegemist
klassikalise kahevalentse loogikaga.
Vlistatud kolmanda seadus vimaldab vaatluse alt vlja jtta
sellised arutluste osad, mis ei ole ei tesed ega vrad. Niteks
vib tuua hd- ja ksilaused:
Milline ilm on tna?
Tore!
Vlistatud kolmanda seadust kasutatakse sageli vastuvitelisel
testamisel: me eeldame, et kehtib vaadeldava vite eitus ja
tuletame sellest vastuolu; jrelikult peab vide olema tene.
Kllaldase aluse seaduse formuleeris saksa filosoof Gottfried
Wilhelm Leibniz:
htki lauset ei saa pidada teseks ega vraks ilma kllal-
dase aluseta.
2.2. Vasturkivus ja mittevasturkivus 57
Kllaldase aluse seadust kasutatakse niteks kohtupraktikas. Me
ei saa elda, et inimene on mingis kurits sdi, kui meil ei ole
htegi seda kinnitavat fakti. Inimese igeksmistmiseks ei ole aga
vaja mingeid tendeid. Selles mttes ei kasutata kllaldase aluse
seadust kohtutes smmeetriliselt.
Kllaldase aluse seadus nuab oma videte phjendamist. Ni-
teks matemaatikud peavad phjendatuks ainult testatud viteid.
Kllaldase aluse seadus on mingil mral vastuolus vlistatud kol-
manda seadusega, kuna vastuviteline (kaudne) testus ei tarvitse
videt kllaldaselt phjendada.
2.2. Vasturkivus ja mittevasturkivus
Loogika uurib lauseid (viteid) ja nendevahelisi seoseid. Lausete
hulga korral huvitab meid ksimus, kas vited on omavahel
koosklas vi mitte.
Definitsioon 2.1. Lausete hulk on mittevasturkiv ehk kooskla-
line selle hulga kik laused saavad olla korraga tesed.
1
Vastasel juhul nimetatakse lausete hulka vasturkivaks ehk
vastuoluliseks.
Vaatame jrgmist lausete hulka:
Igaks, kellele Mari naeratab, on Marist sisse
vetud.
Mari ei naerata.
Jri on Marisse armunud.
Need laused saavad olla samaaegselt tesed. Kujutame niteks
ette, et Jri on Marisse krvuni armunud. Mari on aga tsine, sest
tal on ka teine kavaler ja ta ei tea veel, kumma kasuks otsustada.
1
Smbolit loetakse siis ja ainult siis, kui vi parajasti siis, kui.
Selle smboli kasutamine muudab uute mistete deneerimise mugavamaks.
58 2. Loogika phimisted
Kui aga Mari lpuks Jrile naeratab, siis on selge, et Jri on veel
rohkem Marist sisse vetud.
Kui me aga lisame vaadeldavale lausete hulgale lause
Mari naeratab Jrile,
siis on tulemuseks vasturkiv lausete hulk. See ei ole ju vimalik,
et Mari on samaaegselt tsine ja naeratab Jrile. Ka laused
Eesti ja Venemaa piiriks on Tartu rahuga
mratud piir;
Eesti ja Venemaa piiriks on riikidevaheline
ajutine kontrolljoon
on vasturkivad, kuna nad on vastuolus samasusseadusega.
2.3. Arutlus ja jreldus
Suulises ja kirjalikus tekstis on tihti ligud, kus midagi phjen-
datakse. Meil on vaja selgitada oma phimtteid teistele vi ka
lihtsalt iseendale. Selline selgitus sisaldab peale selgitatava print-
siibi ka eeldusi, millele me selgituses otse vi kaudselt tugineme.
Niteks saab jtise smist phjendada vitega
Ma pean jtist sma, sest jtise smine
mjub hsti minu nonahale.
Eraldades selgitusest kik jrelduse phjendamiseks vajalikud lau-
sed, saame abstraktse konstruktsiooni, mida nimetatakse arutluseks
e. mttekiguks.
Definitsioon 2.2. Arutlus (vi argument vi testus) on lausete
hulk, milles ks lause on valitud kui jreldus ja lejnud laused
on selle lause eeldusteks.
2.4. Arutluste kehtivus ja korrektsus 59
Vaatleme tekstiliku
Kui Maril on hea tuju, siis on Jri nnelik.
Maril on tna hea tuju. Jrelikult on Jri tna
oma nne tipus.
See on tpiline testus, kus kaks esimest lauset phjendavad vii-
mast lauset. Jrelduse ratundmist lihtsustab vtmesna jrelikult
kasutamine.
Jrelduse kindlakstegemine ei tarvitse alati olla nii lihtne.
Ent kui jreldus on leitud, siis saab arutluse esitada standardkujul,
milleks on tabel, kus joone kohal on eeldused ja joone all jreldus.
Meie nitearutluse ks vimalikest standardkujudest on selline:
Maril on tna hea tuju.
Kui Maril on hea tuju, siis on Jri nnelik.
Jri on tna oma nne tipus.
lesanded
1. Leidke raamatutest ja ajalehtedest arutlusi ning mrkige neis ra
eeldused ja jreldus. Pdke hinnata, kas tegemist on deduktiivsete
vi induktiivsete jreldustega. Kas argumenteerivat mtlemisvormi
kasutatakse sageli?
2.4. Arutluste kehtivus ja korrektsus
Kuidas otsustada, kas arutluse eeldused phjendavad jreldust vi
mitte?
Definitsioon 2.3. Arutlus kehtib ei ole vimalik, et tema
eeldused on tesed ja jreldus on vr.
Thistades arutluse eelduste loetelu thega ja jrelduse
thega p, paneme arutluse kehtivuse lhidalt kirja kujul
|= p
60 2. Loogika phimisted
ning tleme, et eelduste hulgast jreldub loogiliselt lause p.
Eelmises punktis toodud arutlus kehtib. Selles veendumiseks
oletame, et vaadeldava arutluse eeldused on tesed. Siis on Maril
tna hea tuju. Teisest eeldusest jreldub, et Jri on tna nnelik.
See aga thendab, et jreldus ei saa olla vr.
Vasturkivate eeldustega arutlus on alati kehtiv, sest pole
vimalik, et tema eeldused on korraga tesed. Vasturkivad on
niteks arutluse
Tallinn on Eesti Vabariigi pealinn.
Tallinn ei ole Eesti Vabariigi pealinn.
Tartu asub Soome lahe phjakaldal.
eeldused. Jrelikult see arutlus kehtib.
lesanded
1. *** Selgitage, miks me ei snastanud arutluse kehtivuse denit-
siooni kujul
Arutlus kehtib kui arutluse eeldused on tesed, siis on ka
tema jreldus tene.
Arutluse kehtivus vljendab eelduste ja jrelduse loogilist
seost. Arutluse tegeliku paikapidavuse hindamiseks kasutatakse
korrektsuse mistet.
Definitsioon 2.4. Arutlus on korrektne ta on kehtiv ja kik
tema eeldused on tesed.
Korrektse arutluse jreldus on tene. Niteks arutlus
Tallinn on Eesti Vabariigi pealinn.
Eesti Vabariigi pealinn asub Eesti phjaosas.
Tallinn asub Eesti phjaosas.
on korrektne, sest tema mlemad eelduslaused on tesed. Jrgmine
arutlus ei ole aga korrektne, kuigi kik tema vited on tesed:
2.5. Lausete loogiline tesus ja vrus 61
Tallinn on Eesti Vabariigi pealinn.
Eesti Vabariigi pealinn asub Eesti phjaosas.
Tartu ei ole Eesti pealinn.
Tallinn asub Tartust phja pool.
See, et Tartu ei ole Eesti pealinn, ei phjenda piisavalt seda, et
Tallinn asub Tartust phja pool.
2.5. Lausete loogiline tesus ja vrus
ksikuid lauseid vib jagada testeks, vradeks ja kontingentse-
teks.
Definitsioon 2.5.
Lause on loogiliselt tene (e. samaselt tene) ei ole
vimalik, et lause on vr.
Lause on loogiliselt vr (e. samaselt vr) ei ole
vimalik, et lause on tene.
Kiki lejnud lauseid nimetatakse kontingentseteks.
Loogikuid huvitavad kige rohkem loogiliselt tesed laused,
sest need on vankumatud ted. On selge, et loogiliselt tese
lause eitus on alati loogiliselt vr. Kehtib ka vastupidine vide:
loogiliselt vra lause eitus on loogiliselt tene. Enamus lauseid on
siiski kontingentsed ja nende tesus sltub kontekstist. Vaatleme
lauseid
Elu on elu.
Tpev kestab reedel kella poole viieni.
Jri on ja ei ole mees.
Esimene lause on samasusseaduse phjal loogiliselt tene (kuna
ta ei saa olla vr). Teine lause on kontingentne, sest ta vib
olla mingis kontekstis tene, mingis teises kontekstis aga vr.
Viimane lause on aga vasturkivusseaduse phjal loogiliselt vr.
62 2. Loogika phimisted
2.6. Lausete ekvivalentsus
Kahe lause korral saab rkida nende samavrsusest.
Definitsioon 2.6. Kaks lauset on loogiliselt ekvivalentsed ei
ole vimalik, et ks lausetest on tene ja teine vr.
Loogiliselt ekvivalentsed on niteks laused:
Pike paistab ja linnud laulavad.
Linnud laulavad ja pike paistab.
Jrgmiste lausete korral vib ette kujutada olukorda, kus ks
lausetest on tene ja teine vr:
Karu magab talveund.
Karule meeldib magada.
Niteks vib karu magada vastu tahtmist. Jrelikult ei saa neid
lauseid lugeda loogiliselt ekvivalentseteks.
Teiselt poolt on aga kik loogiliselt tesed laused omavahel
ekvivalentsed.
2.7. Matemaatilised seosed
Nitame, et lausetevahelised thtsamad loogilised seosed saab
avaldada vasturkivuse omaduse kaudu.
Thistagu
|= p
lause p loogilist jreldumist lausete hulgast ,
p |= q
lause q loogilist jreldumist lausest p,
|= p,
2.7. Matemaatilised seosed 63
lause p loogilist tesust,
p = q
lausete p ja q loogilist ekvivalentsust ja smbol

vljendit parajasti siis, kui.


Lause 2.7. Lausete hulgast jreldub loogiliselt lause p hulk
{p} on vasturkiv.
Testus. . |= p thendab, et kui laused on tesed, siis ei
saa p olla vr. Jrelikult ei saa kik hulga {p} laused olla
tesed, sest kui laused on tesed, siis on p vr.
. Oletame, et hulk {p} on vasturkiv. Kui kik
laused on tesed, siis ei saa p olla tene, s.t. p ei saa olla vr.
Seega kehtib |= p.
Lause 2.8.
a) Laused p ja q on loogiliselt ekvivalentsed p |= q ja
q |= p.
b) Laused p ja q on loogiliselt ekvivalentsed hulgad
{p, q} ja {p, q} on vasturkivad.
Testus. Punkt b jreldub eelmise lause phjal punktist a. Tes-
tame punkti a.
. Olgu laused p ja q loogiliselt ekvivalentsed: p = q. See
thendab, et nende lausete tevrtused ei saa olla erinevad. Kui
ks lausetest p ja q on tene, siis ei saa teine lause olla vr.
Jrelikult p |= q ja q |= p.
. Olgu p |= q ja q |= p. See thendab, et kui p on tene,
siis ei saa q olla vr ja vastupidi. Jrelikult ei saa lausete p ja q
tevrtused olla erinevad ning kehtib p = q.
Lause 2.9. Lause p on loogiliselt tene hulk {p} on vastu-
rkiv. Lause p on loogiliselt vr hulk {p} on vasturkiv.
Lause p on kontingentne mitte kumbki hulkadest {p} ja {p}
ei ole vasturkiv.
64 2. Loogika phimisted
Testus. Testame esimese lause. lejnud testused jtame
lugejale (lesanded 2.7.1 ja 2.7.2).
. Olgu |= p. Seega ei saa p olla vr ning p ei saa olla
tene. Jrelikult on hulk {p} vasturkiv.
. Olgu hulk {p} vasturkiv. Siis ei saa p olla tene
ning p ei saa olla vr. Jrelikult kehtib |= p.
Analoogiliselt saab nidata, et lausete vahelised philised
loogilised seosed saab taandada teatavate keerukamate lausete
loogilisele tesusele. Selleks on aga vaja eelnevalt sisse tuua
lausearvutuse tehted.
lesanded
1. Testage lauses 2.9 vide loogilise vruse kohta.
2. Testage lauses 2.9 vide kontingentsuse kohta.
3. Testage, et vasturkivast lausete hulgast saab moodustada kehtiva
arutluse, valides jrelduseks suvalise selles esineva lause eituse.
2.8. lesanded
1. Viige tekstiligud arutluse standardkujule:
(a) Ei saa olla thjust; sest see, mis on thi, pole midagi, ja
mis pole midagi, see ei saa olla. (Melissus)
(b) Esimese inimese snnitasid mingid teised olendid; sest tei-
sed olendid hakkavad ennast varsti ise hooldama ning ai-
nult inimene vajab pikaajalist hooldamist. Seega poleks
esimene inimene ellu jnud, kui see oleks olnud tema
esialgne eluvorm. (Anaximenes)
3. Lausearvutus
Milli laused on ntked, telised sntaksiimed, nad
on plastilised, neisse nib mahtuvat kogu inimkoge-
mus, kuid ka sellel osal, mis ei mahu, pole vljas-
pool snaringi halb olla.
Toomas Raudam
Arutlusi on vimalik mitmeti analsida. Kige lihtsamaks moo-
duseks on arutluskigu jaotamine propositsioonideks e. lauseteks.
Propositsioonidest saab omakorda eraldada osalauseid. Niisugusel
analsil phinebki lausearvutus, mida nimetatakse vahel ka lau-
seloogikaks vi Boolei loogikaks. Inglise loogik George Boole
(18151864) kirjeldas eelmisel sajandil lausearvutuse (ehk Boolei
algebra) matemaatilisi omadusi. Sellega viis ta arutluste analsi
kvalitatiivselt uuele tasemele.
Kigi inimarutluste analsimiseks ei piisa tavaliselt klassika-
lisest lausearvutusest ning appi tuleb vtta kas predikaatarvutus
vi mitteklassikaline loogika. Lausearvutuse tehted on aga leidnud
laialdast kasutamist arvutite konstrueerimisel ja tarkvara loomisel.
3.1. Lausete anals
Me ksitleme lauset e. propositsiooni kui otsustuse (vite, mtte)
vljendusvormi. Iga lause on kas tene vi vr.
Tavaliselt saab arutlust jaotada lihtsamateks lauseteks, mille
omavahelised seosed mravad arutluse kehtivuse. Niteks arutlus
66 3. Lausearvutus
Jri pib tna vi ta kukub homme eksamil lbi.
Jri ei pi tna.
Jri kukub homme eksamil lbi.
koosneb lausetest
1. Jri pib tna.
2. Jri kukub homme eksamil lbi.
3. Jri ei pi tna.
4. Jri pib tna vi ta kukub homme eksamil lbi.
Nende lausete vrdlemisel selgub, et kolmas lause on esimese
lause eitus. Neljas lause on aga saadud kahe esimese lause
hendamisel sidesnaga vi. Nii moodustuvad lausete vahelised
loogilised seosed.
Neist lausetest saab analoogiliselt moodustada ka teisi seoseid:
Jri kukub lbi, sest ta ei pi.
Jri ei pi, kuid ta ei kuku lbi.
Kui Jri pib, siis ta ei kuku lbi.
Jri kukub lbi, kui ta ei pi.
Jri pib ja ta kukub lbi.
Jri kukub lbi isegi siis, kui ta pib.
Niisugused seosed on ldjuhul loogilised. Lausearvutuse seoste
korral mravad osalausete tevrtused tielikult kogu lause
tevrtuse, osalausete konkreetne sisu ei ole aga thtis. Sellisel
juhul tlevad matemaatikud, et lause tevrtus on tema osalausete
tevrtuste funktsioon.
Definitsioon 3.1. Lausearvutuse tehteks nimetatakse niisugust lau-
setes kasutatavat seost, mille tevrtus on tema osalausete te-
vrtuste funktsioon (ehk Boolei funktsioon).
3.1. Lausete anals 67
Vaatleme niteks lauseid
Jri pib vi Jri vaatab televiisorit.
Jri pib ja Jri vaatab televiisorit.
Jri ei pi.
Thistades tevrtuse tene thega t ja tevrtuse vr thega v
saame nendes lausetes kasutatavate seoste vrtused erinevatel
osalausete tevrtustel esitada tabelitena:
ja (t, t ) = t
ja (t, v) = v
ja (v, t ) = v
ja (v, v)= v
vi (t, t ) = t
vi (t, v) = t
vi (v, t ) = t
vi (v, v)= v
ei (t ) = v
ei (v)= t
Matemaatilises mttes on seoste tabelid Boolei funktsioonide
graafikud. Seose ja phjal moodustatud lause on tene ainult siis,
kui tema mlemad osalaused on tesed, s.t. Jri pib ja vaatab
televiisorit korraga. Seos vi on aga tene, kui vhemalt ks tema
osalausetest on tene. Seos ei muudab tese lause vraks ja
vastupidi.
Lausetes esinevad tihti ka seosed, mida ei saa kirjeldada
Boolei funktsioonidega. Selliste seoste korral ei ole vimalik
selgitada, kuidas osalausete tevrtused mravad kogu lause
tevrtuse. Me ei oska niteks mrata lause
Neljapeval oli maavrin, sest Kuu ja Pike
olid hel joonel
tevrtust, kuna on raske otsustada, kas lause teine pool ph-
jendab piisavalt tema esimest poolt vi mitte.
68 3. Lausearvutus
3.2. Lausearvutuse tehted
3.2.1. Konjunktsioon
Seost ja nimetatakse lauseloogilisel kasutamisel konjunktsiooniks.
Konjunktsioonil on osalausete samadel tevrtustel alati sama te-
vrtus. Sltuvalt kontekstist thistatakse konjunktsiooni erinevate
smbolitega. Levinumad thistused on
p & q (ampersand),
p q,
p . q (punkt),
p and q,
kus p ja q on suvalised (osa)laused.
Konjunktsiooni sisaldavad niteks laused
Jri pib ja Mari pib.
Jri pib. Mari pib.
Jri ja Mari pivad.
Jri pib, kuid ka Mari pib.
Antud juhtudel nimetatakse konjunktsiooniks nii lauses esinevat
loogilist seost kui ka lauset ennast. Konjunktsiooni sisaldava lause
saab alati mber snastada, kasutades seost nii . . . kui ka:
Nii Jri pib kui ka Mari pib.
Laused
Jri ja Mari pivad koos.
1 ja 1 annavad kokku 2
ei sisalda aga konjunktsiooni, sest neid lauseid ei saa selliselt
mber snastada.
Lausearvutuse seoseid on mugav kirjeldada tevrtustabelite
abil, mis meenutavad jlle funktsioonide graafikuid:
3.2. Lausearvutuse tehted 69
Jri pib Mari pib Jri pib & Mari pib
t t t
t v v
v t v
v v v
3.2.2. Eitus
Snad ei, pole ja mitte viitavad lauses harilikult eituseseosele.
Eitus esineb niteks lausetes
Jri ei pi tna.
Jri pole mitte midagi ppinud.
Ma ei saa mitte midagi aru.
Eitust thistatakse tavaliselt smbolitega
p,
p (tilde),
p (lakriips),
not p
ja tema tevrtustabel neb vlja niimoodi:
p p
t v
v t
3.2.3. Disjunktsioon
Disjunktsiooni tunneb lausetes ra sidesnade vi ja ehk jrgi.
Disjunktsioon esineb niteks lauses
70 3. Lausearvutus
Jri pib vi Jri vaatab televiisorit.
Disjunktsiooni sisaldava lause saab mber snastada vitena kujul
Kas Jri pib vi Jri vaatab televiisorit vi
ta teeb mlemat tegevust korraga.
Disjunktsiooni thistatakse smbolitega
p q,
p or q
ning ta on on vr ainult siis, kui tema mlemad osalaused on
vrad:
p q p q
t t t
t v t
v t t
v v v
Sna vi kasutatakse tekstis ka vlistavas thenduses. Niteks
lauses
Sa sd kik ra vi sa saad karistada
peetakse silmas ainult he mainitud tegevuse vimalikkust.
Vlistav disjunktsioon (ehk mitteekvivalents) on vr ka juhul,
kui tema mlemad osalaused on tesed:
p q p q
t t v
t v t
v t t
v v v
ja seda thistatakse arvutiprogrammides
p xor q (exclusive or) .
3.2. Lausearvutuse tehted 71
Vlistava disjunktsiooni tehet kasutatakse niteks arvutigraafikas
esemete liikumise kujutamiseks.
Vlistava disjunktsiooni tevrtustabeli saab konstrueerida ka
hariliku disjunktsiooni, konjunktsiooni ja eituse tehete abil:
S K S K S & K (S & K) (S K) & (S & K)
t t t t v v
t v t v t t
v t t v t t
v v v v t v
Jrelikult on laused
S xor K
ja
(S K) & (S & K)
lausearvutuse seisukohast sama thendusega ning nende Boolei
funktsioonid langevad kokku:
S xor K = (S K) & (S & K).
Tlkides need valemid tagasi eesti keelde, saame aga laused
Tsi on nii see, et sa sd kik ra vi sa
saad karistada, kui ka see, et pole ige, et sa
sd kik ra ja sind karistatakse.
On kaks vimalust: sa kas sd kik ra vi
sa saad karistada.
3.2.4. Implikatsioon
Implikatsioon vidab, et ks tema osalausetest on tema teise
osalause eeltingimuseks. Implikatsioonitehte tunneb lausetest ra
vljendi kui . . . siis vi sellega samavrse seose jrgi. Implikat-
sioon esineb niteks lauses
72 3. Lausearvutus
Kui praegu on kevad, siis vahetult enne seda
oli talv.
Selle lause saab eesti keeles kirjutada ka lihtsamal kujul:
Kevadele eelneb talv.
Implikatsiooni thistatakse harilikult smbolitega
p q (hobuseraud),
p q (nool),
p q (jreldumine),
if p then q.
Implikatsioon on vr ainult siis, kui tema eeldus on tene ja
jreldus on vr:
p q p q
t t t
t v v
v t t
v v t
Implikatsiooni korral tuleb thele panna, et ta on tene ka juhul,
kui tema eeldus on vr. Vaadeldes meie nitelauset paneme
thele, et see on tene ka siis, kui parasjagu ei ole kevad. Ent
asendades selles talve sgisega, saame lause
Kui praegu on kevad, siis vahetult enne seda
oli sgis,
mis vra eelduse korral on vr.
Eesti keeles kasutatakse snapaari kui . . . siis sageli ka teistes
thendustes. Niteks lauses
Kui Toomas teeb hoolsalt trenni, siis Peeter
tegeleb rohkem ajaviitmisega
on tegemist pigem konjunktsiooniga. Me ei ole vahel mingi seose
3.2. Lausearvutuse tehted 73
implikatiivse tlgendamisega nus ka selleprast, et selle seose
eeldus on vr. Mned inimesed loevad niteks lauset
Juhul kui Pariis on Inglismaa pealinn, olen
mina Eesti president
vraks, kuna nad ei saa kunagi Eesti presidendiks. Niisugune
tingimuslik seos ei tarvitse aga olla lausearvutuses vljendatav, s.t.
sellisele seosele ei tarvitse vastata mitte kski Boolei funktsioon.
Implikatsiooni saab avaldada eelmiste lausearvutuse tehete
kaudu kas kujul
p q = p q
vi
p q = (p & q).
Viimane valem vidab, et ei ole vimalik situatsioon, kus impli-
katsiooni eeldus on tene ja jreldus on vr.
3.2.5. Ekvivalents
Ekvivalentsiseost kasutatakse loomulikus keeles vhe, matemaati-
kas aga laialdaselt. Ekvivalentsiseosele viitavad tekstis vljendid
siis ja ainult siis, kui
parajasti siis, kui
vi lihtsalt mlemapoolset jreldumist thistav smbol . Ekvi-
valentsi saab kasutada mistete deneerimiseks. Tpilise ekviva-
lentsiga on tegemist niteks denitsioonis
Ristklik on ruut tema kljed on vrdsed.
Definitsioonides ei kasutata tavaliselt ekvivalentsiseose kee-
lelisi vasteid, vaid lugeja peab ise taipama, millal on tegemist
denitsiooniga, millal mitte. Niteks lauset
Ruut on ristklik, mille kljed on vrdsed
vib vaadelda kui ruudu definitsiooni. Matemaatikud eelistavad
kasutada definitsioonides kokkulepitud keelekonstruktsioone:
74 3. Lausearvutus
Me tleme, et ristklik on ruut, kui tema
kljed on vrdsed.
Ruuduks nimetatakse ristklikut, mille kljed
on vrdsed.
Thtis on see, et me ei defineeriks mistet liiga laialt ega liiga
kitsalt. Niteks ei sobi antud juhul snastus
Ruut on nelinurk, mille kljed on vrdsed,
sest selle jrgi oleks ka romb ruut.
Ekvivalentsi thistatakse smbolitega
p q (ekvivalents),
p q (sarnasus),
p q,
p q (vastastikune jreldumine),
p iff q (if and only if )
ning ta on tene ainult siis, kui tema osalausetel on samad
tevrtused:
p q p q
t t t
t v v
v t v
v v t
Ekvivalentsi saab avaldada nii implikatsiooni kui ka konjunkt-
siooni, disjunktsiooni ja eituse kaudu:
p q = (p q) &(q p),
p q = (p & q) (p & q),
s.t. laused on ekvivalentsed, kui nad jrelduvad vastastikku tei-
neteisest, vi nad on samaaegselt tesed vi samaaegselt vrad.
3.2. Lausearvutuse tehted 75
lesanded
1. Thistagu
A Sajab vihma E On suvi
B Sajab lund F On talv
C Sajab rahet G On klm
D Sajab H On soe
Kirjutada valemite abil:
(a) Sajab vihma ja klmetab.
(b) Sajab vihma vi lund ja on klm.
(c) Sajab vihma, kuid ei saja lund.
(d) Kui klmetab, siis sajab lund.
(e) Ei saja vihma ega lund.
(f) Kui sajab lund, siis on talv.
(g) Iga sadu on vihmasadu, lumesadu vi rahesadu.
(h) Kui sajab vihma, siis ei saja lund ja on suvi.
(i) Kui on klm vi sajab lund, siis ei saja vihma.
(j) Suvel ei saja korraga vihma ja rahet.
(k) Suvel sajab vihma vi rahet, talvel lund.
2. Lugeda, kasutades eelmise lesande thistusi:
(a) E F D;
(b) D B & F A & E;
(c) E & G& D C;
(d) E & B G;
(e) F & H & D A.
3. Nidake, et implikatsiooni saab avaldada eituse ja konjunktsiooni
kaudu:
(a) p q = p q;
(b) p q = (p & q).
76 3. Lausearvutus
4. Nidake, et ekvivalentsi saab avaldada kujul
(a) p q = (p q) & (q p);
(b) p q = (p & q) (p & q).
5. ***Matemaatikud nimetavad vite p q testamisel testuse
p q osa tarvilikkuseks ja testuse p q osa piisavuseks. Sel-
gitage, miks on testuse osadel sellised nimed.
3.3. Lausearvutuse sntaks ja semantika
Loogikud on omavahel kokku leppinud, kuidas loogikavalemeid
kirjutada. Selleks mratakse valemites kasutatavad smbolid ja
valemite igekirjareeglid. Sellist kirjeldust nimetatakse keele sn-
taksiks. Tpselt samuti toimitakse loomulike keelte korral. Eesti
keele jaoks on niteks igekeelsussnaraamatus kseeritud t-
hestik, snavara ja grammatika. Lausearvutuse thestiku moodus-
tavad kolme tpi smbolid:
lausemuutujate smbolid:
A, B, C, . . . , A
1
, A
2
, . . . (suured thed)
loogiliste tehete smbolid: &
kirjavahemrgid: ()
Anname jrgnevalt lausearvutuse valemite e. lausete induktiivse
denitsiooni. Selles deneeritakse kigepealt atomaarsed laused,
mis koosnevad ainult hest lausemuutujast ja seejrel deneeri-
takse atomaarsete lausete baasil liitlaused, milles on smboleid
rohkem kui ks.
Definitsioon 3.2 (lausearvutuse sntaks). Defineerime lausear-
vutuse valemid e. laused induktiivselt:
1. Atomaarne valem e. aatom koosneb ainult hest lausemuu-
tujast. Iga atomaarne valem on lausearvutuse valem.
3.3. Lausearvutuse sntaks ja semantika 77
2. Kui p on lausearvutuse valem, siis p on lausearvutuse
valem.
3. Kui p ja q on lausearvutuse valemid, siis (p & q), (p q),
(p q) ja (p q) on lausearvutuse valemid.
4. Lausearvutuse valemi vlimised sulud vib ra jtta.
5. Muid lausearvutuse valemeid ei ole.
Sageli lisatakse lausearvutuse thestikku ka loogilised konstandid
t (tene) ja v (vr) ning tunnistatakse neid kui atomaarseid
valemeid. Kiki vaadeldava valemi konstrueerimise kigus tekki-
vaid valemeid nimetatakse aga selle valemi alamvalemiteks (e.
osavalemiteks). Viimasena valemisse paigutatud tehet nimetatakse
valemi peatehteks.
Nide 3.3. Jrgmine formaalne lause on lausearvutuse valem:
(A B) & (A & B).
Selles veendumiseks nitame definitsiooni punktide kaupa, kuidas see
valem on konstrueeritud.
1. A on atomaarne valem (definitsiooni 1. punkti phjal).
2. B on atomaarne valem (1).
3. (A B) on valem (3), sest A on valem ja B on valem.
4. (A & B) on valem (3), sest A ja B on valemid.
5. (A & B) on valem (2), sest (A & B) on valem.
6. ((A B) & (A & B)) on valem (3), sest (A B) on valem ja
(A & B) on valem.
7. (A B) & (A & B) on valem (4), sest valemi vlimised sulud
vib ra jtta.
78 3. Lausearvutus
Selle valemi peatehteks on (sulgudevline) konjunktsioon ja tema
alamvalemid on
A, B, A B, A & B, (A & B),
(A B) & (A & B).
Valemi ehitust kirjeldab hsti sntaksipuu:
&

A B &
A B
lesanded
1. *Kirjeldage mnda eesti keele sntaksireeglit.
Loogiliste tehete prioriteedid vimaldavad vhendada vale-
mites kasutatavate sulgude arvu. Kige krgema prioriteediga
on eitusetehe ja kige madalama prioriteediga ekvivalentsitehe.
Teiste tehete prioriteet kseeritakse tavaliselt nii, et see kahaneb
jrgmises tehete loetelus vasakult paremale:
&
Tehete prioriteetide abil saab taastada valemi puuduvad sulud. Sel-
leks vaadatakse iga loogilise tehte korral valem vasakult paremale
lbi ja taastatakse vajaduse korral selle tehte sulud. Sulgude taasta-
mist alustatakse kige krgema prioriteediga tehtest ja korratakse
seda protsessi iga jrgneva tehtega uuesti. Lause
A & B A C
korral saadakse niteks tulemuseks sntaktiliselt korrektne lause-
arvutuse valem
(A & B) (A C).
Valemit
A & B A & C
tlgendatakse aga valemina
(A& B) (A& C).
3.3. Lausearvutuse sntaks ja semantika 79
Assotsiatiivsusreegel tleb, et konjunktsiooni korral annavad sul-
gude erinevad paigutused samavrse tulemuse:
((A & B) & C) = (A & (B & C)).
Selleprast vib ksteisele jrgnevate konjunktsioonide korral su-
lud ra jtta:
A & B & C.
Puuduvate sulgude taastamiseks kasutatakse kas konjunktsiooni
vasakpoolse assotsiatiivsuse reeglit vi parempoolse assotsiatiiv-
suse reeglit. Vasakpoolse assotsiatiivsuse reegli kasutamisel on
kige krgema prioriteediga vasakpoolseim konjunktsioon:
(A& B) &C,
parempoolse assotsiatiivsuse reegel annab aga tulemuseks lause
A & (B & C).
Assotsiatiivsusreegel kehtib kll konjunktsiooni ja disjunktsiooni
korral, kuid ta ei kehti implikatsiooni korral:
((A B) C) = (A (B C)).
Seeprast on avaldise
A B C
kasutamisel tarvis eelnevalt kokku leppida, kumba assotsiatiivsus-
reeglit me kasutame.
Lausearvutuse sntaks andis lausearvutuse valemite igekirja-
reeglid. Semantikareeglid tlevad aga, kuidas alamvalemite te-
vrtuste phjal mrata kogu valemi tevrtust. Antud juhul
thendab semantika sisuliselt lausearvutuse tehete tevrtustabe-
lite snalist selgitamist.
Definitsioon 3.4 (lausearvutuse semantika). Olgu p ja q lause-
arvutuse valemid.
1. Iga lausemuutuja vrtuseks on kas tevrtus tene (t ) vi
tevrtus vr (v).
80 3. Lausearvutus
2. Valem p on tene p on vr.
3. p & q on tene p ja q on mlemad tesed.
p q on tene vhemalt ks valemitest p ja q on tene.
p q on tene p on vr vi q on tene.
p q on tene p ja q tevrtused on samad.
Sntaksit ja semantikat ei tohi omavahel segi ajada. Vaatame
niteks vrdust
A = A.
Semantiliselt see vrdus kehtib: kui A on tene, siis A on
vr ja A on tene; A vruse korral saame analoogiliselt, et
A on vr. Jrelikult on need valemid loogiliselt ekvivalentsed.
Sntaktiliselt kehtib aga mittevrdus
A = A,
sest need valemid koosnevad erinevatest smbolitest.
lesanded
2. Leidke valemi peatehe ja loetlege kik alamvalemid:
(a) A & H;
(b) (A & H);
(c) K (K K).
3. Testage assotsiatiivsusreeglid:
(a) (A & B) & C = A & (B & C);
(b) (A B) C = A (B C);
(c) *(A B) C = A (B C).
3.4. Lausevormid ja arutlusvormid
Loogikas eristatakse objektkeelt ja metakeelt. Selles peatkis sel-
gitatakse niteks eesti keeles, mis on lausearvutus. Antud juhul
3.4. Lausevormid ja arutlusvormid 81
on objektkeeleks lausearvutuse keel, metakeeleks aga eesti keel.
Kui me rgime eesti keeles eesti keelest, siis langevad objekt-
keel ja metakeel kokku. Kige lihtsam moodus mlema keele
lausete eristamiseks on erineva thestiku kasutamine. Kuna lause-
arvutuse valemites puuduvad vikethed, siis viitab iga valemites
esinev viketht sellele, et me selgitame parasjagu eesti keeles
lausearvutuse ldiseid omadusi.
Loogikas kasutatakse tihti vljendeid
Iga valem kujul p (p & q) on loogiliselt tene.
Valem p (p & q) sisaldab vikethti p ja q, mis ei kuulu lau-
searvutuse thestikku. Sarnaselt lausemuutujatega vib thti p ja
q nimetada metamuutujateks. Vikethti sisaldavaid metakeelseid
lauseid nimetatakse lausevormideks. Lausevormidest saab asen-
duste abil genereerida lausearvutuse valemeid, mida nimetatakse
vaadeldava lausevormi erikujudeks (ehk erijuhtudeks). Me lubame
ainult selliseid asendusi, kus asendatakse korraga mingi metamuu-
tuja kik esinemised. Matemaatikud nimetavad selliseid asendusi
substitutsioonideks.
Lausevormidest saab asenduste teel moodustada lpmatult
palju erikujusid. Niteks lausevormist p(p&q) saab genereerida
jrgmised erikujud:
Erikuju Substitutsioon
A (A& C) {p/A, q/C}
B (B & A) {p/B, q/A}
(B & C) ((B & C) & A) {p/B & C, q/A}
(B C) ((B C) & C) {p/B C, q/C}
(p/A thistab niisugust substitutsiooni, kus kik metamuutuja
p esinemised asendatakse lausemuutujaga A.) Lausevormi ja
tema erikujude vahel ei ole kshest vastavust. Niteks valem
A (A& C) on erikuju jrgmistest lausevormidest:
82 3. Lausearvutus
p {p/A(A & C)}
p q {p/A, q/(A & C)}
p q {p/A, q/A & C}
p (q & r) {p/A, q/A, r/C}
p (p & r) {p/A, r/C}
Analoogiliselt lausevormidega saab rkida ka arutlusvormi-
dest. Niteks arutlusvormist
p q
p
q
saab substitueerides genereerida erisuguseid kehtivaid arutlusi.
Substitutsioon {p/A, q/B} teisendab selle arutlusvormi lausearvu-
tuse arutluseks
A B
A
B
Toodud arutlusvorm on klassikaline disjunktiivse sllogismi tule-
tusreegel.
lesanded
1. Me eristame keemilisi elemente ja neid thistavaid snu. Millised
jrgmistest lausetest on tesed?
(a) Vask on vask.
(b) Vask on vase nimetus.
(c) Keemiline smbol Cu thistab vaske.
(d) Vask on metall.
2. Millised valemid on lausevormi p q erikujud?
(a) A B;
(b) A B;
3.5. Lausearvutuses mittevljendatavad seosed 83
(c) (A B);
(d) (A B) (C D).
3.5. Lausearvutuses mittevljendatavad seosed
Keeles on tihti ka seoseid, mis ei ole lausearvutuse tehted.
Definitsioon 3.5. Seose kasutus on tevrtusfunktsiooniline, kui
teda sisaldava lause tevrtuse mravad tielikult tema osalausete
tevrtused.
Seos sest ei ole tavaliselt lausetes tevrtusfunktsiooniline.
Vtame niteks kolm test lauset:
Konstantin Pts oli president 1940. a.
Pts sai presidendiks 1938. a.
Pts oli Ajutise Valitsuse peaminister 1918. a.
Nendest testest lausetest saab seosega sest moodustada nii tese
liitlause
Pts oli president 1940. a., sest ta sai presi-
dendiks 1938. a.
kui ka vra liitlause
Pts oli Ajutise Valitsuse peaminister 1918. a.,
sest ta sai presidendiks 1938. a.
Viimane lause on vr, sest tema teine osalause ei phjenda
esimest osalauset.
Seose enne kui tevrtusfunktsioonilisuse lkkavad mber
laused
84 3. Lausearvutus
Mart Laar sai peaministriks enne, kui Edgar
Savisaar sai peaministriks.
Mart Laar sai peaministriks enne, kui Mart
Siimann sai peaministriks.
Esimene nendest lausetest on vr, teine on aga tene, kuigi nende
lausete osalaused on tesed. Analoogiliselt saab nidata, et jrg-
mised keeles kasutatavad seosed ei ole tevrtusfunktsioonilised:
On hsti teada, et . . .
Andres usub, et . . .
On tenone, et . . .
On paratamatu, et . . .
On vimalik, et . . .
Nende seoste thistamiseks tuuakse lausearvutuse intensionaal-
setes laiendites
1
(modaalloogikas, uskumiste loogikas jne.) sisse
erismbolid. Kahjuks selgub ka, et seos kui . . . siis ei ole tihti
lausetes tevrtusfunktsiooniline. Niteks vljendi Kui oleks . . .
siis oleks kasutamisel on raske kindlaks teha, kas lause on tene
vi vr:
Kui Mart Laar oleks suutnud rublaskandaali
vltida, siis oleks ta edasi peaminister.
lesanded
1. Nidake, et jrgmised seosed ei ole lausearvutuse tehted:
(a) Andres usub, et ;
(b) On paratamatu, et ;
(c) On vimalik, et .
1
Intensionaalseteks nimetatakse loogikaid, milles ei kehti Leibnizi vrduse
printsiip. Loogikaid, kus see printsiip kehtib, nimetatakse ekstensionaalseteks.
3.6. Tevrtustabelid 85
3.6. Tevrtustabelid
Tevrtustabel vimaldab sstemaatiliselt lbi vaadata lausearvu-
tuse valemi alamvalemite kikvimalikud vrtustused. Vaatame
niteks arutlust
Jri loeb ajalehte vi Jri vaatab televiisorit.
Jri ei loe ajalehte.
Jri vaatab televiisorit.
Selle arutluskigu saab lausearvutuses kirja panna kujul
A T
A
T
mis on jrgmise arutlusvormi erikuju:
p q
p
q
Arutluse kehtivuse kindlakstegemiseks tuleb kontrollida, kas
selle lausemuutujatele saab anda sellised tevrtused, et arutluse
eeldused on tesed ning jreldus vr. Kigi vimaluste lbi
vaatamiseks vrtustame arutlusvormis esinevad metamuutujad p
ja q kikvimalikel erinevatel viisidel tevrtustega tene (t )
ja vr (v). Muutujate sstemaatilisel vrtustamisel on mist-
lik valida tevrtuste komplekte thestikulises jrjekorras. Kahe
muutuja korral saame jrgmise tevrtuskomplektide jrjestuse:
t t, t v, vt, vv.
Kanname need tevrtuste komplektid tabeli ridadesse ja arvu-
tame seejrel igas reas arutlusvormi valemite tevrtused:
86 3. Lausearvutus
p q p q p q
t t t v t
t v t v v
v t t t t arutlus kehtib
v v v t v
Arutlusvormi eelduslaused on tesed ainult tabeli kolmandas reas.
Kuna ka jreldus q on kolmandas reas tene, siis vaadeldav
arutlusvorm kehtib. Esialgne arutlus kehtib samuti, sest ta on selle
kehtiva arutlusvormi erikuju. Saab nidata (lesanne 3.6.4), et iga
kehtiv arutlus on mingi kehtiva arutlusvormi erikuju. Jrelikult
ei olegi vaja deneerida arutluste kehtivust variantide lbivaata-
mise kaudu, piisab vaid arutlusvormide kehtivuse deneerimisest
ning arutluse nimetamisest kehtivaks, kui ta on mingi kehtiva
arutlusvormi erikuju.
Kui tabeli titmise kigus selgub, et me oleme probleemi juba
lahendanud, siis vib tevrtustabeli titmise pooleli jtta. Sellisel
juhul saame osalise tevrtustabeli. Kuna eeldus p on tabeli
esimestes ridades vr, siis oleks piisanud tevrtustabeli kahe
viimase rea titmisest:
p q p q p q
t t v
t v v
v t t t t
v v v t v
Toodud tevrtustabelis on neli rida. Kui valemis on n
lausemuutujat, siis on tevrtustabelis 2
n
rida. Niteks valemi
A& (B (A C))
korral saame joonisel 3.1 toodud tevrtustabeli. Selle tabeli
kohale on eelnevalt mrgitud tehete sooritamise jrjekord, mille
mravad lausearvutuse sntaksi- ja semantikareeglid. Esmalt te-
hakse kige sisemistes sulgudes asuv disjunktsioonitehe. Seejrel
3.6. Tevrtustabelid 87
4 3 2 1
A B C A&(B (AC))
t t t v v t t
t t v v v t t
t v t v v t t
t v v v v t t
v t t v v t t
v t v v t v v
v v t v v t t
v v v v v t v
Joonis 3.1. Tevrtustabeli nide.
leitakse implikatsiooni ja eituse vrtused. Alles siis saab arvutada
konjunktsiooni vrtuse.
Tevrtustabeli titmisel on vimalikud ka variatsioonid. Va-
hel kirjutatakse tevrtustabelisse valemi alla ka lausemuutujate
tevrtused. Samuti vib varieerida tabeli titmise suunda: ho-
risontaalsel titmisel tidetakse tabel ridade kaupa, vertikaalsel
titmisel veergude kaupa.
lesanded
1. Arvutage valemi tevrtustabel:
A & D C D.
2. Nidake tevrtustabeli abil, et valem on loogiliselt tene:
A (B A).
3. Kontrollige tevrtustabeli abil jrgmise arutluse kehtivust.
Kui Einsteini mehhaanika on ige, siis Newtoni mehhaanika ei saa
olla ige. Einsteini mehhaanika on ige parajasti siis, kui ruum on
mitteeukleidiline. Ruum on mitteeukleidiline vi Newtoni mehhaa-
nika on ige.
88 3. Lausearvutus
sioonid
Tautoloogiad Kontingentsed Kontradikt-
Kehtestatavad
Joonis 3.2. Lausearvutuse lausete liigitus.
4. *Testage, et iga kehtiv arutlus on mingi kehtiva arutlusvormi eri-
kuju.
3.7. Tautoloogia, kontradiktsioon ja
kontingentne lause
Lausearvutuse valemeid liigitatakse jrgmiselt:
Loogiliselt tene valem e. tautoloogia on kigil lausemuu-
tujate vrtustustel tene.
Loogiliselt vr valem e. kontradiktsioon on kigil lause-
muutujate vrtustustel vr.
lejnud valemeid nimetatakse kontingentseteks.
Lausearvutuse valemite liigituse skeem on antud joonisel 3.2.
Valemit, mis on mingil lausemuutujate vrtustusel tene, nimeta-
takse kehtestatavaks. Enamus lausearvutuse valemeid ei ole loogi-
liselt tesed ega loogiliselt vrad, vaid kontingentsed, s.t. vivad
olla nii tesed kui ka vrad. Kontingentsed on niteks valemid
A B,
A & (B D).
3.7. Tautoloogia, kontradiktsioon ja kontingentne lause 89
(A&(B (AC)))
v t
t t
t v v
v v
Joonis 3.3. Kiirkontrolli meetodi rakendamise nide.
Jooniselt 3.1 on nha, et valem
A& (B (A C))
on kontradiktsioon, mistttu tema eitus
(A& (B (A C)))
on tautoloogia. Tihti saab valemi loogilist tesust ja vrust ka
lihtsamini kontrollida. Selleks kasutatakse kiirkontrolli meetodit,
mille rakendamise nide on toodud joonisel 3.3. Me eeldame,
et see tautoloogia on mingil lausemuutujate vrtustusel vr, ja
saame sellest semantikareeglite abil vastuolu. Kuna valem koos
eitusega on vr, siis on sulgudes olev konjunktiivne avaldis
tene. Seega on konjunktsiooni mlemad alamvalemid tesed.
Siis on aga implikatsioon vr, millest saame, et implikatsiooni
esimene pool on tene, teiseks pooleks olev disjunktsioon aga vr.
Disjunktsioon on vr ainult siis, kui tema mlemad alamvalemid
on vrad. Nd on kigil atomaarsetel valemitel tevrtused.
Nende levaatamisel selgub, et A on samaaegselt tene ja vr,
mis on vastuolus samasusseadusega. Jrelikult ei saa vaadeldav
valem olla vr, mistttu ta on kigil lausemuutujate vrtustustel
tene, s.t. ta on tautoloogia.
Kiirkontrolli meetodit saab kasutada ka loogilise vruse ni-
tamiseks. Kontingentse lause korral annab see meetod vastuolu
asemel vaadeldava lause kaks lubatavat vrtustust. Niteks valemi
A B korral saame kiirkontrolli meetodi abil vrtustused
90 3. Lausearvutus
AB
t t t
ja
AB
v v v
Kiirkontrolli meetod vimaldab leida kontraniteid, s.t. selliseid
lausemuutujate vrtustusi, mis lkkavad mingi hpoteesi mber.
Niteks lause tautoloogilisuse nitamiseks kontrollitakse, kas lei-
dub selline vrtustus, millel lause on vr. Valemi A B korral
saime kontranite nii vitele, et see valem on kontradiktsioon, kui
ka vitele, et valem on tautoloogia.
Tautoloogiad on loogikas vga olulised, sest nad vljendavad
vankumatuid tdesid, mis peavad paika igas olukorras. Tautoloo-
giad on niteks valemid
A A,
A A,
(A& A),
A (B A).
Esimene nendest tautoloogiatest vastab vlistatud kolmanda sea-
dusele, teine samasusseadusele ja kolmas vasturkivusseadusele.
Tautoloogilised lausevormid kujutavad endast tuletusreegleid. Kir-
jutades neljanda tautoloogia lausevormina
p (q p),
saame sobiva asenduse teel tautoloogia
C (A C),
mille abil saab loogiliselt jreldada
C |= A C,
sest implikatsiooni vasaku poole tesusest jreldub tema parema
poole tesus. Seega vib loogikas kasutada reeglit, mis lubab vtta
tese jreldusega implikatsiooni eelduseks suvalise valemi:
p
q p
3.7. Tautoloogia, kontradiktsioon ja kontingentne lause 91
Me mainisime loogikamistetevaheliste matemaatilise seoste
kirjeldamise juures (punktis 2.7), et lauseloogika tehetega saab
lausetevahelised philised loogilised seosed taandada tautoloogili-
suse kontrollimisele. Kuna jrgmised vited kehtivad ka predikaat-
loogikas, siis kasutame nendes tautoloogia miste asemel loogilise
tesuse mistet.
Lause 3.6. Lausete hulk {p
1
, p
2
, . . . , p
n
} on vasturkiv valem
(p
1
& p
2
& . . . & p
n
) on loogiliselt tene.
Lause 3.7. {p
1
, p
2
, . . . , p
n
} |= q valem (p
1
&p
2
&. . .&p
n
) q
on loogiliselt tene.
Lause 3.8. Laused p ja q on loogiliselt ekvivalentsed p q
on loogiliselt tene.
Lause 3.9. p on loogiliselt vr p on loogiliselt tene. p on
kontingentne mitte kumbki lausetest p ja p ei ole loogiliselt
tene.
lesanded
1. Testage, et tautoloogiast (kui tautoloogilisest vormist) asenduse
teel saadud lause on samuti tautoloogia.
2. Testage laused:
(a) 3.6;
(b) 3.7;
(c) 3.8;
(d) 3.9.
92 3. Lausearvutus
3.8. lesanded
1. Thistagu
A lipilane Rebane on kodus
B lipilane Rebane on loengul
C lipilane Rebane konspekteerib
D lipilane Rebane magab
E
1
On esimene loeng
E
2
On teine loeng
E
3
On kolmas loeng
F Rebane mtleb lunasgist
G Rebasel on raske
Lugeda:
(a) E
1
D;
(b) E
2
A & D B & D;
(c) E
3
B & F;
(d) B D C & G;
(e) B G;
(f) C F D.
2. Kirjutada valemina, kasutades eelmise lesande thistusi:
(a) Rebane magab auditooriumis ainult teise loengu ajal.
(b) *Kui Rebasel on loengul alati raske, siis on tal raske ai-
nult loengul.
(c) *Kui Rebane on iga loengu ajal kohal ja konspekteerib,
siis ta magab ainult kodus.
3. Formaliseerige arutlus ja kontrollige selle kehtivust:
Kui ma lhen sisseoste tegema, siis ma ostan kas riideid vi
toitu. Ma kulutan raha ainult siis, kui ma ostan riideid vi
toitu. Ma ei ole raha kulutanud. Seeprast ma ei kinud sis-
seoste tegemas.
3.8. lesanded 93
4. Formaliseerige tekstilik lausearvutuse arutlusena:
Kui ese on kullast, siis on selle keemiline number 79. Mart
usub, et ese on kullast. Jrelikult usub Mart, et eseme metalli
keemiline number on 79.
5. Testage samasused:
(a) A B = B A;
(b) p & q = (p q);
(c) (p & q) & r = p & (q & r).
6. Kontrollige tevrtustabeli abil, kas lausevorm on tautoloogi-
line, kontradiktoorne vi kontingentne:
(a) (p q) & (p & q);
(b) (p r) (q r);
(c) (p & q) (p r).
7. Nidake jrgmiste argumentide kehtivust vi mittekehtivust, ka-
sutades tevrtustabeleid vi tuues kontraniteid:
(a) B A
A
B
(b) (A & B)
A
B
(c) ((A B) C) D
B
D
8. Kontrollige, kas lausevormid on ekvivalentsed:
(a) p & q ja (p q);
(b) p q ja (p q);
(c) p & q ja (p q).
4. Predikaatarvutus
Elu on suur msteerium. Andku taevas, et seda iial
narmasteks ei harutata, elu saladust ei avastata.
Linda Rummo
Ma olen loonud mitte millestki veidra uue univer-
sumi.
Jnos Bolyai (18021860)
Mis on inimene looduses? Lpmatusega vrreldes
mitte midagi, kuid kik vrreldes mitte millegagi, ta
on midagi, mis on mitte millegi ja kige vahel.
Blaise Pascal (16231662), Penses, 1670
Predikaatarvutuse loojaks peetakse saksa matemaatikut Gottlob
Freget (18481925). Lausearvutuses piirdub lausete anals nende
lihtosalausete eraldamisega. Predikaatarvutus e. predikaatloogika
vimaldab lauseid detailsemalt analsida, phinedes lihtlausete
traditsioonilisel jaotamisel lauseliikmeteks. Niteks lause
Priit sb prnikut
koosneb alusest, eldisest ja sihitisest.
Predikaatarvutus on lausearvutusest ldisem, sest lausete de-
tailsem anals vimaldab kehtivaks kuulutada ka selliseid arutlusi,
mis lausearvutuse seisukohast seda ei ole. Niteks arutlus
4.1. Predikaadid ja konstandid 95
Kik linnud lendavad.
Part on lind.
Part lendab
kehtib predikaatarvutuses. Lausearvutuses ta aga ei kehti, sest
tema lausetel puuduvad osalaused.
Predikaatloogika on vlja kasvanud Aristotelese loogikast,
kelle sllogistika phineb ka sellisel lauseanalsil. Kuid
Aristoteles (384322 e.m.a.) ja tema jreltulijad kasutasid t-
napevasest erinevat lausete leskirjutusviisi. Algebralise leskir-
jutusviisi kasutuselevtt eelmise sajandi lpus vimaldas arendada
sstemaatiliselt predikaatloogikat, mistttu see on Aristotelese sl-
logistika kui uurimistehnika teadusest praktiliselt vlja trjunud.
Alles on jnud vaid thtsamad sllogismi moodused ja lausete
analsimise metoodika.
4.1. Predikaadid ja konstandid
Vaatame standardset lauset
Jri armastab Marit.
See lause koosneb kahest nimisnast ja hest tegusnast, kusjuures
tegusna armastab seostab omavahel nimisnade Jri ja Mari
poolt thistatavad objektid. Me vime ksitleda sna armastab
kui kahe objekti vahelist seost. Sellisel juhul me jtame lausesse
nimisnade asemele augud vi asendame nad indiviidmuutujatega:
armastab . . . . . .
x armastab y.
Indiviidmuutuja thistab suvalist objekti meie kseeritud objektide
hulgast ehk universumist. Indiviidmuutujaid thistatakse viketh-
tedega thestiku lpust: x, y, z, . . .
Niisugust auklikku lauset, mis sisaldab ainult objektidevahelist
seost, mitte objekte endid, nimetatakse predikaadiks. Predikaadi
96 4. Predikaatarvutus
seotavaid objekte nimetatakse tema argumentideks. Meie nite kor-
ral on tegemist 2-kohalise (ehk binaarse) predikaadiga armastab.
Tavaliselt nimetatakse kik kasutatavad predikaadid mber nii, et
nende nimed koosnevad ainult hest thest. Selleks on mugav
vtta predikaati mrava tegusnafraasi esimene tht. Antud juhul
sobib selleks smbol A snast armastab. Kui thestiku thtedest
tuleb puudus, siis vetakse predikaatide thistamiseks kasutusele
ka alaindeksitega thed. laindeksit kasutatakse harilikult predi-
kaadi argumentide arvu (ehk aarsuse) nitamiseks: kas predikaat
mrab 1-, 2- vi enamakohalise seose. Loomulikult on vimali-
kud ka 0-kohalised seosed, mis on tavalised lausearvutuse laused.
Niteks vib smboliga A
(0)
thistada kogu vaadeldava lause
Jri armastab Marit.
Seda lauset saab ksitleda ka kui 1-kohalist (ehk unaarset)
predikaati J, mis seostab Jri tema armastatava objektiga:
Jri armastab . . . . . .
Jri armastab y.
Objekte thistatakse konstantsmbolitega. Konstantsmboliks
valitakse tavaliselt vaadeldava objekti nime esimene tht. This-
tame niteks Jri smboliga j ja Mari smboliga m. Sellisel moel
saame predikaatloogika keeles lauseid lhemalt kirja panna. Predi-
kaatarvutuse lause esimeseks smboliks on selle lausega kirjelda-
tava seose predikaatsmbol, millele jrgnevad (kas sulgudes vi
ilma) tema argumentide konstantsmbolid. Predikaatsmbolitena
kasutatakse tavaliselt thestiku suurthti ja konstantsmbolitena
vikethti. (Ent tihti on hoopis vastupidi: predikaate thistatakse
vikethtedega ja konstantsmboleid suurtega. Viimane moodus on
vastavuses ka prisnimede kirjutamise reeglitega, mille kohaselt
alustatakse prisnimesid suurthega.)
Niteks saab eespool toodud lause kirjutada predikaatloogikas
kujul
Ajm.
4.1. Predikaadid ja konstandid 97
Sltuvalt predikaadi argumentide arvust saab sama lauset les
kirjutada ka teistel kujudel:
Jm,
A
(0)
.
Isegi juhul, kui predikaatide argumentide arvud on fikseeritud,
saab antud lauset erinevatel viisidel formaliseerida (kasutades
erisuguseid leskirjutamisreegleid):
A(j, m),
a(Jri, Mari),
armastab (jri, mari).
Kui predikaatsmbol eelneb oma argumentide thistustele, siis
eldakse, et lause on prefikskujul. Kahekohaliste predikaatide
korral kasutatakse tihti ka infikskuju, milles predikaatsmbol asub
oma argumentide vahel:
Jri armastab Marit,
j A m.
Keeleliselt on vimalik konstrueerida ka 3-kohalisi predikaate.
Niteks, thistades Peetri, suve, talve, Kanaari saared ja Otep
vastavalt smbolitega p, s, t , k ja o ning puhkamise seose
smboliga P, saame laused
Peeter puhkab suvel Kanaari saartel.
Peeter puhkab talvel Otepl
esitada predikaatloogikas kujul
Ppsk,
Ppt o.
Ainult hte predikaati sisaldavaid predikaatarvutuse lauseid
nimetatakse atomaarseteks lauseteks e. aatomiteks. Atomaarsetest
98 4. Predikaatarvutus
lausetest saab lausearvutuse tehete abil moodustada liitlauseid.
Niteks saab lause
Jri armastab ennast ja Marit
mber snastada liitlausena
Jri armastab ennast ja Jri armastab Marit,
millele vastab predikaatloogika lause
Ajj & Ajm.
Thistades tervisespordiga tegelemise ja haigeks jmise predi-
kaadid smbolitega T ja H ning Andrese smboliga a, saame
lause
Kui Andres tegeleb tervisespordiga, siis ta ei
j haigeks
formaliseerida kujul
T a Ha.
4.2. Kvantorid
Predikaatloogika laused ei tohi ldjuhul sisaldada indiviidmuutu-
jaid. Kui me soovime vita midagi kigi objektide kohta vaadel-
davast universumist, siis me toome sisse ldisuskvantori. Niteks
lause
Jri armastab kiki
formaliseeritakse valemina, kus armastamise predikaadi teise ar-
gumendi kohale kirjutatakse indiviidmuutuja ja seotakse see ldi-
suskvantoriga x:
x Ajx.
Smbol on tagurpiditht A (ingliskeelsest snast all). Saadud
lauset loetakse: Iga objekt x on selline, et objekt j on temaga
seoses A vi Iga x korral kehtib Ajx.
4.2. Kvantorid 99
Eksistentsikvantori (ehk olemasolukvantori) abil videtakse, et
mingi objekt vaadeldavast universumist rahuldab antud tingimust.
Niteks predikaatloogika lause
x Ajx.
tleb meile, et
Jri armastab kedagi (vi midagi).
Eksistentsikvantoris x esinev smbol on mberpratud tht E
(ingliskeelsest snast exist) ja me loeme eespool toodud formaalset
lauset: Leidub objekt x, millega objekt j on seoses A vi
Leidub x, nii et kehtib Ajx. Eksistentsikvantorit sisaldav lause
on tene nii juhul, kui antud tingimust rahuldab ainult ks objekt,
kui ka juhul, kui selliseid objekte on palju. Selleprast on seda
lauset igem lugeda: Leidub vhemalt ks x, mis rahuldab
tingimust Ajx.
lesanded
1. Formaliseerige laused:
(a) *Kik on valge vi must.
(b) Kik on valge vi kik on must.
(c) Fido on koer.
(d) *Igaks armastab kedagi.
(e) On olemas keegi, keda kik armastavad.
(f) Kui keegi armastab kedagi, siis John armastab ennast.
(g) *Mitte keegi peale Johni ei armasta iseennast.
(h) Igaks armastab kas ennast vi mnda naist.
(i) Kui keegi ei suudle Johni, siis Mary teeb seda.
(j) New Yorki elanikud armastavad oma kodulinna.
(k) Kui John ei armasta New Yorki, siis ta ei ela seal.
(l) Kik on hea, mis hsti lpeb.
2. Formuleerige eelmises lesandes toodud lausete eitused.
100 4. Predikaatarvutus
4.3. Predikaatarvutuse sntaks
Predikaatarvutuse sntaksi kirjelduse saame lausearvutuse thes-
tiku ja sntaksireeglite tiendamise teel. Predikaatarvutuse thestik
koosneb jrgmistest mrkidest ja smbolitest:
predikaatsmbolid:
A, B, C, . . . , A
1
, A
2
, . . . (suurthed)
indiviidmuutujad: x, y, z, . . . , x
1
, y
1
, z
1
, . . .
(thestiku viimased thed)
indiviidkonstantide smbolid:
a, b, c, . . . , v, a
1
, a
2
, . . .
(thestiku esimesed thed)
loogiliste tehete smbolid: &
kirjavahemrgid: ()
Me eeldame, et iga predikaatsmboli argumentide arv on ksee-
ritud. Indiviidtermid on indiviidkonstantide smbolid ja indiviid-
muutujad.
Defineerime kigepealt kige lihtsamad predikaatarvutuse va-
lemid atomaarsed valemid ja laiendame seejrel valemite
klassi loogiliste tehete abil.
Definitsioon 4.1 (predikaatarvutuse sntaks). Atomaarne valem
e. aatom on kas kujul L, kus L on 0-kohaline predikaatsmbol
(lausemuutuja), vi kujul Pt
1
. . . t
n
(vi P(t
1
, . . . , t
n
)), kus P on
n-kohaline predikaatsmbol ja t
1
, . . . , t
n
on indiviidtermid.
1. Atomaarne valem on valem.
2. Kui p on valem, siis p on valem.
3. Kui p ja q on valemid, siis (p & q), (p q), (p q) ja
(p q) on valemid.
4.3. Predikaatarvutuse sntaks 101
4. Kui p on valem ja v on indiviidmuutuja, siis on v p ja
v p on valemid.
5. Valemi vlimised sulud vib ra jtta.
Nide 4.2. Avaldis
Ajx &x Axx
on predikaatarvutuse valem, sest
1. Ajx on atomaarne valem (definitsiooni 1. punkti phjal).
2. Axx on atomaarne valem (1).
3. x Axx on valem (4), sest Axx on valem ja x on indiviidmuu-
tuja.
4. (Ajx &x Axx) on valem (3), sest Ajx ja x Axx on valemid.
5. Ajx &x Axx on valem (5).
Muutuja esinemine on valemis seotud, kui ta esineb kvantoris
vi kvantorile alluvas avaldises. Kui muutuja esinemine ei ole
valemis seotud, siis see muutuja esinemine on vaba.
Muutuja on valemis seotud, kui kik tema esinemised on
valemis seotud. Vastasel juhul on muutuja valemis vaba.
Valem on kinnine, kui kik tema muutujad on seotud. Vastasel
juhul nimetatakse valemit lahtiseks. Niteks muutuja x esimene
esinemine valemis
Ajx &x Axx
on vaba, kuid lejnud kolm muutuja x esinemist on seotud.
Jrelikult on muutuja x vaadeldavas valemis vaba ja see valem on
lahtine.
Vabu muutujaid sisaldavate lausete tevrtuste kindlakstege-
mine vib tekitada raskusi. Selleprast jtame vabu muutujaid
sisaldavad valemid vaatluse alt vlja. Lauseks nimetatakse predi-
kaatarvutuse valemit, milles ei ole vabu muutujaid. Niteks avaldis
x (Ajx &x Axx)
on predikaatarvutuse lause, sest kik temas esinevad muutujad on
seotud.
102 4. Predikaatarvutus
lesanded
1. Leidke valemitest seotud ja vabad muutujad:
(a) x Px Qxy;
(b) y (Qx z Pyz);
(c) x (Px yz Qxyz).
4.4. Tarski semantika
Predikaatarvutuse lause tesuse kontrollimiseks tuleb lbi vaadata
selle lause kikvimalikud thendused. Lausearvutuse korral piisab
tevrtustabeli arvutamisest, sest selle iga rida vastab mingile
vimalikule olukorrale. Predikaatarvutuse korral ei ole asi nii
lihtne, kuna predikaadi tevrtus sltub tema argumentidest.
Thistame Jri thega j ja naiseks olemise predikaadi t-
hega N. Siis on lause
Nj
vr, sest Jri ei ole naissoost. Kuid me vime ette kujutada olu-
korda, kus j thistab hoopis Marit, ning sellises interpretatsioonis
on vaadeldav lause tene. Jrelikult on see lause kontingentne.
Erinevate interpretatsioonide konstrueerimise hlbustamiseks
tuuakse predikaatarvutusse signatuuri miste. Predikaatarvutuse
signatuur sisaldab kiki kasutatava thestiku predikaat- ja kons-
tantsmboleid. Signatuuri smboleid nimetatakse vahel ka mit-
teloogilisteks smboliteks, sest nende thendus ei ole loogikas
kseeritud ning seda on vaja eraldi tpsustada. Kiki lejnud t-
hestiku smboleid nimetatakse loogilisteks smboliteks. Loogilised
smbolid on niteks loogiliste tehete smbolid ja indiviidmuutu-
jad. Tavaliselt ksitletakse loogilise smbolina ka objektidevahelise
vrduse seost =.
Olgu meil fikseeritud mingi predikaatarvutuse thestik, Const
on kigi selle indiviidkonstantide smbolite loetelu ja Pred kigi
4.4. Tarski semantika 103
kasutatavate predikaatsmbolite loetelu. Sellise predikaatarvutuse
signatuuri saab defineerida kui nende kahe loetelu hendi:
= Const ; Pred.
Eespool toodud nite korral vib signatuuriks vtta ainult selles
nimetatud objektide ja predikaatide thistused:
= j, m; N,
kus Mari on thistatud thega m.
Vaadeldava predikaatarvutuse interpretatsiooniks I nimetatakse
loetelu, mis koosneb mittethjast hulgast U
I
, mida nimetatakse
universumiks e. interpretatsiooni kandjaks, ja selle predikaatarvu-
tuse signatuuri kigi elementide interpretatsioonidest universu-
mis U
I
:
I = U
I
; Const
I
; Pred
I
,
kus Const
I
on saadud loetelust Const iga konstantsmboli c
asendamisel universumi U
I
mingi elemendiga c
I
ja Pred
I
on
saadud predikaatsmbolite loetelust Pred iga predikaatsmboli P
asendamisel tema ekstensiooni e. tehulgaga P
I
universumis U
I
.
Meie nite korral on mistlik valida universumiks kahest
inimesest koosnev hulk
H = {Jri, Mari}
ja interpretatsiooniks loetelu
I = H; j
I
, m
I
; N
I
,
kus signatuuri smboleid interpreteeritakse loomulikul viisil:
j
I
= Jri,
m
I
= Mari,
N
I
= {Mari} H.
Predikaadi Nx ekstensioon koosneb antud juhul ainult hest
elemendist, sest hulgas H ei ole rohkem naisi.
Kuna predikaatarvutuse lausetes ei ole vabu muutujaid, siis
on iga lause tema thestikku sisaldava interpretatsiooni korral kas
104 4. Predikaatarvutus
tene vi vr. Kui valem p on interpretatsioonis I tene, siis me
kirjutame
I |= p,
aga vastasel juhul kirjutame
I |= p.
Valemite hulga L mudeliks nimetatakse interpretatsiooni I, milles
kik L laused on tesed:
I |= p (p L).
Niteks meie kirjeldatud interpretatsioon I on lause
Nm
mudel, sest Mari on naissoost.
Binaarse predikaadi ekstensiooniks on universumi elementide
paaride hulk, mis mrab, milliste argumendipaaride korral on
predikaat tene. Niteks kahest valemist koosneva hulga
L = {x Ajx, Amj}
mudeliks sobib interpretatsioon
I = {Jri, Mari}; j
I
, m
I
; A
I
,
j
I
= Jri,
m
I
= Mari,
A
I
= {(Mari, Jri), (Jri, Mari), (Jri, Jri)},
milles Jri armastab nii ennast kui ka Marit ja Mari armastab
ainult Jrit, sest kik L laused on selles interpretatsioonis tesed.
Me vime eeldada, et interpretatsioonis on piisavalt indivii-
dide konstantsmboleid, nii et nendega saab ra thistada kik
universumi elemendid. Konstantsmboliteks sobivad niteks uni-
versumi elementide nimede esithed. Olgu p {x/c} valem, mis on
saadud valemist p muutuja x kigi vabade esinemiste asenda-
misel smboliga c. Kui x on valemi p ainus vaba muutuja ja c
on universumi mingile elemendile vastav konstantsmbol, siis on
p {x/c} predikaatarvutuse kinnine valem ehk lause. Niteks, tehes
4.4. Tarski semantika 105
asenduse {x/m} valemis
Ajx,
saame lause
Ajm.
Asenduse {y/j} puhul valem ei muutu, sest ta ei sisalda muutujat
y vabalt.
ldisuskvantor vidab, et tema kvantifitseeritav valem on
universumi kigi elementide korral tene, s.t. see valem on
tene iga asenduse korral, milles me asendame kvantoris esineva
muutuja universumi mingit objekti thistava konstantsmboliga.
Eksistentsikvantori tesuseks piisab, et valem oleks tene vhemalt
he asenduse korral.
Anname nd predikaatarvutuse valemite semantika formaalse
definitsiooni.
Definitsioon 4.3 (predikaatarvutuse semantika). Olgu antud in-
terpretatsioon I, mille universum on U
I
.
1. Kinnine atomaarne valem Pt
1
. . . t
n
on interpretatsioonis I
tene siis ja ainult siis, kui konstantide t
1
, . . . , t
n
inter-
pretatsioonide kortee! (t
1I
, . . . , t
nI
) kuulub predikaadi P
ekstensiooni:
I |= Pt
1
. . . t
n
(t
1I
, . . . , t
nI
) P
I
.
2. I |= p I |= p.
3. I |= p & q I |= p ja I |= q.
I |= p q I |= p vi I |= q.
I |= p q I |= p vi I |= q.
I |= p q (I |= p ja I |= q) vi (I |= p ja I |= q).
4. I |= x p iga c U
I
korral I |= p {x/c}.
I |= x p leidub c U
I
, nii et I |= p {x/c}.
Nide 4.4. Lehekljel 104 kirjeldatud interpretatsiooni I korral kehtib
I |= x Ajx & Amj,
sest
106 4. Predikaatarvutus
1. I |= Ajj (definitsiooni 1. punkti phjal), sest (j
I
, j
I
) A
I
.
2. I |= Ajm (1), sest (j
I
, m
I
) A
I
.
3. I |= x Ajx (4), sest I |= Ajj ja I |= Ajm.
4. I |= Amj (1), sest (m
I
, j
I
) A
I
.
5. I |= x Ajx & Amj (3), sest I |= x Ajx ja I |= Amj.
Vaadeldes valemi vimalike thendustena kiki tema signa-
tuuri interpretatsioone, saame nd deneerida predikaatarvutuse
valemite loogilise tesuse. Me tleme, et valem p on (predikaat-
arvutuses) loogiliselt tene, kui ta on tene igas (tema thestiku)
interpretatsioonis, ja kirjutame
|= p.
Valem p on (predikaatarvutuses) loogiliselt vr, kui ta on igas
interpretatsioonis vr, s.t.
|= p.
Kiki lejnud valemeid nimetatakse kontingentseteks. Loogiliselt
teseid ja kontingentseid valemeid nimetatakse kehtestatavateks.
Predikaatarvutuse valemite loogilise tesuse definitsiooni saab
mber snastada matemaatilise vitena.
Lause 4.5. |= p iga interpretatsiooni I korral kehtib I |= p.
Defineerime interpretatsioonide abil ka loogilise jrelduvuse
miste. Me tleme, et valemite hulgast jreldub (predikaatarvu-
tuses) loogiliselt valem p, kui iga mudel on ka p mudel, ning
kirjutame
|= p.
Kui eelduste hulk on thi ( = ), langevad loogilise jrelduvuse
ja loogilise tesuse misted kokku:
|= p |= p.
Nitame nd, et kik tautoloogiatest asenduste teel saadavad
predikaatarvutuse valemid on loogiliselt tesed.
4.4. Tarski semantika 107
Lause 4.6. Kik lausearvutuse tautoloogiate erikujud on (predi-
kaatarvutuses) loogiliselt tesed.
Testus. Olgu meile antud mingi tautoloogia. Moodustame selle
tautoloogia erikuju, asendades lausemuutujad predikaatarvutuse
valemitega. Lausemuutujaid asendavad valemid on igas interpre-
tatsioonis kas tesed vi vrad. Kuna tautoloogia on lausemuu-
tujate suvaliste vrtuste korral tene, siis on ka tema erikuju igas
interpretatsioonis tene.
Niteks on valem
x Px x Px
loogiliselt tene, sest ta on saadud tautoloogiast AA asenduse
{A/x Px} teel.
Predikaatarvutuses saab moodustada ka selliseid loogiliselt
teseid valemeid, mis ei ole tautoloogiate erikujud. Valem
x (Px x Px)
ei ole tautoloogia erikuju, sest seda ei saa esitada lausearvutuse
tehteid sisaldava liitlausena. Samas on see valem loogiliselt tene.
Selles vib veenduda, valides valemi suvalise interpretatsiooni I ja
asendades kvantorialuses avaldises muutuja x interpretatsiooni I
universumi mingit elementi thistava konstantsmboliga c. On
kaks vimalust. Kui I |= Pc, siis definitsiooni 4.3 kolmanda
punkti phjal
I |= Pc x Px.
Vaadeldav implikatsioon on interpretatsioonis I tene ka juhul,
kui I |= Pc, sest siis I |= x Px. Jrelikult kehtib iga interpretat-
siooni I korral
I |= x (Px x Px),
mis testabki valemi loogilise tesuse.
lesanded
1. Vljendage predikaatarvutuses kvantor see:
See tdruk, kes meile lehvitab, on tuttava noga.
108 4. Predikaatarvutus
2. Testage kvantorite duaalsusreeglid:
(a) x p = x p;
(b) x p = x p;
(c) x p = x p;
(d) x p = x p.
4.5. Loogiline ruut
Vaatleme lauseid, mis sisaldavad ainult hte kvantorit. ldjaa-
tav lause vidab mingi omaduse olemasolu kigil antud liiki
objektidel. ldjaatav on niteks lause
Kik inimesed naeratavad.
Me saame lause mber snastada:
Iga inimene on sellise omadusega, et ta nae-
ratab.
Iga objekt on selline, et kui ta on inimene, siis
ta naeratab.
Thistades naeratamist vljendava predikaadi thega N ja inime-
seks olemise predikaadi thega I, saab vaadeldava ldjaatava lause
formaliseerida predikaatarvutuse valemina
x (Ix Nx).
Tuleb thele panna, et implikatsiooni kasutamine ei ole siin sugugi
juhuslik. Niteks konjunktsiooni kasutamise korral on lausel
x (Ix & Nx).
esialgsest hoopis erinev mte:
Iga objekt on selline, et ta on inimene ja ta
naeratab.
Me saame aga ette kujutada olukorda, kus objektide universum
koosneb nii inimestest kui ka loomadest. Sellise nite korral on
4.5. Loogiline ruut 109
esialgne lause juhul, kui kik inimesed tepoolest naeratavad,
tene. Konjunktsiooni sisaldav lause on aga kindlasti vr, sest
loomad vivad kll naeratada, kuid nad ei ole inimesed.
ldjaatavast lausest on lihtne moodustada ldeitav lause.
Selleks eitatakse kigi antud liiki objektide korral vaadeldava
omaduse kehtivust. Sellisel teel saame lause
Iga inimene on sellise omadusega, et ta ei
naerata,
mis on samavrne lausega
kski inimene ei naerata
ning see formaliseeritakse kujul
x (Ix Nx).
Rkides mitte kigist antud liiki objektidest, vaid ainult
osast objektidest, saab snastada vaadeldava lause osajaataval ja
osaeitaval kujul:
Mni inimene naeratab.
Mni inimene ei naerata.
Sellised laused teisendatatakse predikaatarvutuse valemiteks, kasu-
tades eksistentsikvantorit ja konjunktsiooni:
x (Ix & Nx),
x (Ix & Nx).
Viimast lauset vib samuti vaadelda kui ldjaatava lause eitust:
x (Ix Nx).
Predikaatarvutuse semantikareeglite abil saab aga nidata, et
need formaliseeritud valemid on ekvivalentsed. Analoogiliselt vib
ldeitavat lauset ksitleda kui osajaatava lause eitust:
x (Ix & Nx).
110 4. Predikaatarvutus
Lause liik Liigi this Nidislause Lause formalisatsioon
ldjaatav A Kik inimesed
naeratavad.
x (Ix Nx)
ldeitav E kski inimene ei
naerata.
x (Ix Nx)
Osajaatav I Mni inimene
naeratab.
x (Ix & Nx)
Osaeitav O Mni inimene ei
naerata.
x (Ix & Nx)
Tabel 4.1. Kvantifitseeritud lausete liigitus.
Jaatav lause Eitav lause
ldine lause A: Iga I on N E: kski I pole N
Osaline lause I: Mni I on N O: Mni I pole N
Tabel 4.2. Kvantifitseeritud lausete omadused.
Tabel 4.1 kirjeldab thtsamad kvantitseeritud lausete liigid ja
annab nende levinumad thistused. Tabelis 4.2 esitatakse kvantit-
seeritud lausete philised omadused.
Olgu antud kaks suvalist lauset. Kui need laused ei saa olla
korraga tesed, siis me tleme, et nad on teineteise vastandid.
Vastandlikkuse erijuhuks on sellised laused, mille tevrtused
on alati erinevad, nii et ks lause on teise lause eitus. Selli-
seid lauseid nimetatakse vasturkivateks e. kontradiktsioonideks.
Vasturkivad on niteks valemid
A & B ja (A& B).
Valemid
A &B ja A& B
on vastandid, sest nad ei saa olla samaaegselt tesed. Kui valem
A & B on tene, siis on A ja B mlemad tesed, mistttu valem
4.5. Loogiline ruut 111
A
I
E
O
Vastandid
Vasturkivad
Iga I on N
Mni I on N
kski I pole N
Mni I pole N
|= |=
Joonis 4.1. Loogiline ruut.
A & B on vr. Valem A & B on tene, kui A ja B on
mlemad vrad. Kuid siis on A& B vr.
Me saame anda ka vastandlikkuse ja vasturkivuse matemaa-
tilised kirjeldused.
Lause 4.7. Valemid p ja q on vastandid p |= q ja q |= p.
Valemid p ja q on vasturkivad p = q.
Joonisel 4.1 toodud loogilise ruudu abil kirjeldatakse kvanti-
tseeritud lausete liikide vahelised philised loogilised seosed.
Ruudu langeva diagonaali lausete vasturkivus annab meile
seosed
A = O
ja O = A
ehk
x (Ix Nx) = x (Ix & Nx)
ja x (Ix & Nx) = x (Ix Nx).
Ruudu tusva diagonaali otspunktide vasturkivus annab vrdused
I = E
ja E = I
112 4. Predikaatarvutus
ehk lahtikirjutatult
x (Ix & Nx) = x (Ix Nx)
ja x (Ix Nx) = x (Ix & Nx).
Jttes krvale objektide filtreerimise (predikaadiga Ix), saame
siit tuletatada kvantorite duaalsusreeglid (lesanne 4.4.2, lk. 108).
Loogilise ruudu korral tuleb veel mrkida, et A- ja E-liiki lau-
sed on teineteise vastandid, kuid nad pole omavahel vasturkivad,
sest nad vivad olla korraga vrad. I- ja O-liiki laused ei ole aga
vastandid, sest nad ei vlista teineteist. Ruudu klgedel asuvad
laused on seotud loogilise jreldumise seose kaudu:
A |= I,
E |= O.
lesanded
1. Testage A- ja E-liiki lausete vastandlikkus.
2. Testage, et x (Ix & Nx) = x (Ix Nx).
3. Testage, et x (Ix Nx) |= x (Ix&Nx) (kui Ix kehtib vhemalt
he objekti x korral).
4.6. Sllogismid
Sllogismid on kahe eeldusega kehtivad arutlused. Sllogismi eel-
dustes on kolm mistet, kusjuures ks mistetest esineb mlemas
eelduses. Sltuvalt mistete omavahelisest paiknemisest eeldustes
eristatakse nelja tpi sllogismiguure. Nitame, kuidas predi-
kaatarvutuse vahenditega saab hinnata sllogismide kehtivust.
Vaatleme arutlust
Kik kassid on hallid.
Mni koduloom on kass.
Mni koduloom on hall.
4.6. Sllogismid 113
Thistame misted kass, hall ja koduloom vastavalt smbolitega
K, H ja L. Me saame kirjutada selle arutluse predikaatarvutuse
keeles kujul
x (Kx Hx)
x (Lx & Kx)
x (Lx & Hx)
See arutlus on kehtiv, sest teise eelduse phjal leidub tema
interpretatsiooni universumis niisugune objekt, mis muudab predi-
kaadid Lx ja Kx on teseks. Arutluse esimene eeldus vidab aga,
et antud objekti korral on ka Hx tene.
Toome nd nite mittekehtivast sllogismist. Thistame arut-
luses
Kik pardid lendavad.
Kik haned lendavad.
Kik haned on pardid
misted part, lendama ja hani vastavalt smbolitega P, L ja H.
Tulemuseks on predikaatarvutuse arutlus
x (Px Lx)
x (Hx Lx)
x (Hx Px)
See arutlus ei kehti, sest leidub niisugune interpretatsioon I
(nn. kontranide), mis lkkab tema kehtivuse mber. Interpretatsi-
ooni I universum koosneb kahest objektist: hanest Hans ja pardist
Piilu. Sellisel juhul on arutluse eeldused tesed, sest mlemad
linnud lendavad, aga jreldus on vr, sest Hans ei ole part.
114 4. Predikaatarvutus
4.7. Korduv kvantifitseerimine
Lausetes kasutatakse tihti mitut kvantorit. Niteks lause
Keegi armastab kedagi
formaliseeritud kujus on kaks eksistensikvantorit: ks kvantor selle
inimese kohta, kes armastab, ja teine kvantor inimese kohta, keda
ta armastab:
xy Axy.
Kui saadav valem on esialgsega ekvivalentne, vib valemi ees
olevad kvantorid omavahel ra vahetada. Toodud lauses on eksis-
tentsikvantorite vahetus lubatud:
yx Axy.
Selles veendumiseks kujutame endale ette, et esialgne lause on
interpretatsioonis I tene. Siis kehtib mingite konstantide c
I
ja d
I
korral
(c
I
, d
I
) A
I
.
Ent siis on ka vahetatud kvantoritega lause interpretatsioonis I
tene. Kui esialgne lause on interpretatsioonis I vr, siis on seda
ka teine lause. Jrelikult on esialgne lause loogiliselt ekvivalentne
lausega
Kedagi armastatakse
ning me vime lause ees olevad kaks eksistentsikvantorit omavahel
ra vahetada.
Sama kehtib ka ldisuskvantori korral, sest kahe ldisuskvan-
toriga algavad laused on kas samaaegselt tesed vi samaaegselt
vrad:
xy p = yx p.
Selgub aga, et kahte eri tpi kvantorit ei tohi omavahel ra
vahetada:
xy Exy = yx Exy.
Selleks vaatleme interpretatsiooni, mille universumiks on kigi ini-
meste hulk ja predikaat Exy thendab x ema on y. Vasakpoolne
4.7. Signatuur ja interpretatsioon 115
lause on selles interpretatsioonis tene, sest igal inimesel on ema,
parempoolne lause on aga vr, sest kski inimene pole kigi
inimeste ema. Erinevat tpi kvantorite korral kehtib loogiline
jreldumine:
yx p |= xy p.
Seega vib ldisuskvantori tsta eksistentsikvantori ette.
lesanded
1. Nidake, et ldisuskvantori vib tsta eksistentsikvantori ette:
yx Axy |= xy Axy.
2. Tlkige predikaatarvutuse keelde:
(a) *Kik vastasid kigile ksimustele.
(b) Mitte keegi ei vastanud kigile ksimustele.
(c) Vastati igale ksimusele.
(d) Igaks vastas vhemalt hele ksimusele.
(e) *Mned ei vastanud helegi ksimusele.
(f) Kik peale Fredi vastasid vhemalt hele ksimusele.
4.8. Signatuur ja interpretatsioon. Struktuuri
ja struktuuride klassi teooria
Kui analsida matemaatiliste teooriate kirjapanemise keelt, siis
neme, et lihtsamal juhul piisab meie vajadusteks paragrahvis 4.4
esitatud signatuuri miste tiendamisest veel he smbolite kate-
gooria vrra. Predikaat- ja konstantsmbolitele tuleks lisada sm-
bolid antud teoorias uuritavate funktsioonide thistamiseks nn.
funktsionaalsmbolid. Esimest jrku keele signatuur ongi kolmest
smbolite hulgast koosnev kolmik C, F, P. Niteks aritmeetika
esimest jrku teooria nn. formaalne aritmeetika kasutab tavali-
selt signatuuri = 0;

, +, ; =, kus smbol

thistab jrgmise
arvu leidmise funktsiooni f (x) = x + 1. Muidugi eeldatakse, et
116 4. Predikaatarvutus
signatuuri deneerimisel kseeritakse iga funktsionaalsmboli ja
predikaatsmboli jaoks ka argumentide arv. Aritmeetika signatuu-
ris on funktsionaalsmbol

hekohaline, teised funktsionaalsm-
bolid ja predikaatsmbol = kahekohalised. Kik kolm smbolite
hulka vivad ldiselt olla nii lplikud kui lpmatud. Konstant-
ja funktsionaalsmbolite hulgad vivad mnikord olla ka thjad.
Predikaatsmbolite hulk peab sisaldama vhemalt he elemendi,
et oleks vimalik moodustada valemeid.
Valemi miste deneerimisel skeem eriti ei muutu. Ainult
predikaatide argumentide kohale lubatakse lisaks konstantidele ja
muutujatele nd kirjutada ka terme: muutujatest ja konstantsm-
bolitest funktsionaalsmbolite abil moodustatud avaldisi. Nii saab
formaalses aritmeetikas niteks moodustada valemi
xyz [x + 0

= y & x +y

= z].
Tavaliselt konstrueeritakse esimest jrku keele signatuur min-
gist vaatluse all olevast matemaatilisest struktuurist lhtudes nii,
et ta sisaldaks teoorias formuleeritavate videte jaoks vajalikke
thiseid. Sealjuures vidakse ka signatuur deneerida formaalselt
kitsamana ja toetuda sellele, et mnda predikaati saab vljen-
dada signatuuri smbolite kaudu. Niteks kui universumiks on
naturaalarvude hulk = {0, 1, . . .}, siis saame predikaadi x < y
vljendada valemiga
(x = y) &z (y = x +z)
laltoodud signatuuris, predikaadi x y = z aga valemiga
x = y +z. Nii vime vltida suure hulga smbolite lisamist
ja saavutada, et signatuur ja valemite hulk antud keeles oleks
teoreetilise uurimist jaoks piisavalt kompaktne.
Edasi on selge, et he ja sama keele abil on vimalik rkida
erinevatest struktuuridest. Niteks sellesama aritmeetika signatuuri
valemitega vime vljendada ka fakte tisarvude, ratsionaalarvude
vi reaalarvude universumi kohta. Algebras on ka kombeks seada
hele ja samale tehtemrgile vastavusse erinevaid (isegi samal
hulgal deneeritud) operatsioone. Muidugi vib universumi vi
signatuuri smbolite thenduse varieerimine kaasa tuua seda, et
4.8. Signatuur ja interpretatsioon 117
mingi valem on hes interpreteeringus tene ja teises vr. Natu-
raalarvudel vr valem xy [x = y

] on tisarvudel ilmselt tene.


Kokku jreldame aga siit, et vib osutuda otstarbekaks ajalooli-
sele vastupidine liikumissuund, kus kseeritakse keel, vaadeldakse
selle keele valemeid eri struktuuridel ja saadakse vastavalt valemite
tesusele vi vrusele nende struktuuride teooriad.
Definitsioon 4.8. Olgu = , , signatuur. Signatuuri in-
terpretatsiooniks nimetatakse paari M, I

, kus M on suvaline
mittethi hulk (interpretatsiooni kandja), mida mistetakse indi-
viidide piirkonnana, ja I

on interpreteeriv kujutus, mis seab


1) igale konstantsmbolile c vastavusse elemendi c M;
2) igale n-kohalisele funktsionaalsmbolile f
(n)
vasta-
vusse hulgal M deneeritud n muutuja funktsiooni f : M
n
M;
3) igale n-kohalisele predikaatsmbolile P vastavusse
hulgal M defineeritud n-kohalise predikaadi P: M
n
{t, v},
kusjuures vrdusmrgile seatakse vastavusse vrduspredikaat.
Nide 4.9. Olgu = 0, 1, 2, . . . ; +, ; =, <. Anname sellele signa-
tuurile kolm interpretatsiooni:
a) Olgu M = ja signatuuri smbolid interpreteeritud standardsel
viisil;
b) Olgu M = ja signatuuri smbolid interpreteeritud standardsel
viisil;
c) Vaatleme Boolei interpretatsiooni. Olgu M = {0, 1}. Interpretee-
rime signatuuri smboleid jrgmiselt:
c =

0, kui c on paarisarv,
1, kui c on paaritu arv,
korrutamismrki mistame tavalisel viisil, mrki + aga kui liitmist
arvu 2 jgiklassiringis, s.t.
+ 0 1
0 0 1
1 1 0
(tavalist liitmist ei saa siin kasutada, kuna M ei ole liitmise suhtes
kinnine hulk); predikaatsmboleid = ja < mistame tavalisel viisil.
118 4. Predikaatarvutus
lesanded
1. Leida jrgmiste valemite tevrtused igahes kolmest eelmises
nites vaadeldud interpretatsioonist:
(a) 0 = 2;
(b) 1 + 2 = 3;
(c) 1 + 5 = 2;
(d) x(x < x + 1);
(e) xy (x < y);
(f) xy (y < x);
(g) xy [x < y z (x < z & z < y)];
(h) xyz (x +y = x +z y = z);
(i) xyz (x +z = y).
Olgu M struktuur signatuuris . Struktuuri M esimest jrku
teooriaks (M elementaarteooriaks) nimetatakse kigi sellel struk-
tuuril teste valemite hulka:
Th (M) = { A | A on valem ja M |= A}.
Niteks laltoodud valem xyz [x + 0

= y & x +y

= z]
kuulub naturaalarvude esimest jrku teooriasse, aga valem
xy [x = y

] ei kuulu, sest x = 0 jaoks sellist y vrtust ei


leidu.
Struktuure M1 ja M2 nimetatakse elementaarselt ekvivalent-
seteks, kui nende elementaarteooriad htivad. On kllalt ilmne, et
isomorsm on selleks piisav tingimus. Tarvilik ta aga ei ole.
Ka esimest jrku keelte jaoks on thtsal kohal samaselt tesed
valemid ja valemite samavrsus. Samaselt testeks nimetatakse
valemeid, mis on tesed oma signatuuri kigis interpretatsioonides
(vabade muutujate kigil vrtustel, kui valem pole kinnine). Vale-
meid A ja B signatuuris nimetatakse loogiliselt samavrseteks,
kui kigis signatuuri interpretatsioonides on A tevrtus vrdne
B tevrtusega.
On selge, et mingit otse denitsioonil phinevat samaselt
tesuse vi loogilise samavrsuse kontrolli algoritmi (nagu lau-
searvutuses) siin olla ei saa, sest tuleks kontrollida lpmata palju
4.8. Signatuur ja interpretatsioon 119
interpretatsioone. Osal lihtsatel juhtudel saab kll nidata, et pii-
sab lpliku hulga interpretatsioonide vaatlemisest. Aga see on nii
ainult mne vga piiratud signatuuri puhul, niteks ainult vrdus-
mrgist koosnev signatuur ja signatuurid, mis koosnevad ainult
unaarsetest predikaatsmbolitest.
Matemaatikas on oluline ka ks vahepealse ldisuse astmega
tesuse miste. Tihti uuritakse mitte hte struktuuri, vaid mingit
struktuuride klassi ja eesmrgiks on testada viteid, mis kehtivad
igas sellesse klassi kuuluvas struktuuris. Nii tehakse niteks
algebras ja funktsionaalanalsis, vaadeldes poolrhmi, rhmi,
ringe, korpusi, vektorruume, meetrilisi vi topoloogilisi ruume jne.
Olgu kseeritud mingi signatuur ja olgu K mingi struktuu-
ride hulk, mis koosneb struktuuridest signatuuris . Struktuuride
klassi K elementaarteooriaks nimetame signatuuri kigi selliste
valemite hulka, mis on tesed igal klassi K kuuluval struktuuril.
Niteks rhmateooria jaoks on tihti kasutusel signatuur
e; ; =, kus smbol e thistab rhma hikelementi ja
(korrutamis-) tehet. Rhmateooriasse kuuluvad valemid, mis
on tesed igal rhmal. Niteks valem
xy [u[x u = u] &u[u y = u] x = y]
(vasak- ja parempoolse hikelemendi htimine) kuulub teooriasse,
sest ta kehtib igas rhmas, aga kommutatiivsuse aksioom
xy [x y = y x]
ei kuulu, sest on nii kommutatiivseid (Abeli rhmi) kui ka
mittekommutatiivseid rhmi.
Palju matemaatikas uuritavaid struktuuride klasse on muidugi
ise esimest jrku keele vahenditega (aksiomaatiliselt) defineeritud,
aga see pole elementaarteooria miste jaoks oluline. Niteks
vib klass K koosneda ka kigist lpliku kandjaga struktuuridest
signatuuris .
Matemaatikuid huvitab, milliste meetoditega saab kindlaks
teha, kas mingi valem on antud struktuuril vi struktuuride klas-
sil tene vi vr. Sellele probleemile vib leiduda kahte sorti
positiivne lahendus. Lihtsamal juhul vib struktuuri (struktuu-
120 4. Predikaatarvutus
ride klassi) teooria lahenduda algoritmiliselt, s.t. leidub algoritm,
millega saab kontrollida suvalise valemi tesust sellel struktuu-
ril (struktuuride klassis). Lahenduvad niteks iga Boolei algebra
(sealhulgas ka suvalise hulga alamhulkade algebra) teooria, kigi
Boolei algebrate, Abeli rhmade jpm. teooriad. Mitu teist teooriat
aga ei lahendu, kusjuures algebralises mttes ei tarvitse erinevus
lhimast lahenduvast juhust olla suur: rhmateooria, distributiiv-
sete vrede teooria.
Teiseks vimalikuks positiivseks lahenduseks on teooria ak-
siomatiseeritavus (tieliku ja korrektse aksiomaatikaga, kus on
tuletatavad parajasti teooriasse kuuluvad valemid). Kui teooria
on aksiomatiseeritav, siis saab helt poolt iga teooriasse kuuluva
valemi jaoks konstrueerida nendest aksioomidest lhtuva meh-
haaniliselt kontrollitava testuse. Teiselt poolt on aga vimalik
ka algoritm, mis genereerib kikvimalikud testused selles ss-
teemis, s.t. teoreemide leidmine on automatiseeritav (vhemalt
phimtteliselt, s.t. arvutusaja kulu arvestamata).
Kui tegemist on he struktuuri teooriaga, siis need kaks juhtu
htivad. Iga kinnine valem on vaadeldaval struktuuril kas tene
vi vr. Viimasel juhul on muidugi tema eitus tene. Valemi
tevrtuse leidmiseks vime siis kivitada testuste generaatori
ja oodata, kas saame uuritava valemi vi tema eituse testuse.
Kui aga on aksiomatiseeritud mingi struktuuride klassi teooria,
siis generaator annab meile otsuse ainult nende valemite korral,
mis on kigil vaadeldavatel struktuuridel tesed vi kigil vrad.
Aga tavaliselt pole uuritavasse klassi kuuluvad struktuurid kik
elementaarselt ekvivalentsed ja leidub valemeid, mis mnel struk-
tuuril on tesed ja mnel vrad (nagu kommutatiivsuse seadus
rhmadel). Sellise valemi kohta me nii vastust ei saa.
lesanded
2. Olgu interpretatsiooni kandja M = ja signatuur =
0, 1; +, ; =. Vljendada predikaadid:
(a) x = 2;
(b) y = 4x + 3;
(c) z = x/y;
4.9. Lplikud struktuurid 121
(d) x y;
(e) x on paarisarv;
(f) x jagub arvuga y;
(g) x on tisruut;
(h) z on x/y tisosa.
4.9. Lplikud struktuurid
Uurime kigepealt pisut lplikke struktuure. Selgub, et kllalt
loomulikel eeldustel on siin elementaarteooria lahenduv.
Teoreem 4.10. Olgu lplik signatuur ja lpliku kandjaga
struktuur signatuuris . Siis struktuuri elementaarteooria on
lahenduv.
Testus. Olgu = C, F, P, kus
C = {c
1
, . . . , c
k
},
F = {f
1
, . . . , f
l
},
P = {P
1
, . . . , P
m
}.
Olgu interpretatsiooni kandjaks hulk M = {m
1
, . . . , m
n
} ja signa-
tuuri smbolid interpreteeritud hulga M elementidega c
1
, . . . , c
k
,
hulgal M deneeritud funktsioonidega f
1
, . . . , f
l
ja predikaati-
dega P
1
, . . . , P
m
. Funktsioonid f
i
ja predikaadid P
j
on lpliku
mramispiirkonnaga ja neid saab esitada lplike tabelitena.
Olgu A kinnine valem signatuuris . Tema tevrtuse leid-
miseks asendame A kvantoriteta valemiga laiendatud keeles, kus
smbolitele on lisatud thised hulga M elementide m
1
, . . . , m
n
thistamiseks. Selleks kirjutame seestpoolt alates iga osavalemi
x B(x) asemele konjunktsiooni B(m
1
) & . . . & B(m
n
) ja iga
osavalemi x B(x) asemele disjunktsiooni B(m
1
) . . . B(m
n
).
Saadud valemis pole enam ka muutujaid, s.t. termid on koostatud
ainult M elementide thistest. Edasi arvutame funktsioonide tabe-
lite jrgi kigi termide vrtused, predikaatide tabelite jrgi kigi
122 4. Predikaatarvutus
atomaarsete valemite tevrtused ja lpuks saame lausearvutuse
tehete tulemusena kogu valemi tevrtuse.
lesanded
1. Kui signatuur on lpmatu (sisaldades niteks iga n 1 jaoks he
n muutuja predikaadi), siis vib struktuuri esimest jrku teooria
universumi lplikkusest hoolimata olla mittelahenduv. Konstruee-
rida selline signatuur ja tema mittelahenduva teooriaga interpretat-
sioon.
Teoreem 4.11. Kui signatuur sisaldab vrdusmrki, siis iga k 1
jaoks leidub
1) valem, mis on tene parajasti nendes interpretatsioonides,
mille kandjas on vhemalt k elementi;
2) valem, mis on tene parajasti nendes interpretatsioonides,
mille kandjas pole rohkem kui k elementi;
3) valem, mis on tene parajasti nendes interpretatsioonides,
mille kandjas on tpselt k elementi.
Testus. Esimest tingimust rahuldab valem
x
1
. . . x
k
[&x
i
= x
j
],
teist tingimust valem
x
1
. . . x
k
y [y = x
1
. . . y = x
k
],
kolmandat nende konjunktsioon.
Lplike struktuuride esimest jrku teooriate lahenduvus vib
meid viia mttele kasutada valemite samaselt tesuse kontrol-
limiseks kontrollimist lplikel struktuuridel. Jrgmine teoreem
nitab, et sellest ei piisa.
Teoreem 4.12. Leidub kehtestatav valem, mis on igal lplikul
struktuuril vr.
4.10. Reaalarvude jrjestuse elementaarteooria 123
Testus. Vaatleme valemit
A = xP(x, x) &xyz [P(x, y) & P(y, z) P(x, z)]
& xy P(x, y).
See valem on kehtestatav, sest ta on tene, kui vtta interpretatsi-
ooni kandjaks naturaalarvude hulk ja mista P(x, y) kui x < y.
Oletame vastuviteliselt, et A on tene lplikul hulgal M, mis
sisaldab n elementi. Olgu m
1
M. Kasutades konjunktsiooni kol-
manda liikme tesust, saame konstrueerida jada m
1
, m
2
, . . . , m
n+1
,
nii et kehtib P(m
1
, m
2
), P(m
2
, m
3
), . . . , P(m
n
, m
n+1
). Konjunkt-
siooni teise liikme (transitiivsuse) tttu kehtib
i < j P(m
i
, m
j
)
ja jrelikult konjunktsiooni esimese liikme tttu
i < j m
i
= m
j
,
s.t. elemendid m
1
, . . . , m
n+1
peavad kik olema erinevad, mis pole
M elementide arvu tttu vimalik.
4.10. Reaalarvude jrjestuse
elementaarteooria
Toome siin he pisut tsisema nite elementaarteooria lahenduvuse
kohta. Eelmise paragrahvi esimese teoreemi testasime uuritavast
valemist kvantorite elimineerimise teel. Phiidee on sama ka siin,
aga elimineerimise mehhanism oluliselt keerulisem.
Vaatleme signatuuri, mis koosneb kahest kahekohalisest predi-
kaatsmbolist = ja <. Kui vtta interpretatsiooni kandjaks reaalar-
vude hulk ja interpreteerida smbolit < tavalisel viisil, moodustab
teste valemite hulk reaalarvude jrjestuse elementaarteooria.
Teoreem 4.13. Reaalarvude jrjestuse elementaarteooria on la-
henduv.
Testus. Mrgime kigepealt, et vaadeldavas interpretatsioonis
on tesed jrgmised valemid:
124 4. Predikaatarvutus
(1) x(x < x) range jrjestuse aksioomid,
(2) xyz (x < y & y < z x < z),
(3) xy (x < y x = y y < x) jrjestuse lineaarsus,
(4) xy (x < y z (x < z & z < y) tihedus,
(5) xyz (y < x &x < z) pole esimest ega viimast elementi.
Konstrueerime nd algoritmi kinniste valemite tesuse kontrol-
liks.
1. etapil elimineerime tehtemrgid ja , avaldades need
eituse, disjunktsiooni ja konjunktsiooni kaudu.
2. etapil elimineerime ldisuskvantorid, avaldades need eituse
ja olemasolukvantori kaudu.
3. etapil elimineerime saadud valemist olemasolukvantorid.
Seda vimaldab jrgmine lemma.
Lemma 4.14. Iga osavalemi x
0
B, kus B on kvantoriteta valem,
vime asendada sama tevrtusega kvantoriteta valemiga.
Nitame, kuidas saada selline kvantoriteta valem.
3a. Viime valemis B eitused vahetult atomaarsete valemite ette
(lbi konjunktsioonide ja disjunktsioonide).
3b. Atomaarsete valemite eitused asendame (3) phjal dis-
junktsioonidega, kirjutades
x = y asemele x < y y < x,
x < y asemele x = y y < x.
3c. Jrelejnud kvantorialune valem sisaldab ainult & ja .
Disjunktsioone lbi korrutades saame atomaarsete valemite kon-
junktsioonide disjunktsiooni, s.t.
B = t
k

i=1
B
i
.
3d. Disjunktsiooni saame olemasolukvantori alt vlja tuua:
x
0
k

i=1
B
i
(x
0
) =
k

i=1
x
0
B
i
(x
0
).
4.10. Reaalarvude jrjestuse elementaarteooria 125
3e. Elimineerime kvantori igast valemist x
0
B
i
(x
0
) eraldi.
Kigepealt saame kvantori alt vlja tuua need konjunktsiooni B
i
liikmed, mis ei sisalda muutujat x
0
:
x
0
B
i
(x
0
) = C
i
&x
0
D
i
(x
0
).
3f. Vaatleme x
0
D
i
(x
0
). Siin D
i
(x
0
) on konjunktsioon ato-
maarsetest valemitest kujul x
0
< x
j
, x
0
= x
j
ja x
j
< x
0
.
3f1. Tesed liikmed x
0
= x
0
vime vlja jtta. Kui leidub
liige x
0
< x
0
, siis on konjunktsioon kohe vr.
3f2. Kui konjunktsioonis leidub liige kujul x
0
= x
j
, kus j = 0,
siis x
0
D
i
(x
0
) = D
i
(x
j
) ja kvantor on elimineeritud.
3f3. Kui konjunktsioonis on ainult hesuunalisi vrratusi, s.o.
D
i
(x
0
) on kujul
&
j
(x
j
< x
0
) vi kujul &
j
(x
0
< x
j
),
siis on x
0
D
i
(x
0
) valemi (5) phjal tene.
3f4. Kui konjunktsioonis leidub nii liikmeid kujul x
j
< x
0
kui
ka kujul x
0
< x
k
, siis vidab x
0
D
i
(x
0
), et x
0
saab paigutada ki-
gist elementidest x
j
paremale ja kigist elementidest x
k
vasakule.
Tiheduse (4) tttu on see vimalik parajasti siis, kui on tene
valem
&
{ j,k | leidub liige xj < x0 ja leidub liige x0 < xk }
(x
j
< x
k
),
s.t. vime x
0
D
i
(x
0
) asendada selle valemiga, kus pole kvantorit
ega x
0
.
Sellega on lemma testatud ja saame seestpoolt vljapoole
elimineerida kik kvantorid.
Jreldus 4.15. (teoreemist ja testusest). Ratsionaalarvude jrjes-
tuse teooria on elementaarselt ekvivalentne reaalarvude jrjestuse
teooriaga ja samuti lahenduv.
Testuses me ei kasutanud mingeid muid reaalarvude jrjestuse
struktuuri omadusi kui ainult valemite (1)(5) tesust. Aga need
valemid kehtivad ka ratsionaalarvude jrjestuse kohta ja seega
126 4. Predikaatarvutus
arvutab konstrueeritud algoritm samuti valemi tevrtuse rat-
sionaalarvudel. Muuhulgas oleme saanud nite mitteisomorfsetest
elementaarstruktuuridest. kshest vastavust nende struktuuride
vahel ei saa olla sel phjusel, et ratsionaalarvude hulk on loenduv,
aga reaalarvude hulk kontiinumi vimsusega.
Jreldus 4.16. Valemid (1)(5) kujutavad endast tielikku aksio-
maatikat, sest nende kehtimisest jreldub antud signatuuri iga
valemi tevrtus.
4.11. lesanded
1. Nidake arutluste kehtivust:
(a) x (Fx & Gx)
Fa
Ga
(b) x (Px & Qx)
x (Px & Rx)
x (Rx & Qx)
(c) x (Px Qx)
Pa
Ra
x (Rx & Qx)
2. (C. H. Papadimitriou) Olgu meil kasutada binaarne predikaat
(p, t) (p-d saab narritada ajal t). Abraham Lincoln on
telnud
You can fool some people all of the time,
and all of the people some of the time, but
you cannot fool all of the people all of the
time.
(Te saate alati narritada mnda inimest ja mnikord kiki ini-
mesi, kuid te ei saa alati narritada kiki inimesi.)
4.11. lesanded 127
(a) Formaliseerige Lincolni tluse pessimistlik variant (leidub
inimene, keda saab alati narritada) ja optimistlik variant
(sellist inimest ei leidu, kuid alati on olemas inimene,
keda saab narritada).
(b) Testage, et ks nendest variantidest jreldub teisest.
3. Formaliseerige koolimatemaatika vited. (Allikad: III, IV ja V
klassi pikud, 19871990.)
(a) *Summa ei muutu, kui muudame liidetavate jrjekorda.
(b) *Kui summast lahutame he liidetava, siis saame teise lii-
detava.
(c) Korrutis ei muutu, kui muudame tegurite jrjekorda.
(d) *Kui ks tegur on vrdne 1-ga, siis korrutis on vrdne
teise teguriga.
(e) Kui ks tegur on vrdne nulliga, siis korrutis on vrdne
nulliga.
(f) Paarisarvule jrgneb ja eelneb paaritu arv.
(g) Summa korrutamiseks arvuga vime korrutada liidetavad
eraldi ja korrutised liita.
(h) Selle asemel, et lahutada arvust summa, vin enne lahu-
tada he liidetava ja siis teise liidetava.
(i) Kui arvu ristsumma jagub 3-ga, siis arv jagub 3-ga, vasta-
sel juhul mitte.
4. Formaliseerige koolimatemaatika vited. (Allikas: V klassi pik.
Nurk, Telgmaa, 1990.)
(a) Lbi iga kahe punkti vib tmmata sirge ja sealjuures ai-
nult ks kord.
(b) Lbi antud punkti saab antud sirgele joonistada ainult he
ristsirge.
(c) Kui kaks sirget tasandil on risti he ja sama sirgega, siis
need kaks sirget on paralleelsed.
128 4. Predikaatarvutus
(d) (Paralleelide aksioom.) Vljaspool sirget asetsevat punkti
lbib ainult ks sirge, mis on paralleelne antud sirgega.
5. Vljendada predikaadid signatuuris = 0, 1; +, ; = eeldusel,
et universumiks on reaalarvude hulk .
(a) x 0;
(b) x y;
(c) x < y;
(d) x .
6. Vljendada predikaadid signatuuris = ; ; =, eeldusel, et
universumiks on naturaalarvude hulga kigi osahulkade hulk
( ).
(a) X = ;
(b) X = ;
(c) X Y = Z;
(d) X Y = Z;
(e) X (Y Z) = V;
(f) X Y = ;
(g) X = Y;
(h) X \ Y = Z;
(i) |X| = 1;
(j) |X| = 2.
7. Vljendada predikaadid signatuuris = ; , ; = eeldusel,
et universumiks on naturaalarvude hulga kigi osahulkade hulk
( ).
(a) X = ;
(b) X = ;
(c) X Y;
(d) X = Y;
4.11. lesanded 129
(e) X \ Y = Z.
8. Olgu kseeritud hulk M ja olgu A, B, C M, D M M.
Thistagu A(x), B(x) ja C(x) vastavalt x A, x B ja x C,
D(x, y) aga (x, y) D. Signatuur koosnegu predikaatsmboli-
test A, B, C, D ja vrdusmrgist. Vljendada:
(a) A = B;
(b) A B;
(c) A B;
(d) A B = C;
(e) A B = C;
(f) A \ B = C;
(g) A = B;
(h) A = ;
(i) A = M;
(j) A B = ;
(k) |A| = 1;
(l) |A| = 2;
(m) AB D;
(n) D AB;
(o) AB = D.
9. Selgitage, kuidas saab predikaatarvutusse tuua kvantorid vhe,
palju ja enamus.
5. Klassikalised
tuletusreeglid
Siin on selge, et kuri on karjas, kui pildis oleva
ebareegliprasuse leidmine phineb automatiseerunud
seosteahela veatul kivitumisel.
Andreas Walden
Bentham oskas asju koost lahti vtta, ta ei usku-
nud ldistusi, igal juhul mitte enne, kui nad tema
meetodi abil testust polnud leidnud. Tema eesmrk,
konstrueerida selline keel, mis oleks oma lihtsuses ja
lbipaistvuses arusaadav kigile, ji kll saavutamata,
kuid selle poole pdmine tundub tnapeval lausa
kangelaslik.
Toomas Raudam
Arutluste kehtivuse kontrollimiseks on palju vimalusi. Eelne-
valt ngime, kuidas seda saab teha kigi variantide lbivaatamise
teel. Lausearvutuse korral on selleks sstemaatiline meetod
tevrtustabelid. Nende koostamine on aga vga tmahukas.
Kui arutlus sisaldab 3 lausemuutujat, siis tuleb tevrtustabe-
lis tita 8 rida. n muutuja korral on aga vaja tita 2
n
rida.
Mnikord aitab hdast vlja kiirkontrolli meetod, kuid arutluste
kehtivuse kontrollimine on halvimal juhul ikka eksponentsiaalse
ajakeerukusega. Me tleme sellisel juhul, et lausearvutuse lau-
sete loogilise tesuse kontrollimise probleem lahendub raskesti.
5.1. Tuletusreeglid 131
Alonzo Church (19031995) testas, et predikaatarvutuse kor-
ral on analoogiline probleem mitte raskesti lahenduv, vaid ldse
mittelahenduv. Selleprast kasutatakse arutluste kehtivuse kont-
rollimiseks meetodeid, mille abil on lootust lahendada probleem
reaalse ajaga. Kasutatakse mitmesuguseid formaalseid tuletusss-
teeme, millest efektiivsemaks peetakse tesuspuude meetodit ja
resolutsioonimeetodit. Paljud eelistavad aga nende asemel mne
loomuliku tuletuse ssteemi kasutamist.
5.1. Tuletusreeglid
Suur osa tuletusreeglitest on prit Aristotelese loogikast. Seep-
rast kasutatakse nende reeglite thistamiseks sageli ladinakeelseid
nimetusi.
Vaatleme niteks lausearvutuses arutlust
Kui Anul on hea tuju, siis on Peeter nnelik.
Kui Peeter on nnelik, siis Anu ja Peeter
mngivad kabet vi joovad teed.
Anul on hea tuju, kuid Anu ja Peeter ei mngi
kabet.
Anu ja Peeter joovad koos teed.
Selle arutluse saab formaalselt kirja panna kujul
1. A P
2. P (K T )
3. A& K
T
kus lausearvutuse valemid on nummerdatud ja lausemuutujad on
thistatud vastavate snade esithtedega. Selle arutluse korral on
lihtne nha, miks ta kehtib:
132 5. Klassikalised tuletusreeglid
4. A (3. lause phjal) Anul on hea tuju.
5. P (1. ja 4. phjal) Peeter on nnelik.
6. K T (2,5) Anu ja Peeter mn-
givad kabet vi joo-
vad teed.
7. K (3) Anu ja Peeter ei
mngi kabet.
8. T (6,7) Anu ja Peeter joovad
koos teed.
Arutluse kehtivuse kontrollimiseks oleks tulnud tita 16-realine
tevrtustabel. Praegu piisas aga 8-realisest tuletusest. Me kasu-
tasime selles nites mitut tuletusreeglit. Neljanda ja seitsmenda
lause saamiseks kasutasime lihtsustamisreeglit
p & q
p
vi
p & q
q
(Simp).
Viienda ja kuuenda lause saamiseks kasutasime reeglit modus
ponens:
p q, p
q
(MP).
Kaheksanda valemi saime aga disjunktiivse sllogismi reegli abil:
p q, p
q
vi
p q, q
p
(DS).
Siit selguvad tuletustele iseloomulikud jooned. Tuletus on
lausete jada, kus iga lause on kas eeldus vi saadud temale jadas
eelnevatest lausetest mingi tuletusreegli abil. Kui eelduste hulgast
saab tuletada jrelduse p, siis pannakse see lhidalt kirja kujul
p.
Nimetame ka tuletusreeglite thtsamad omadused:
Korrektsus. Iga tuletusreegel on kehtiv arutlusvorm, s.t. ta
silitab oma argumentide tesust.
5.1. Tuletusreeglid 133
Kompaktsus. Reegleid ei tohi olla liiga palju. Neid peab
olema lihtne meelde jtta.
Tuletusssteemi tielikkus. Reeglite abil peab saama tu-
letada kik kehtivad (lausearvutuse vi predikaatarvutuse)
arutlused.
Tuletusssteemi nimetatakse vahel ka formaalseks aksiomaa-
tiliseks ssteemiks vi lihtsalt arvutuseks. Me oleme siiamaani
nimetanud lauseloogikat ja predikaatloogikat samuti arvutusteks,
silmas pidades nende ssteemide algebralisi omadusi, mis vimal-
davad tunnistada teatavad laused omavahel ekvivalentseteks ning
sooritada lausete samasusteisendusi ja asendusi.
Esimene teadaolev tuletusssteem on prit Eukleideselt
(u. 365300 e.m.a.), kes esitas aksiomaatilise ssteemi elementaar-
geomeetria jaoks. Saksa matemaatik David Hilbert (18621943)
pdis aga sajandivahetusel formaliseerida kogu kaasaegset ma-
temaatikat alates hulgateooriast ja algebrast ning lpetades mate-
maatilise analsiga. Kurt Gdel (19061978) nitas 1931. aastal,
et naturaalarvulist aritmeetikat ei saa esitada formaalse aksiomaa-
tilise ssteemina. Ta testas, et iga piisavalt vimas matemaatiline
teooria on mittetielik, s.t. selles teoorias leidub tene valem, mis
ei ole formaalses ssteemis tuletatav.
Ka Aristotelese sllogismid sobivad sellesse skeemi. Nad on
lihtsalt kahe eeldusega kehtivad tuletused. Sllogismi moodused
on meie mistes tuletusreeglid. Tuntumad neist on modus ponens
ja disjunktiivse sllogismi reegel.
Tabelites 5.1 ja 5.2 on loetletud kasutatavamad lausearvutuse
tuletus- ja asendusreeglid.
Asendusreegleid, mis esitatakse vrduste kujul, vib samuti
vaadelda kui teatud tpi tuletusreegleid. Erinevalt tavalistest tule-
tusreeglitest, mis toimivad ainult hes suunas: lemisest valemist
saab tuletada alumise valemi, saab asendusreegleid rakendada nii
vasakpoolsest valemist parempoolse valemi tuletamiseks kui ka
vastupidi. Asendusreeglite korral on vrduse kahel pool olevad
valemid loogiliselt ekvivalentsed. Seeprast vib neid reegleid
kasutada ka valemite osade asendamiseks.
134 5. Klassikalised tuletusreeglid
Reegel Lhend Reegli nimi
p & q
p
,
p & q
q
Simp Lihtsustamisreegel
p, q
p & q
Conj Konjunktsioonireegel
p q, p
q
MP Modus ponens
p q, q
p
MT Modus tollens
p q, p
q
,
p q, q
p
DS Disjunktiivne sllogism
p q, q r
p r
HS Hpoteetiline sllogism
p
p q
,
q
p q
Add Lisamisreegel
p q, r s, p r
q s
CD Konstruktiivne dilemma
Tabel 5.1. Levinumad lausearvutuse tuletusreeglid.
Teoreem 5.1 (asendusteoreem). Kui valemid p ja q on loogiliselt
ekvivalentsed ja valem r on saadud valemist s mnede valemi p
esinemiste asendamise teel valemiga q, siis on valemid r ja s
loogiliselt ekvivalentsed.
5.1. Tuletusreeglid 135
Reegel Lhend Reegli nimi
p & q = q & p Comm Kommutatiivsus
p q = q p Comm
p & (q & r) = (p & q) & r Assoc Assotsiatiivsus
p (q r) = (p q) r Assoc
p & (q r) = (p & q) (p & r) Dist Distributiivsus
p (q & r) = (p q) & (p r) Dist
p = p & p Red Liiasusreeglid
p = p p Red
p = p DN Kahekordse eituse reegel
(p & q) = p q DeM De Morgani seadused
(p q) = p & q DeM
p q = p q CE Implikatsioonireegel
p q = q p Contra mberpramisreegel
(p & q) r = p (q r) Exp Vljaviimisreegel
p q = (p q) & (q p) Bic Ekvivalentsireeglid
p q = p & q p & q Bic
Tabel 5.2. Tuntumad lausearvutuse asendusreeglid.
Testus. Valemite p ja q loogiline ekvivalentsus thendab, et
nendel valemitel on kigis vimalikes situatsioonides sama te-
vrtus. Jrelikult ei saa ka valemid r ja s loogiliselt erineda.
136 5. Klassikalised tuletusreeglid
Esitame nd mned tuletuste nited. Vaatleme arutlust
Kui ma teen tervisejooksu, siis ma ei j
haigeks.
Ma hakkan haigeks jma.
Ma ei tee tervisejooksu.
Selle jrelduse tuletamiseks toome sisse kahekordse eituse ja
rakendame seejrel reeglit modus tollens:
1. T H eeldus Kui ma teen tervisejooksu,
siis ma ei j haigeks.
2. H eeldus Ma hakkan haigeks jma.
3. H 2 DN Pole ige, et ma ei j hai-
geks.
4. T 1,3 MT Ma ei tee tervisejooksu.
Toome nite asendusreeglite erisugusest kasutamisest. Selles
tuletuses kasutatakse kommutatiivsust kui tuletusreeglit:
1. (A B) C
2. B A
3. A B 2 Comm
4. C 1,3 MP
Jrgmise tuletuse kolmandas reas rakendatakse aga asendusteo-
reemi:
1. (A B) C
2. B A
3. (B A) C 1 Comm
4. C 2,3 MP
Assotsiatiivsusreeglid vimaldavad konjunktsioonide ja dis-
junktsioonide alamvalemeid suvaliselt grupeerida ja mber jrjes-
tada. Seeprast vib paljudel juhtudel sulud ldse ra jtta.
5.1. Tuletusreeglid 137
Teoreem 5.2 (mbertstmisteoreem). Kehtivad jrgmised sama-
vrsused:
p
1
& . . . & p
n
= p
m1
& . . . & p
mn
,
p
1
. . . p
n
= p
m1
. . . p
mn
,
kus m
1
, . . . , m
n
on indeksite jada 1, . . . , n suvaline mberjrjestus
(ehk permutatsioon) ja vrduse mlemale poole jvates valemites
vib kasutada suvalist (lubatud) sulgude paigutust.
Niteks jrgmises tuletuses on kik esimesest valemist tuleta-
tud valemid esialgse valemiga ekvivalentsed:
1. (A B) (C D)
2. A (B (C D)) 1 Assoc
3. (B (C D)) A 2 Comm
4. ((B C) D) A 3 Assoc
5. (B C) (D A) 4 Assoc
6. (C B) (D A) 5 Comm
Asendusreeglitega saab viia kik lausearvutuse valemid heselt
mratud standardkujule: kas tielikule disjunktiivsele normaalku-
jule vi tielikule konjunktiivsele normaalkujule.
Definitsioon 5.3. Literaalideks nimetatakse atomaarseid valemeid
ja nende eitusi. Elementaardisjunktsiooniks nimetatakse literaalide
disjunktsiooni ning elementaarkonjunktsiooniks literaalide kon-
junktsiooni. Valem on disjunktiivsel normaalkujul (DNK), kui ta
on elementaarkonjunktsioonide disjunktsioon:
m

i=1
l
i1
& . . . & l
im
i
,
ning valem on konjunktiivsel normaalkujul (KNK), kui ta on
elementaardisjunktsioonide konjunktsioon:
m
&
i=1
l
i1
. . . l
im
i
.
138 5. Klassikalised tuletusreeglid
Lausemuutujaid X
1
, . . . , X
n
sisaldav valem on tielikul dis-
junktiivsel normaalkujul, kui ta on disjunktiivsel normaalkujul,
mille iga elementaarkonjunktsioon sisaldab kiki lausemuutujaid
X
1
, . . . , X
n
, s.t. iga elementaarkonjunktsioon on kujul
X
1
1
& . . . & X
n
n
,
kus
1
, . . . ,
n
{t, v} ja
X
t
def
= X ja X
v
def
= X,
ning valem on tielikul konjunktiivsel normaalkujul, kui ta on
konjunktiivsel normaalkujul, mille iga elementaardisjunktsioon on
kujul
X
1
1
. . . X
n
n
.
Niteks valem A& (B C) on konjunktiivsel normaalkujul,
ent ta ei ole tielikul konjunktiivsel normaalkujul ega disjunk-
tiivsel normaalkujul. Valem A & B on aga nii konjunktiivsel
normaalkujul kui ka tielikul disjunktiivsel normaalkujul.
Teoreem 5.4. Iga lausearvutuse valemi saab viia disjunktiivsele
(konjunktiivsele) normaalkujule, s.t. valemi saab teisendada te-
maga ekvivalentseks disjunktiivsel (konjunktiivsel) normaalkujul
olevaks valemiks.
Testus. Valemite normaalkujule viimiseks sobib algoritm
1. Kaotame implikatsiooni- ja ekvivalentsireeglite abil valemist
implikatsioonid ja ekvivalentsid.
2. Viime eitused De Morgani seaduste ja kahekordse eituse
reegli abil vahetult lausemuutujate ette.
3. Rakendame distributiivsusreegleid, kuni kik konjunktsioo-
nid on disjunktsioonide all (disjunktsioonid on konjunkt-
sioonide all).
5.1. Tuletusreeglid 139
Niteks valem (X Y) Z teisendatakse disjunktiivsele
normaalkujule jrgmiselt:
(X Y) Z = (X & Y X & Y) Z
= (X &Y X & Y) Z
= ((X & Y) & (X & Y)) Z
= ((X Y) & (X Y)) Z
= ((X Y) & (X Y)) Z
= ((X Y) & X
(X Y) & Y) Z
= X & X Y & X X & Y
Y & Y Z.
Disjunktiivsest (konjunktiivsest) normaalkujust on mistlik vlja
jtta loogiliselt vrad elementaarkonjunktsioonid (loogiliselt te-
sed elementaardisjunktsioonid), mis sisaldavad mingit aatomit ja
selle eitust:
. . . = Y & X X & Y Z.
Samuti kustutatakse korduvad elementaarkonjunktsioonid (elemen-
taardisjunktsioonid).
Kui eesmrgiks on tieliku DNK leidmine, siis tuleb mitte-
tielikke elementaarkonjunktsioone tiendada neis puuduvate lau-
semuutujatega. Selleks korrutame igat elementaarkonjunktsiooni
iga temas puuduva muutuja T korral loogiliselt tese valemiga
T T ja kasutame distributiivsusreeglit. Tielike normaalkujude
elementaarkonjunktsioonid ja -disjunktsioonid jrjestatakse tihti ka
thestikuliselt:
. . . = Y & X & (Z Z) X & Y & (Z Z)
Z & (X X) & (Y Y)
= Y & X & Z Y & X & Z X & Y & Z
X & Y & Z Z & X & Y Z &X & Y
Z & X & Y Z & X & Y
= X & Y & Z X & Y & Z X & Y & Z
140 5. Klassikalised tuletusreeglid
X & Y & Z X & Y & Z X & Y & Z.
Valemite tielikud normaalkujud on liikmete jrjekorra tpsu-
sega heselt mratud.
lesanded
1. *Teisendage valem (X Y) Z tielikule konjunktiivsele nor-
maalkujule.
2. Testage arutluste kehtivus:
(a) C A
A S
S D
D
C
(b) D (R C)
R
C
D
5.2. Konditsionaalne testus
Kui meil on vaja tuletada implikatsiooni sisaldav lause, siis
on heks vimaluseks kasutada konditsionaalse testuse reeglit.
Vtame implikatsiooni vasakul pool oleva valemi hpoteesiks
ja pame sellest lhtudes testada implikatsiooni paremal pool
olevat valemit. Konditsionaalse e. tingimusliku testuse reegli (ka
implikatsiooni sissetoomisreegli) CP saab kirja panna kujul
, p q
p q
(CP),
kus thistab tuletuse eelduste hulka.
5.2. Konditsionaalne testus 141
n. p hpotees
. . .
m. q
m+1. p q nm CP
Joonis 5.1. Konditsionaalse testuse skeem.
Konditsionaalse testuse skeem on antud joonisel 5.1. Tu-
letuse osa alates n-ndast valemist kuni m-nda valemini sltub
hpoteesist p ja on seeprast mrgitud vasakul pstjoonega. Seda
osa tuletusest nimetatakse alamtuletuseks. Alamtuletuse lppedes
kaotavad tema valemid kehtivuse ning neid ei tohi enam tuletuses
kasutada. Alamtuletuse hpotees kaob samuti tuletuse eelduste
hulgast ra. Alamtuletuses endas vib aga kasutada kiki sel-
lest vljapoole jvaid tuletuse valemeid. Kasutades alamtuletuse
valemeid vljastpoolt saab niteks tuletada vastuolulise jrelduse:
1. A eeldus
2. A hpotees
3. A& A 1,2 Conj
Konditsionaalse testuse reegli kasutamist igustab fakt, et
valemid
(l
1
& l
2
& . . . & l
n
) (p q)
ja (l
1
& l
2
& . . . & l
n
& p) q
on loogiliselt ekvivalentsed.
Toome nite konditsionaalse testuse reegli rakendamise kohta.
Vaatleme arutlust
142 5. Klassikalised tuletusreeglid
Kui ostan laserplaadimngija, siis pean oma
kulutusi krpima vi jn vlgadesse.
Kui ostan laserplaate, siis ma ei krbi oma
kulutusi.
Kui ostan CD-mngija, siis ostan plaate.
Kui ostan laserplaadimngija, siis jn vlga-
desse.
See arutlus testatakse konditsionaalse testuse reegliga jrgmiselt:
1. L (K V) eeldus
2. P K eeldus
3. L P eeldus
4. L hpotees
5. K V 1,4 MP
6. P 3,4 MP
7. K 2,6 MP
8. V 5,7 DS
9. L V 48 CP
Konditsionaalse tuletuse saab tihti asendada tuletusega, kus
seda reeglit ei kasutata. Niteks saab vaadeldava arutluse testada
ka ilma konditsionaalse testuse reeglita:
1. L (K V) eeldus
2. P K eeldus
3. L P eeldus
5.2. Konditsionaalne testus 143
4. L K 2,3 HS
5. L (K V) 1 DN
6. L (K V) 5 CE
7. (L & K) V 6 Exp
8. (K & L) V 7 Comm
9. K (L V) 8 Exp
10. L (L V) 4,9 HS
11. (L & L) V 10 Exp
12. L V 11 Red
Konditsionaalse testuse reeglit on vaja tuletusssteemi tie-
likkuse jaoks, kuna muidu ei saaks mnesid loogiliselt teseid
valemeid formaalselt tuletada. Ilma konditsionaalse testuse reeg-
lita ei saa nidata, et
A A.
Tepoolest, peale konditsionaalse testuse reegli ei ole meie
tuletusssteemis htegi teist reeglit, mille abil seda valemit saaks
tuletada. Reegli CP abil on aga asi lihtne:
1. A hpotees
2. A A 1 CP
Selliseid valemeid, mida saab tuletada ilma htegi eeldust ka-
sutamata, nimetatakse teoreemideks. Jrelikult on valem A A
(lausearvutuse ja predikaatarvutuse) teoreem.
Pikemate arutluskikude korral vib alamtestusi olla mitu.
Siis vib ks alamtuletus olla teise alamtuletuse sees:
144 5. Klassikalised tuletusreeglid
1. A hpotees
2. B hpotees
3. A 1 DN
4. A 3 DN
5. B A 24 CP
6. A (B A) 15 CP
Kahekordse eituse sissetoomine ja vljaviimine on selles tuletuses
vajalikud, sest meil puudub reegel, mis vimaldab valemit A
dubleerida.
lesanded
1. Testage, et
(a) p q = p (p & q);
(b) p q = p q.
5.3. Kaudne testus
Kaudse testamise korral eeldatakse, et arutluse eeldused on te-
sed ja jreldus on vr (s.t. jrelduse eitus on tene) ning saadakse
sellest vastuolu. Seega peab jreldus olema tene. Sellist testus-
meetodit nimetatakse ka vastuviteliseks testamiseks (reductio ad
absurdum). Kaudne testus on matemaatikas levinud, sest seda
on sageli lihtsam teha kui otsest testust. Vtame niteks vite
Thihulk sisaldub igas hulgas H: H. Selle vite vastuvi-
telisel testamisel eeldatakse, et thihulgas leidub element, mis
ei kuulu hulka H. See on aga vastuolus thihulga denitsiooniga,
mis tleb, et temas ei ole htegi elementi. Jrelikult on vide
H tene.
Kaudse testuse skeem on toodud joonisel 5.2. Testuse
n-indas reas tuuakse sisse hpotees p ning alustatakse alam-
testust. Kui m-ndas reas saadakse vastuolu q & q, siis vib
(m + 1)-s reas tuletada kaudse testuse reegliga IP hpoteesi p
5.3. Kaudne testus 145
n. p hpotees
. . .
m. q & q
m+1. p nm IP
Joonis 5.2. Kaudse testuse skeem.
ilma eituseta. Vastuoluks sobib suvalise valemi ja selle eituse kon-
junktsioon. Mnes tuletusssteemis tuuakse vastuolu thistamiseks
sisse erismbol (niteks ).
Kaudse testuse reegli saab lejnud reeglitega asendada.
Niteks joonisel 5.2 toodud kaudsest tuletusest saab teha tavalise
tuletuse:
n. p hpotees
. . .
m. q & q
m+1. q Simp
q Simp
q p Add
p DS
p p CP
p p CE
p p DN
p Red
Jrelikult ei ole kaudse testuse reeglit tuletusssteemi tielikkuse
jaoks tarvis.
Toome nd nite kaudse testuse reeglit sisaldavast tuletusest.
Arutlus
146 5. Klassikalised tuletusreeglid
Kui riigikogu ratitseerib seaduseelnu ja pre-
sident selle kinnitab, siis see muutub seadu-
seks.
Riigikogu ratifitseeris seaduseelnu.
See ei muutunud seaduseks.
President ei kinnitanud seaduseelnud
testatakse kaudse testuse reegli abil jrgmiselt:
1. (R & P) S
2. R
3. S
4. P hpotees
5. P 4 DN
6. R &P 2,5 Conj
7. S 1,6 MP
8. S & S 3,7 Conj
9. P 48 IP
5.4. Predikaatarvutuse tuletusreeglid
Predikaatarvutuses kehtivad kik lausearvutuse tuletusreeglid, kuid
siin on ka omad spetsiilised reeglid. Kvantorite sissetoomiseks
ja eemaldamiseks tuleb valemid viia kujule, kus kvantorid asu-
vad valemi vasakus servas. Me tleme, et sellised valemid on
prekskujul e. preeneks-normaalkujul.
Kvantorite ettetoomisreeglid on koondatud tabelisse 5.3. Kvan-
torite eitamisreeglid vimaldavad viia eitusesmbolid kvantorialus-
tesse avaldistesse. Kvantorite distributiivsusreeglitega saab kvan-
torite alla viia konjunktsioonid ja disjunktsioonid. Kaks esimest
kvantorite distributiivsusreeglit on asendusreeglid, sest nende abil
5.4. Predikaatarvutuse tuletusreeglid 147
saab teha mlemasuunalisi tuletusi, kaks viimast on aga tuletus-
reeglid, sest nendega saab tuletada ainult vasakpoolsest valemist
parempoolse valemi, vastupidine tuletus ei kehti. Niteks ei saa
kvantorite distributiivsusreeglit
x (p(x) & q(x))
x p(x) &x q(x)
(QD)
kasutada teistpidi: eksistentsikvantori valemi ette toomiseks. V-
tame niteks interpretatsiooni, kus p(x) thendab, et inimene on
naissoost ja q(x), et inimene on meessoost. Siis on tuletusreegli
alumine lause tene, sest leidub nii naisi kui ka mehi, kuid
lemine lause on vr, sest kski inimene ei ole korraga nais- ja
meessoost.
Kvantorite jrjekorra muutmiseks kasutatakse kvantorite jr-
jestusreegleid. Kvantorite liigutamisreeglites eeldatakse, et x ei
esine valemites p ja q vabalt (x vib aga esineda vabalt valemites
p(x) ja q(x)).
Kui kvantoreid ei saa hegi reegliga valemi ette tuua, siis tuleb
mni kvantitseeritud muutuja asendada selles valemis mitteesi-
neva muutujaga. Kvantitseeritud muutuja asendamine on lubatud,
kui me asendame muutuja korraga nii kvantoris kui ka kvantori-
aluses avaldises. Muutujate asendamisega saab viia prekskujule
ka eespool toodud distributiivsusreegli alumise valemi:
x p(x) &x q(x) = x p(x) &y q(y)
= xy (p(x) & q(y)).
Muutujate asendamisel on oluline, et asendav muutuja ei
esineks valemis, sest muidu saaksime mittekehtiva tuletuse. Niteks
valemist
xy Sxy
ei tohi asenduse teel moodustada valemit
xx Sxx (= x Sxx),
sest esialgse valemi tesusest ei jreldu sugugi, et valem Sxy on
tene x ja y vrdsetel vrtustel. See vimaldab meil konstrueerida
148 5. Klassikalised tuletusreeglid
Reegel Lhend Reegli nimi
x p(x) = x p(x) QN Kvantorite
eitamisreeglid
x p(x) = x p(x) QN
x p(x) = x p(x) QN
x p(x) = x p(x) QN
x (p(x) & q(x)) = QD Kvantorite
distributiivsusreeglid
x p(x) &x q(x)
x (p(x) q(x)) = QD
x p(x) x q(x)
x p(x) x q(x) QD
x (p(x) q(x))
x (p(x) & q(x)) QD
x p(x) &x q(x)
xy p(x, y) = yx p(x, y) QI Kvantorite
jrjestusreeglid
xy p(x, y) = yx p(x, y) QI
xy p(x, y) yx p(x, y) QI
p x q(x) = x (p q(x)) QM Kvantorite
liigutamisreeglid (p ja
q ei sisalda muutujat x
vabalt)
p x q(x) = x (p q(x)) QM
x p(x) q = x (p(x) q) QM
x p(x) q = x (p(x) q) QM
p &x q(x) = x (p & q(x)) QM
p &x q(x) = x (p & q(x)) QM
p x q(x) = x (p q(x)) QM
p x q(x) = x (p q(x)) QM
Tabel 5.3. Kvantorite ettetoomisreeglid.
5.4. Predikaatarvutuse tuletusreeglid 149
interpretatsiooni, kus esimene valem on tene, aga teine valem
vr. Niteks interpreteerides predikaati Sxy kui seost x = y.
Teoreem 5.5. Iga predikaatarvutuse valemi saab viia preksku-
jule, s.t. valemi saab teisendada temaga ekvivalentseks prekskujul
olevaks valemiks.
Testus. Teeme induktsiooni predikaatarvutuse valemi denit-
siooni jrgi:
1. Atomaarsed valemid ongi prefikskujul, sest nad ei sisalda
htegi kvantorit.
2. Valemi p saab viia prekskujule, sest me saame indukt-
siooni phjal tuua kvantorid valemi p algusesse ja tstame
nad seejrel kvantorite eitamisreeglite abil eituse ette.
3. Valemid (p & q), (p q), (p q) ja (p q) saab viia
prekskujule, sest induktsiooni phjal saab tsta kvantorid
valemite p ja q algusesse. Seejrel asendame ekvivalentsid
ning kasutame kvantorite distributiivsus- ja liigutamisreeg-
leid ning kvantitseeritud muutujate asendamist.
4. Valemid v p ja v p saab induktsiooni phjal viia pre-
kskujule, sest kvantorid saab tsta valemi p algusesse.
Toome nd valemite prefikskujule viimise kohta paar nidet.
Valem x Fx y Gy viiakse prefikskujule jrgmiselt:
x Fx y Gy = y (x Fx Gy)
= yx (Fx Gy).
Lause Kellegile meeldivad kik raamatud, mille vib forma-
liseerida valemina
x (Ix &y (Ry Mxy)),
heks vimalikuks prefikskujuks on
xy (Ix & (Ry Mxy)).
150 5. Klassikalised tuletusreeglid
Prefikskujul valemid saab edasi teisendada Skolemi normaal-
kujule. Selleks eemaldatakse valemist kik eksistentsikvantorid ja
asendatakse nendes esinevad muutujad Skolemi funktsioonidega,
mille argumentideks vetakse kik eksistentsikvantorile eelnevates
ldisuskvantorites esinevad muutujad. Kui eksistentsikvantorile ei
eelne htegi ldisuskvantorit, siis nimetatakse Skolemi funktsiooni
Skolemi konstandiks. Eelmise nite lause saab viia Skolemi nor-
maalkujule, asendades inimese, kellele meeldivad kik raamatud,
Skolemi konstandiga c:
y (Ic &(Ry Mcy)).
Lause Igal inimesel on ema formalisatsiooni
xy E(x, y)
saab aga teisendada Skolemi normaalkujule, asendades muutuja y
Skolemi funktsiooniga e(x). Funktsioon e(x) seab igale inimesele
vastavusse tema ema:
x E(x, e(x)).
Skolemi funktsioone kasutatakse teoreemide automaatsel tes-
tamisel.
Me oleme nd valmis selleks, et tutvustada kvantorite
sissetoomis- ja eemaldamisreegleid. Eeldame, et valemid on pre-
kskujul. Idee on selles, et me eemaldame kigepealt kvantorid,
teeme valemiga sobivad teisendused ja asetame seejrel kvantorid
valemi ette tagasi.
Kvantorite sissetoomis- ja eemaldamisreeglid on koondatud
tabelisse 5.4. ldisuskvantori eemaldamisreegel vimaldab ldi-
suskvantoris esineva muutuja x asendada suvalise konstantsm-
boliga c. Seejuures tuleb valemis p asendada korraga kik x
vabad esinemised. Sellise asenduse tulemus mrgitakse les kujul
p {x/c} ja eldakse, et see on valemi p x/c-erijuht. ldisuskvan-
tori sissetoomisreegli
p {x/v}
x p
(UG)
5.4. Predikaatarvutuse tuletusreeglid 151
Reegel Lhend Reegli nimi Tingimus
x p
p {x/c}
UI ldisuskvantori
eemaldamine
c on suvaline
konstant
p {x/v}
x p
UG ldisuskvantori
sissetoomine
v on spetsiaalne
konstantmuutuja
x p
p {x/w}
EI Eksistentsikvantori
eemaldamine
w on uus konstant-
smbol (mis ei tohi
esineda jrelduses)
p {x/c}
x p
EG Eksistentsikvantori
sissetoomine
Tabel 5.4. Kvantorite sissetoomis- ja eemaldamisreeglid.
korral on thtis, et konstant v oleks suvaline. Teda on kasulik
vaadelda kui konstantmuutujat. ldisuskvantori kaotamisel asen-
datakse sellised konstandid, mida me soovime hiljem ldistada,
spetsiaalse konstantmuutujaga v, mis thistab suvalist vaadeldava
universumi objekti. Kuna v on asendamise hetkest peale suva-
line konstant, siis tohib teda hiljem uuesti ldistada. Kui meil
on tuletuses tarvis rohkem kui hte sellist konstantmuutujat, siis
kirjutame smboli v koos alaindeksiga: v
1
, v
2
, . . .
Kasutame kirjeldatud kvantorite eemaldamise ja sissetoomise
meetodit jrgmise arutluse kehtivuse testamiseks:
Kik esmakursuslased on tudengid
Kigil tudengitel on pinguraamat
Kigil esmakursuslastel on pinguraamat
Toome tuletuses sisse konstantmuutuja v ja seome selle lpus
uuesti ldisuskvantoriga:
152 5. Klassikalised tuletusreeglid
1. x (Ex T x) eeldus
2. x (T x

Ox) eeldus
3. Ev T v 1 UI
4. T v

Ov 2 UI
5. Ev

Ov 3,4 HS
6. x (Ex

Ox) 5 UG
Eksistentsikvantori eemaldamisreeglis asendatakse muutuja tu-
letuses varem mitte esineva konstantsmboliga w. Eksistentsikvan-
tori sissetoomisreegel
p {x/c}
x p
(EG)
lubab asendada valemis esineva konstandi c muutujaga x ning
siduda selle eksistentsikvantoriga. Niteks lause Jaan armastab
ennast ehk
Ajj
korral saab eksistentsikvantori sisse tuua kolmel viisil:
x Ajx,
x Axj
vi x Axx,
sest
Ajj = Ajx {x/j} = Axj {x/j} = Axx {x/j}.
Toome nd mned nited eksistentsikvantori eemaldamise ja
sissetoomise kohta. Arutluse
Mni kass lb nurru
Leidub nurrulja
testamiseks toome nurruva kassi thistamiseks sisse konstant-
smboli w ja eemaldame selle tuletuse lpus eksistentsikvantori
sissetoomise reegliga:
5.4. Predikaatarvutuse tuletusreeglid 153
1. x (Kx & Nx) eeldus
2. Kw & Nw 1 EI
3. Nw 2 Simp
4. x Nx 3 EG
Jrgmises nites demonstreeritakse, et juhul, kui me ei kasuta
eksistentsikvantori eemaldamisel unikaalset konstanti, saab teha
vigase jrelduse:
1. x (Kx & Sx) Mni kass on sbralik
2. x (Rx & Sx) Mni koer on sbralik
3. Kw & Sw 1 EI
4. Rw & Sw 2 EI
5. Kw 3 Simp
6. Rw 4 Simp
7. Kw & Rw 5,6 Conj
8. x (Kx & Rx) 7 EG Mni kass on koer
Testame lpuks keerulisema arutluse, kus kasutatakse nii
ldisus- kui ka eksistentsikvantoreid:
Keegi armastab Katit
Igaks, kes kedagi armastab, on nnelik
Kati on inimene
Keegi on nnelik
Arutluse testus on selline:
1. x (Ix & Axk) eeldus
2. x ((Ix &y (Iy &Axy))

Ox) eeldus
3. Ik eeldus
154 5. Klassikalised tuletusreeglid
4. Iw &Awk 1 EI
5. Awk 4 Simp
6. Ik & Awk 3,5 Conj
7. y (Iy & Awy) 6 EG
8. (Iw &y (Iy & Awy))

Ow 2 UI
9. Iw 4 Simp
10. Iw &y (Iy & Awy) 7,9 Conj
11.

Ow 8,10 MP
12. Iw &

Ow 9,11 Conj
13. x (Ix &

Ox) 12 EG
lesanded
1. Tooge nide ldisuskvantori sissetoomisreegli tingimuse vajalikkuse
kohta.
2. Konstrueerige lesande 4.11.1 arutluste tuletused.
5.5. Formaalne ja mitteformaalne testus
Matemaatika on teiste teaduste hulgas erilisel kohal, sest mate-
maatikud pavad oma viteid phjalikult testada. Testuste for-
maalsuse tase varieerub olenevalt testajast ja eeldatavast lugejast
alates formaalsest predikaatarvutuse testusest kuni paarisnalise
selgituseni.
Testame niteks hulkade vrduse omaduse
X = Y X Y ja Y X.
Selleks tuleb eelnevalt defineerida omaduses kasutatavad seosed.
Kaks hulka on vrdsed, kui nad koosnevad htedest ja samadest
elementidest:
X = Y x (x X x Y).
5.5. Formaalne ja mitteformaalne testus 155
Hulk X on hulga Y osahulk siis ja ainult siis, kui iga X element
kuulub hulka Y:
X Y x (x X x Y).
Nende seoste definitsioonid saab predikaatarvutuses esitada kujul
XY (X = Y x (x X x Y)),
XY (X Y x (x X x Y)).
Meil on vaja testada, et
XY (X = Y (X Y & Y X)).
Testus. Esitame vaadeldava omaduse formaalse testuse:
1. XY (X = Y x (x X x Y)) = def.
2. V
1
= V
2
x (x V
1
x V
2
) 1 UI
3. V
1
= V
2
x ((x V
1
x V
2
)& 2 Bic
(x V
2
x V
1
))
4. V
1
= V
2
(x (x V
1
x V
2
)& 3 QD
x (x V
2
x V
1
))
5. V
1
= V
2
(V
1
V
2
& V
2
V
1
) 4 def.
6. XY (X = Y (X Y & Y X)) 5 UG
Testame veel, et osahulga seos on transitiivne:
X Y ja Y Z X Z,
millele vastab predikaatarvutuse valem
XYZ((X Y & Y Z) X Z).
Testus. Formaalne predikaatarvutuse testus koosneb heteist-
kmnest testussammust:
156 5. Klassikalised tuletusreeglid
1. V
1
V
2
& V
2
V
3
hpotees
2. x (x V
1
x V
2
) &x (x V
2
x V
3
) 1 def.
3. x ((x V
1
x V
2
) & (x V
2
x V
3
)) 2 QD
4. (v V
1
v V
2
) & (v V
2
v V
3
) 3 UI
5. v V
1
v V
2
4 Simp
6. v V
2
v V
3
4 Simp
7. v V
1
v V
3
5,6 HS
8. x (x V
1
x V
3
) 7 UG
9. V
1
V
3
8 def.
10. (V
1
V
2
& V
2
V
3
) V
1
V
3
19 CP
11. XYZ((X Y & Y Z) X Z) 10 UG
Matemaatikud ei esita tavaliselt testusi formaalselt. Nad
eeldavad, et kuulajad on loogikareeglitega piisavalt kursis, ning
esitavad testuse skemaatiliselt ehk mitteformaalselt. Testuse
skeemi kehtivust saab igaks ise kontrollida.
Testus (mitteformaalne). Olgu X, Y ja Z suvalised hulgad, nii et
X Y ja Y Z. Olgu x X suvaline element. Siis x Y, sest
X Y, ja x Z, sest Y Z. Seega x X x Z ja kehtib
X Z.
Testus (lhem mitteformaalne). Oletame, et x X. Siis x Y ja
x Z.
Testus (veel lhem). See on ilmne.
lesanded
1. Testage hulgateoorias formaalselt ja mitteformaalselt:
X = Y Y = X.
5.6. Aksioom ja mudel 157
5.6. Aksioom ja mudel
Mitmed matemaatika distsipliinid on les ehitatud aksiomaatiliselt:
Rhma-, ringi-, vre-, vektorruumide ja muude algebraliste
ssteemide teooriad algebras.
Meetriliste, topoloogiliste, Hilberti, Banachi jms. ruumide
teooriad funktsionaalanalsis.
Geomeetria alused.
Zermelo-Fraenkeli hulgateooria jne.
Tavaliselt esitatakse aine aksiomaatilise ksitluse puhul jrg-
mise skeemi kohaselt:
1. Fikseeritakse mingi hulk teoorias uuritavaid objekte, nendel
defineeritud funktsioone ja seoseid ning nende thistamise
smboolika.
2. Teatud hulk viteid peetakse testeks a priori (ilma tes-
tuseta). Neid viteid nimetatakse selle teooria aksioomideks.
3. Teooria arendamine seisneb teoreemide testamises. Teoree-
mid on vited, mida saab testada ainult aksioome kasutades.
Videte mugavamaks snastamiseks vidakse olemasolevate
mistete baasil deneerida uusi.
Filosoofilises mttes vib suhtumine aksioomidesse olla sna
mitmesugune. Eukleides mtles geomeetriast nhtavasti kui tea-
dusest, mis uurib tegelikult eksisteeriva ruumi omadusi. Tema
geomeetria aksioomid pidid kujutama piisavalt lihtsaid viteid,
mille tesus reaalses ruumis on ilmne. Jrgmiste, enamasti ka
keerulisema struktuuriga videte tesus vajas aga juba testamist.
Aksiomaatiliselt esitatud tnapeva loodusteaduste, niteks
elektrodnaamika ja kvantmehhaanika korral, on suhtumine ak-
sioomidesse relatiivne. Aksioomid on siin vited, mis on tesed
158 5. Klassikalised tuletusreeglid
sedavrd, kuivrd nad on vaatluse vi eksperimendiga kontrol-
litud. Teooria aksiomaatiline korrastamine vimaldab selgitada
mingi videte hulga, mida tuleb kontrollida. Aksioomidest tes-
tamise teel tuletatud seadused on aga siis juba garanteeritult
tesed.
Tnapeva matemaatika aksiomaatilised teooriad defineerivad
aksioomidega oma uurimisobjekti. Niteks algebras nimetatakse
rhmadeks neid struktuure, mis rahuldavad rhma aksioome.
Sellises teoorias testatud teoreemide kohta teame aga lihtsalt
seda, et nad on tesed seal, kus kehtivad aksioomid (niteks kigil
rhmadel).
Loogikat huvitab toodud skeemis philiselt kolmas punkt:
teoreemide testamine. Matemaatikaga tegelejal tuleb tihti kokku
puutuda ksimusega, kas antud tekst T on vite V testus vi
mitte.
Iga testus koosneb sammudest. Igal sammul esitatakse jrje-
kordne vide ja seletus, millistest eespool olevatest videtest see
jreldub (ajutiselt vidakse esitada ka oletusi, mida siis nendest
omakorda jreldusi tehes kontrollitakse). Selle, kas uus vide
tepoolest on viidatud videte jreldus, otsustame oma isiklikku
testussammu intuitsiooni kasutades. Iga samm testuses peab
meie jaoks olema ilmne, silmnhtav.
Matemaatika areng on nidanud, et sellisest ksitlusest ei piisa.
Vaikimisi eeldatakse siin, et jreldumise intuitsioon on kigil ini-
mestel hesugune ja vastab objektiivsele tegelikkusele. Neist ka-
hest eeldusest viimase paikapidavuse kohta vaevalt mingit lplikku
otsust teha saab. Aga tegelikult ei kehti ka esimene. Vhemalt
kogu matemaatilise analsi ajalugu nitab, et juba maailma juhti-
vate matemaatikute vahel on olnud vaidlusi. Testusmeetodid, mis
on vastuvetavad htedele matemaatikutele, pole seda teiste jaoks.
Matemaatilises loogikas on selle probleemi uurimiseks tekkinud
formaliseeritud aksiomaatilise teooriaformaliseeritud aksiomaati-
line teooria miste.
Formaliseeritud aksiomaatilises teoorias kseeritakse peale
aksioomide ilmutatud kujul ka tuletusreeglid: lplik hulk testus-
sammu tegemiseks lubatud viise, s.t. vimalusi jreldada videtest
5.6. Aksioom ja mudel 159
p
1
, p
2
, . . . , p
n
vide q. Selleks tuleb kigepealt kseerida keel,
milles viteid kirjutatakse. Jrelikult saame formaliseeritud aksio-
maatiliste teooriate jaoks jrgmise ldskeemi.
1. Fikseeritakse teooria thestik ja valemite keel videte les-
kirjutamiseks.
2. Valemite hulga teatud alamhulga elemente nimetatakse ak-
sioomideks ja arvatakse antud teoorias a priori testeks.
Enamasti nutakse, et aksioomide hulk oleks lahenduv,
s.t. peab leiduma algoritm, mis teeb kindlaks, kas mingi
valem on aksioom vi ei. Tihti on aksioomide hulk lihtsalt
lplik.
3. Fikseeritakse lplik hulk tuletusreegleid kujul
p
1
, p
2
, . . . , p
n
q
,
mille phjal arvatakse valem q vahetult tuletatavaks va-
lemitest p
1
, p
2
, . . . , p
n
. Iga reegel peab olema lahenduv,
s.t. tema jaoks peab leiduma algoritm, mis teeb suvaliste
valemite p
1
, p
2
, . . . , p
n
ja q korral kindlaks, kas valem q
jreldub antud reegliga valemitest p
1
, p
2
, . . . , p
n
vi mitte.
Nide 5.6.
1. Koosnegu teooria thestik smbolitest I ja * ning olgu vale-
miteks need snad, mis sisaldavad parajasti hte smbolit *.
2. Ainsaks aksioomiks olgu valem *.
3. Olgu teoorial ks tuletusreegel
p
IpI
.
On kerge nha, et teoorias on tuletatavad parajasti need vale-
mid, kus vasakul ja paremal on hesugune arv smboleid I.
160 5. Klassikalised tuletusreeglid
Tuletamine igas formaalses teoorias on mng smbolitega.
Selle mngu reegleid nimetatakse teooria sntaksiks. Peale selle
vib teooria valemitele olla antud mingisugune sisu, s.t. vib
olla defineeritud, mida iga valem thendab. Valemite thendust
nimetatakse vastava keele semantikaks.
Niteks esimest jrku keele korral deneerib iga interpre-
tatsioon he semantika selle keele valemitele. Semantikat vib
deneerida ka mingi interpretatsioonide klassi kaudu, seades igale
valemile vastavusse vite, et see valem on tene kigis antud
klassi kuuluvates interpretatsioonides (niteks kigil rhmadel vi
kigil lpmatutel mudelitel). Lausearvutusvalemitele vime seada
vastavusse vite, et see valem on samaselt tene.
Definitsioon 5.7. Teooriat nimetatakse korrektseks semantika
suhtes, kui iga teoorias tuletatav valem on semantikas tene.
Definitsioon 5.8. Teooriat nimetatakse tielikuks semantika
suhtes, kui iga semantikas tene valem on tuletatav teoorias .
Jtkame nidet teooriaga . Thistagu mn valemit, kus smbolit
I on vasakul m korda ja paremal n korda (m, n 0). Defineerime
teooria valemitele kolm semantikat:

1
: m n thendab m = n.

2
: m n thendab m n.

3
: m n thendab m < n.
Eespool toodud tuletatavuse kirjeldusest jreldub, et teooria on kor-
rektne ja tielik semantika
1
suhtes. Semantika
2
suhtes on ta kor-
rektne, aga mitte tielik, sest m < n korral ei saa valemit m n tule-
tada. Tielikkuse saavutamiseks viksime lisada teise tuletusreegli
p
pI
.
Semantika
3
suhtes ei ole teooria ei korrektne ega tielik. Reegli
lisamisel saadud teooria on kll tielik, aga ei ole korrektne, sest tule-
tatavad on ka valemid m n, kus m = n.
5.6. Aksioom ja mudel 161
lesanded
1. Konstrueerige korrektne teooria semantika
3
jaoks.
Paljudel juhtudel on alguses olemas teooria sisuline pool,
s.t. uuritavad objektid, mille kohta mingi hulk fakte on juba
teada. Teooria arendamiseks vi korrastamiseks valitakse vale-
mite keel, mis vimaldab thistada valdkonnas esinevaid philisi
konstante ja funktsioone ning vljendada teoorias kasutatavaid
philisi predikaate. Selle keele semantika on juba algusest peale
olemas. Aksioomid ja reeglid proovitakse valida nii, et formaalne
aksiomaatiline teooria tuleks korrektne ja tielik, s.t. tuletatavaks
osutuksid parajasti need valemid, mis on semantikas tesed. Ma-
temaatilise loogika uurimused on nidanud, et paljudel thtsatel
juhtudel ei ole see vimalik (niteks naturaalarvude aritmeetika
korral). On selge, et mittekorrektne formalisatsioon, kus saaks
testada ka vri valemeid, ei ole ldse vastuvetav. Seega jb
le rahulduda paratamatusega, et mnda test valemit ei saa
formaalses teoorias tuletada, ja pda jtta mittetuletatavad ted
teooria remaadele.
Formaalsete aksiomaatiliste teooriate aluseks vetakse tavali-
selt kas lausearvutuse vi predikaatarvutuse aksiomaatiline teooria,
millele lisatakse vaadeldava teooria aksioomid. Seeprast on for-
maalsetel aksiomaatilistel teooriatel ldjuhul samad tuletusreeglid
ning nad erinevad ksteisest ainult aksioomide poolest.
Olgu mingi signatuur ja T suvaline valemite hulk signa-
tuuris . Me vime vaadelda hulka T kuuluvaid valemeid kui
aksioome.
Signatuuri interpretatsiooni M nimetame aksioomide
hulga T mudeliks, kui iga valem hulgast T on interpretatsioonis
M tene.
Niteks kui = e; ; = ja hulk T koosneb viiest rhmateoo-
ria aksioomist
G1. xyz [(x y) z = x (y z)],
G2. x [x e = x],
G3. x [e x = x],
G4. xu[x u = e],
162 5. Klassikalised tuletusreeglid
G5. xu[u x = e],
siis hulga T mudeliteks on parajasti kik rhmad. Kui lisada veel
kuues aksioom
G6. xy [x y = y x],
siis on mudeliteks parajasti kik kommutatiivsed (Abeli) rhmad.
Mudeli denitsiooni jrgi vib aksioomide hulgaks olla su-
valine valemite hulk. Vga paljudel juhtudel tegeldakse lplike
aksioomide hulkadega. Niteks kik klassikalised algebralised ss-
teemid deneeritakse lpliku aksioomissteemi abil. Aga niteks
peatkis 10 vaadeldav naturaalarvude Peano aksiomaatika on lp-
matu. Kui me tahame tuletatavust aksioomidest vaadelda kui
kontrollitavat testusviisi, peab aksioomide hulk olema algoritmi-
liselt lahenduv, s.t. meil peab olema algoritm testuses esinevate
viidete See on tene, sest ta on aksioom kontrollimiseks. Teo-
reetilistes konstruktsioonides vaatleme aga mnikord ka halvema
struktuuriga aksioomide hulki.
Esimest jrku teooria on aksiomaatiline teooria, mille valemite
keele moodustavad mingi signatuuri valemid, aksioomideks on
predikaatloogika aksioomid ja selle teooria omaaksioomid ning
tuletusreegliteks predikaatloogika tuletusreeglid. Kui signatuur si-
saldab vrdusmrki, arvatakse aksioomide hulka kuuluvateks ka
vrduse aksioomid.
On selge, et esimest jrku teooria mratakse tema signatuuri ja
omaaksioomidega. Teooria mudeliks nimetame iga struktuuri, kus
kehtivad teooria kik omaaksioomid. Siinkohal me ei pea rkima
predikaatloogika ja vrduse aksioomidest, sest need kehtivad igal
struktuuril.
eldakse, et kinnine valem A signatuuris jreldub loogi-
liselt aksioomidest T , kui A on tene T igas mudelis. Millises
vahekorras on aksioomidest sellises semantilises mttes jrelduvad
valemid ja teoorias T tuletatavad valemid?
Teoreem 5.9 (korrektsuseteoreem). Kui mingi valem on teoo-
rias T tuletatav, siis on ta tene teooria T omaaksioomide igas
mudelis.
5.6. Aksioom ja mudel 163
Sellel on lihtne phjendus predikaatloogika korrektsuse kaudu.
Fikseerime mudeli M. Olgu valem B tuletatav. Tema tuletus
on lplik objekt ja seal saab olla kasutatud ainult lplik arv
teooria T aksioome. Olgu need A
1
, . . . , A
n
. Kasutades n korda
deduktsiooniteoreemi, saame, et predikaatloogikas (juba ilma T
aksioomideta) saab tuletada implikatsiooni A
1
& . . . & A
n
B.
Jrelikult peab see valem olema samaselt tene. Siis on ta mu-
delis M tene, samuti kui aksioomid A
1
, . . . , A
n
. Implikatsiooni
denitsioonist saame, et tene on ka B.
Teoreem nitab, et struktuuride klassi deneerimine (ni-
teks algebras, funktsionaalanalsis jne.) vimaldab matemaatikas
testada hekorraga teoreeme, mis kehtivad paljudel struktuuridel.
Kehtib ka teoreem 5.10.
Teoreem 5.10 (tielikkuseteoreem). Iga valemit, mis on tene
teooria T omaaksioomide igas mudelis, saab tuletada teoorias T .
Ksime nd, millistel valemite hulkadel T leidub mudel. On
selge, et vasturkival hulgal, millest saab tuletada mingi valemi ja
ka selle valemi eituse, mudelit olla ei saa, sest mudelil peaksid siis
teoreemi 5.9 phjal olema tesed kaks teineteist eitavat valemit.
Seega saab mudeli olemasoluga testada aksiomaatika mittevastu-
rkivust. Niteks algebrapikutes kontrollitakse tavaliselt prast
rhmateooria aksioomide tutvustamist, et ainult hikelemendist e
koosnev struktuur rahuldab rhmaaksioome. Sellega on nidatud,
et rhmateooria uurimisobjekt on olemas.
Osutub, et mittevasturkivus on ka piisav mudeli olemasoluks,
s.t. kehtib teoreem 5.11.
Teoreem 5.11 (mudeliteoreem). Igal mittevasturkival esimest
jrku teoorial leidub mudel.
Mudel konstrueeritakse vaadeldava signatuuri kinnistest
(s.t. vabade muutujateta) termidest ja valemitest.
Paljud aksioomide ssteemid on matemaatikas tegelikult de-
nitsiooni rollis ja matemaatikud on aksioome kseerides kl-
lalt vabad. Niteks on avastatud, et tehetel arvude aritmeetikas,
164 5. Klassikalised tuletusreeglid
maatriksitel jm. objektidel on mingid omadused: kommutatiivsus,
assotsiatiivsus jne. Jrgmise sammuna vetakse signatuuri ks,
kaks vi enam tehtemrki ja aksioomideks nende tehete mingid
olulised omadused. Kiki saadud aksioome rahuldavaid struktuure
nimetatakse rhmadeks, ringideks vms. Rhma-, ringi- vms. teoo-
ria spetsialistid arendavad nd teooriat, testades aksioomidest
jrelduvaid teoreeme. Tihti avastatakse, et sellise skeemi jrgi
postuleeritud omadused on veel muudel praktilist vi teoreetilist
huvi pakkuvatel struktuuridel ja saadud teoreeme saab rakendada.
5.7. Aksiomatiseerimisteooria
Vaatleme nd olukorda, kus on kseeritud mingi struktuuride
klass vi ksik struktuur mingis signatuuris ja matemaatikud
soovivad omada selle klassi/struktuuri teooria aksiomaatikat, et
testada teoreeme mingil kindlal baasil. Kas elementaarteooriat
(s.t. klassil/struktuuril teste valemite hulka) saab alati aksioma-
tiseerida? Pris triviaalses mttes muidugi, sest vime vtta ak-
sioomideks kik tesed valemid. Aga sellise aksiomatiseerimisega
me ei vida midagi, kui aksioomiks olemise kontroll on sama
keeruline kui tesuse kontroll. Milliste omadustega aksiomaatika
on ldse kasutamiseks klblik?
Kigepealt on selge, et aksiomaatika peab olema korrektne,
s.t. aksioomidest peab saama tuletada ainult teseid valemeid.
Kui tuletatav on ka mni vr valem, siis ei anna aksioomidest
tuletamine mingit tesuse garantiid. Nagu juba ngime, piisab
korrektsuseks iga aksioomi tesusest kigil vaadeldavatel struktuu-
ridel. Vastupidine omadus tielikkus, s.t. kigi teste valemite
tuletatavus on kll samuti soovitav, kuid mitte absoluutselt va-
jalik. Matemaatikas on kasutusel ka mittetielikke aksiomaatikaid.
Sellise puudusega on isegi ldtuntud Peano aksiomaatika naturaal-
arvude jaoks. Kll aga peab aksioomide hulk olema algoritmiliselt
lahenduv, et testuse lugeja saaks kontrollida, kas testusse ilma
phjendamata sisse toodud vited ikka on aksioomid.
Miks ollakse sunnitud kasutama mittetielikke aksioomide ss-
5.8. lesanded 165
teeme? Algoritmiteooria terminites vljendades toob aksioomide
hulga lahenduvus kaasa tuletatavate valemite hulga rekursiivse
loetletavuse, s.t. leidub algoritm, mis genereerib kik tuletatavad
valemid. Algoritmiteoorias testatakse ka, et naturaalarvude hulgal
teste signatuuri 0; +, ; = valemite hulk pole loenduv ja jreli-
kult pole olemas naturaalarvude aritmeetika korrektset ja tielikku
aksiomaatikat. Sellegipoolest saab Peano aksioomidest tuletada
niteks kik standardsete likooli matemaatikakursuste lesehita-
miseks vajalikud aritmeetikateoreemid. Kuni seitsmekmnendate
aastateni kirjutati loogikapikutes koguni, et tuletatavad on ldse
kik tegeliku matemaatika teoreemid ning loogikutele teadaole-
vad mittetuletatavad tesed valemid on kunstlikult konstrueeritud.
Praeguseks on vlja selgitatud, et juba mned eelmise sajandi
arvuteooria tulemused asuvad vljaspool Peano aritmeetikat.
5.8. lesanded
1. On teada, et
A B.
(a) Mida me vime elda A kehtestatavuse, samaselt tesuse,
samaselt vruse ja temast B jreldumise kohta?
(b) Mida me vime elda B kehtestatavuse, samaselt tesuse,
samaselt vruse ja temast A jreldumise kohta?
2. Andke jrgmistele argumentide otsesed testused. (Allikas: Pla-
ton, Phaedo.)
(a) Kui Sokrates ei usuks, et kui ta sureb, lheb ta jumalate
juurde, toimiks ta valesti mitte surma vastu olles. Kui ta
seda usub, ei toimiks ta valesti mitte surma vastu olles.
Seega, ta kas usub seda ja ei toimi valesti, mitte surma
vastu olles, vi ta ei usu seda ja toimib valesti mitte
surma vastu olles.
166 5. Klassikalised tuletusreeglid
(b) Kui keha on hingele takistuseks, siis on hingel parem ke-
hast vaba olla. Kui see on tsi, siis ei tule surma karta.
Aga, kui krgeimate asjade teadmisel saab hing keha poolt
petetud, siis on keha hingele takistuseks. Kuid hing on
keha poolt sel viisil petetud. Seega, surma ei tule karta.
(c) Kui me tunnistame, et mned asjad on vrdsed ja mned
ebavrdsed, siis me peame teadma, mis vrdsus ise on.
Aga, kui mitte midagi meie meeltes ei ole vrdsus ise,
siis me kas ei tea, mis vrdsus ise on vi ei omanda me
seda teadmist meelte kaudu. Kui me ei omanda seda tead-
mist meelte kaudu, siis me snnime koos mingi teadmi-
sega. Kuna me tunnistame, et mned asjad on vrdsed ja
teised ebavrdsed, ja kuna miski meie meeltes pole vrd-
sus ise, siis jrelikult me snnime koos mingi teadmisega.
3. (C. H. Papadimitriou) Olgu meil kasutada konstantsmbolid
ja ning binaarne predikaatsmbol . Kirjutage va-
lem p, mis vastab kneknule
Everybody loves my baby,
my baby loves nobody but me . . .
(Kik armastavad minu beebit, minu beebi armastab ainult
mind . . . )
(a) Nidake, et p |= = ;
(b) Testage, et p = ;
(c) Pdke kirjutada valem p hoolikamalt, nii et ei tekiks sel-
liseid vastuolusid.
4. Kurjuse probleem. Testage, et jrgmised vited on vastur-
kivad:
Kui kurjus on olemas, siis kas jumal ei taha seda ra
hoida vi ei saa seda ra hoida.
Kui jumal on kikvimas, siis ta saab kurjust ra hoida.
Kui jumal on hea, siis ta tahab kurjust ra hoida.
5.8. lesanded 167
Kui jumal eksisteerib, siis on ta kikvimas ja hea.
Kurjus on olemas.
Jumal on olemas.
Mis sellest jreldub?
5. Vtame kasutusele naiste loogika aksioomi (A. Kolmogorov):
A B B on meeldiv
A
Testage, et naiste loogika on vasturkiv. Mida on selleks vaja
minimaalselt eeldada?
6. Tuletusssteemid
Mis tna testatakse, oli millalgi vaid unistuseks.
William Blake (17571827), Taeva ja prgu abi-
elu
Kirjeldame selles peatkis lhidalt formaalseid tuletusssteeme,
nagu Hilberti tpi tuletused, loomulikud ja sekventsiaalsed tu-
letused ning tesuspuud. Resolutsiooni kui programmeerimises
ja tehisintellektis enim kasutatava tuletusssteemi ksikasjalise
kirjelduse toome raamatu viimases osas.
6.1. Hilberti tpi tuletus
Ajalooliselt hakati esimesena kasutama Hilberti tpi tuletusss-
teeme, milles on suhteliselt palju aksioome ja vhe tuletusreegleid.
Vaatleme lihtsat tuletusssteemi H, milles on ainult kaks
lausearvutuse tehet: eitus ja implikatsioon. lejnud tehted de-
neeritakse nende kaudu:
p & q
def
= (p q),
p q
def
= p q,
p q
def
= (p q) & (q p).
Tuletusssteemis on kolm aksioomiskeemi:
6.1. Hilberti tpi tuletus 169
(H1) p (q p);
(H2) (p (q r)) ((p q) (p r));
(H3) (p q) ((p q) p).
Ainsaks tuletusreegliks on modus ponens:
p p q
q
(MP).
Sellisel tuletusssteemil on rohkem teoreetiline thendus, sest
tema kohta on lihtne testada matemaatilisi omadusi; temaga
tuletamine on aga kllalt tlikas, kuna me ei saa kasutada paljusid
tuttavaid tuletusreegleid.
Nitame, et ssteemis H on tuletatav teoreem p p.
Lause 6.1.
H
p p.
Testus.
1. (p ((p p) p)) ((p (p p)) (p p)) H2
2. p ((p p) p) H1
3. (p (p p)) (p p) 1,2 MP
4. p (p p) H1
5. p p 3,4 MP
Tuletamise muudab keerukaks see, et aksioomiskeemidesse
on vga raske leida vajalikke substitutsioone. Niteks lause 6.1
testuses on mrava thtsusega aksioomiskeemi (H2) sobiva
erikuju leidmine.
Kuidas aga testada konjunktsiooni kommutatiivsusreeglit
p &q q & p,
s.t.
H
(p q) (q p)?
Hilberti tpi tuletusssteemides tuletatakse testest valemitest
uusi teseid valemeid. Jrgnevalt testame deduktsiooniteoreemi,
mille abil saab sisse tuua ka hpoteese.
170 6. Tuletusssteemid
Teoreem 6.2 (deduktsiooniteoreem (Herbrand, 1930)). Kehtib
, p
H
q
H
p q,
kus on suvaline valemite loetelu ning p ja q on suvalised
valemid.
Testus. Olgu q
1
, . . . , q
n
= q tuletus, mis kasutab eeldustena
ainult elemente ja valemit p. Nitame induktsiooniga, et
p q
i
(1 i n). Valem q
1
on kas element, aksioom vi
valem p. Esimesel kahel juhul saame aksioomiskeemi (H1) erikuju
q
1
(p q
1
), millest tuletame modus ponensiga p q
1
.
Kui q
1
= p, kasutame lauset 6.1.
Eeldame nd, et p q
k
(k < i), ja nitame, et
p q
i
. Valem q
i
on kas element, aksioom, valem p vi
jreldub modus ponensiga valemitest q
j
ja q
m
, kus j, m < i ja
q
m
= q
j
q
i
. Esimesed kolm juhtu testame samamoodi, kui
i = 1 korral. Viimasel juhul on meil juba testatud, et p q
j
ja p (q
j
q
i
). Aksioomiskeemi (H2) phjal kehtib
(p (q
j
q
i
)) ((p q
j
) (p q
i
)).
Rakendades sellele valemile kaks korda reeglit modus ponens
saame p q
i
. Vttes i = n saamegi soovitud tulemuse.
Niteks piisab p q, q r p r testamiseks tuletusest
1. p q hpotees
2. q r hpotees
3. p hpotees
4. q 1,3 MP
5. r 2,4 MP
Kleene kasutab lausearvutuse jaoks jrgmist Hilberti tpi
tuletusssteemi K, kus p q
def
= (p q) & (q p):
(K1) p (q p);
(K2) (p q) ((p (q r)) (p r));
6.1. Hilberti tpi tuletus 171
(K3) p & q p;
(K4) p & q q;
(K5) p (q p & q);
(K6) p p q;
(K7) q p q;
(K8) (p r) ((q r) (p q r));
(K9) (p q) ((p q) p);
(K10) p p.
Ssteemi ainsaks tuletusreegliks on jllegi modus ponens. Selles
ssteemis on juba vimalik testada deduktsiooniteoreemiga, et

K
p & q q & p:
1. p & q hpotees
2. p & q p K3
3. p 1,2 MP
4. p & q q K4
5. q 1,4 MP
6. q (p (q & p)) K5
7. p (q &p) 5,6 MP
8. q &p 3,7 MP
9. p & q q & p 18 deduktsiooniteoreem
Predikaatarvutuse korral lisanduvad Hilberti ssteemile H
aksioomiskeemid
(H4) x p(x) p {x/t };
(H5) x (p q) (p x q).
Term t peab olema aksioomiskeemis (H4) muutuja x asenda-
miseks vaba, s.t. term t ei tohi sisaldada muutujaid, mis osutuvad
substitutsiooni tagajrjel valemis p {x/t } seotuks. Aksioomiskee-
mis (H5) ei sisalda valem p muutujat x vabalt.
Modus ponensile lisandub ldistamisreegel
p
x p
(Gen)
172 6. Tuletusssteemid
ning eksistentsikvantor defineeritakse valemiga
x p
def
= xp.
lesanded
1. Testage deduktsiooniteoreemiga:
p (q r), q
H
p r.
2. Testage
K
p p.
3. Testage, et ssteemis K kehtib deduktsiooniteoreem.
4. Konstrueerige interpretatsioonid, mis nitavad, et aksioomiskeemi-
des (H4) ja (H5) ei vi kitsendavaid lisatingimusi ra jtta.
6.2. Loomulik tuletus
Gentzeni tpi loomuliku tuletuse ssteemides on iga loogilise
tehte jaoks sissetoomisreegel ja eemaldamisreegel. Gentzeni tpi
on niteks tuletusssteem , milles on kaks aksioomiskeemi
p p (hpotees),
p p (Tertium non datur)
ja tabelis 6.1 toodud tuletusreeglid.
Loomulikes tuletustes ksitletakse hpoteese reeglite osadena.
Siis on hpoteesid mbritsetud nurksulgudega ning on reeglitega
seotud punktiirjoonte abil. Smboliga thistatakse suvalist vas-
tuolulist olukorda, mille phjuseks on mingi lause ja selle eituse
samaaegne tesus.
ldisuskvantori sissetoomisreeglis (I) ja eksistentsikvantori
eemaldamisreeglis (E) peab olema tidetud tingimus (), mis
nuab, et term a peab olema muutuja x asendamiseks valemis p
vaba.
Loomuliku tuletuse ssteemide matemaatiliste omaduste tes-
tamine on ldiselt keerulisem kui Hilberti tpi ssteemide korral,
kuid nad on praktiliseks testuseks tunduvalt mugavamad.
6.2. Loomulik tuletus 173
Sissetoomisreegel Eemaldamisreegel

p
Ex falso
quodlibet
p q
p & q
(&I)
p & q
p
p & q
q
(&E)
p
p q
q
p q
(I)
p q
[p]
.
.
.
.
r
[q]
.
.
.
.
r
r
(E)
[p]
.
.
.
.
q
p q
(I)
p p q
q
(E)
[p]
.
.
.
.

p
(I)
p p

(E)
(p q) & (q p)
p q
(I)
p q
(p q) & (q p)
(E)
p {x/a}
x p
(I)

x p
p {x/t}
(E)
p {x/t}
x p
(I)
x p
[p {x/a}]
.
.
.
.
q
q
(E)

Tabel 6.1. Loomuliku tuletuse ssteemi reeglid.


174 6. Tuletusssteemid
Tihti kirjutatakse valemi tesust mjutavate eelduste ja h-
poteeside numbrid temast vasakule ja tuletusreegli rakendamise
jrel kustutatakse selle reegli hpoteeside numbrid saadud vale-
mit mjutavate videte numbrite loendist. Selles mttes vib igat
loomuliku tuletuse rida ksitleda kui kehtivat arutlust.
Lause 6.3. p & q q & p.
Testus.
1 1. p & q hpotees
1 2. p 1 &E
1 3. q 1 &E
1 4. q & p 2,3 &I
5. p & q q & p 1,4 I
Hpotees p & q sltub ainult iseendast. Selleprast on temast
vasakule kirjutatud tema enda number. Ka valemite p, q ja
q &p tesus sltub ainult hpoteesi p &q tesusest. Kuna valemi
p & q q & p tuletamisel kasutatakse hpotees p & q ra, siis ei
sltu tema tesus enam hestki eeldusest ega hpoteesist.
6.3. Gentzeni sekventsiaalne arvutus
Oma 1935. aasta artiklis tegi saksa matemaatik Gerhard Gentzen
(19091945) loomuliku tuletuse ssteemide deneerimise jrel
veel he sammu edasi, muutes peale tuletuste kuju ka nende ob-
jektide kuju, mille abil viteid les kirjutatakse ja mida tuletatakse.
Valemite asemel on vaatluse all sekventsid read kujul
A
1
, . . . , A
m
B
1
, . . . , B
n
,
kus m, n 0 ja A
1
, . . . , A
m
ning B
1
, . . . , B
n
on valemid. Sek-
ventsi vasakpoolset osa A
1
, . . . , A
m
nimetatakse antetsedendiks ja
parempoolset osa B
1
, . . . , B
n
suktsedendiks.
6.3. Gentzeni sekventsiaalne arvutus 175
Sekventsile omistatakse sama thendus kui valemile
A
1
& . . . & A
m
ning B
1
. . . B
n
, s.t. vide Valemitest A
1
, . . .
ja A
m
jreldub, et kehtib B
1
, . . . vi B
n
. Kui m = 0, siis
thendab see lihtsalt paremal oleva disjunktsiooni kehtimist. Kui
n = 0, siis mistetakse thja disjunktsiooni vastuoluna. Niteks
paljusid matemaatikateoreeme, mis vidavad, et kui on tene
eelduste konjunktsioon, siis kehtib ka teoreemi vide, on loomu-
lik kirja panna sekventsina, mille antetsedent koosneb mitmest
valemist, aga suktsedent ainult hest. Gentzen vttis mitut va-
lemit sisaldava suktsedendiga sekventsid kasutusele smmeetria
saavutamiseks. Nende lubamine osutub samavrseks leminekuga
intuitsionistlikult arvutuselt klassikalisele.
Kirjeldame nd Gentzeni arvutust.
Keel. Tavaliselt formuleeritakse sekventsiaalarvutus sekvent-
side jaoks, milles valemid sisaldavad loogilisi seoseid &, ,
, , ja .
Aksioomideks loetakse sekventse kujul A A.
Tuletusreegleid on kahte liiki: loogilised (seoste sissetoo-
mise) ja struktuursed.
Reeglite leskirjutuses thistavad suured ladina thed valemeid,
tht x seotud muutujat, a vaba muutujat, t termi (mis muidugi
peab olema vaba vastavale kohale asendamiseks), kreeka thed
komadega eraldatud valemite jadasid. Reeglites () ja () ei
ole muutuja a vabalt ja valemites.
Philised tuletamisvahendid on koondatud loogilistesse reegli-
tesse. Iga seose jaoks on Gentzeni ssteemis selle seose antetse-
denti ja suktsedenti sissetoomise reegel. See vimaldab saada sek-
ventse, mis sisaldavad vastavat seost vasakul vi paremal. Antetse-
denti sissetoomise reeglid nitavad, kuidas saab testada teoreeme,
mille eeldus on konjunktsioon, disjunktsioon jne. Suktsedenti sis-
setoomise reeglid annavad vahendi juhuks, kui teoreemi vide on
konjunktsioon, disjunktsioon jne. Oma sisu poolest formaliseerib
iga reegel mingit tuntud testamisvtet. Niteks disjunktsiooni
176 6. Tuletusssteemid
A,
A & B,
,
B,
A & B,
(&)
, A , B
, A& B
(&)
A, B,
A B,
()
, A
, A B
,
, B
, A B
()
, A B,
A B, , ,
()
A, , B
, A B
()
, A
A,
()
A,
, A
()
A(x/t),
x A(x),
()
, A(x/a)
, x A(x)
()
A(x/a),
x A(x),
()
, A(x/t)
, x A(x)
()
Tabel 6.2. Loogilised reeglid.
antetsedenti toomise reegel () thendab, kui eeldustest ja
valemist A jreldub ning eeldustest ja valemist B jreldub
, siis jreldub juba eeldustest ja disjunktsioonist A B.
Peale likereegli (Cut) on struktuursed reeglid oma sisult kl-
lalt triviaalsed. Sekventsiga esitatud lauses lubatakse lisada eeldusi
vi vite alternatiive, eemaldada eelduste ja vite alternatiivide
liigseid eksemplare, muuta eelduste vi alternatiivide jrjekorda.
Likereegel formaliseerib matemaatikas tihti kasutatava strateegia,
kus testuse hes osas saadakse mingi lemma C ja teises osas saa-
dakse lemmat C kasutades teoreem. Eespool nidetes vaadeldud
konjunktsiooni kommutatiivsuse teoreemi on sekventsina loomulik
kirja panna kujul P & Q Q & P ja tema testus koosneb
Gentzeni ssteemis kolmest sammust:
6.3. Gentzeni sekventsiaalne arvutus 177

C,

, C
C, C,
C,
, C, C
, C
, C, D,
, D, C,
, C, D,
, D, C,
, C C,
, ,
(Cut)
Tabel 6.3. Struktuursed reeglid.
Q Q
P & Q Q
(&)
P P
P & Q P
(&)
P & Q Q &P
(&)
Olulisem kui sammude arv on aga asjaolu, et tuletus on leitav
ainult rutiinseid samme kasutades. Strateegia seisneb siin tule-
tuspuu ehitamises alt les, s.t. sihtsekventsist aksioomide poole.
Igal sammul ptakse lahutada sekventsis mingi valem osava-
lemiteks, kasutades selle valemi peatehte sissetoomise reeglit.
Lausearvutuse jaoks ongi see strateegia koos mittetautoloogiliste
sekventside vltimisega piisav. Niteks laltoodud testuses me ei
saanud sihtsekventsile rakendada kumbagi reeglitest (&), sest
sekventsid P Q & P ja Q Q & P pole samaselt tesed
ja neid pole lootust tuletada. Sellegipoolest saab tuletamist alus-
tada antetsedendi ksitlemisega, tuues sinna valemi P & Q teise
eksemplari ja kaotades seejrel kummastki konjunktsioonist he
liikme. Predikaatloogikaga on olukord muidugi keerulisem, sest
kvantorreeglites pole lespoole liikudes termi valik hene, samuti
pole olemas algoritmi mittetuletatavate harude vltimiseks.
Toome siin ka he predikaattuletuse nite, tuletades
x P(x) x P(x). Mrgime, et kvantorireeglite rakenda-
mise jrjekord on oluline, sest reeglit () saab rakendada ainult
178 6. Tuletusssteemid
siis, kui teised valemid sekventsis ei sisalda vaba muutujat a.
P(a) P(a)
P(a), P(a)
()
P(a), x P(x)
()
x P(x), P(a)
x P(x), x P(x)
()
x P(x), x P(x) x P(x)
()
x P(x) x P(x), x P(x)
x P(x) x P(x), x P(x) x P(x)
()
x P(x) x P(x)
Gentzen testas kige thtsama tulemusena oma arvutuse
kohta, et likereegli vib ssteemist vlja jtta, sest tema raken-
dused saab igast tuletusest elimineerida. Saadud arvutuses kehtib
alamvalemi omadus: igal tuletussammul on iga valem reegli le-
mises sekventsis (lemistes sekventsides) alumise sekventsi mingi
valemi osavalem. Automaatse testamise jaoks thendab see, et
tuletuse otsimispuus on hargnemistegur tkestatud. Testuste teoo-
rias saab aga vga lihtsalt testada likevaba arvutuse mittevastu-
rkivust: niteks lihtsaim sekvents ei saa olla tuletatav, sest
kski aksioom ei koosne tema valemite osavalemitest. Ka paljude
konkreetsete valemite (s.o. kujul A olevate sekventside) mitte-
tuletatavust on Gentzeni tpi arvutuse korral lihtne nidata, sest
on olemas ainult vike arv reegleid, mille rakendamise tulemusena
selline sekvents saab tekkida.
Puhtas predikaatloogikas kandub alamvalemi omadus kahjuks
edasi ainult nendesse rakendustesse, kus aksioomid on lihtsa
ehitusega valemid. Tpiline negatiivne nide on naturaalarvude
aritmeetika, kus induktsioonireeglil alamvalemi omadust ei ole
ja valemi x A(x) testamiseks tuleb testada valemid A(0) ja
x [A(x) A(x + 1)], millest viimane on oluliselt keerulisema
ehitusega kui esialgne. See teeb tuletuse automaatse otsingu
aritmeetikas vga raskeks.
6.4. Tesuspuu 179
6.4. Tesuspuu
Tesuspuu on vlja kasvanud Bethi tabelimeetodist, kus tesed
ja vrad valemid koondatakse omaette tabelitesse, millel vivad
omakorda olla alamtabelid. Kuna vra valemi eitus on tene,
siis me vime vrade valemite tabelid ra kaotada, tstes v-
rade valemite eitused teste valemite tabelitesse. Tulemuseks on
hargnemistega puu, mis pab kehtestatava valemi korral silitada
mingis harus tema tesust.
Tesuspuude tuletusmeetod phineb vastuvitelisel testamisel,
sest sellega kontrollitakse, kas on vimalik olukord, kus arutluse
eeldused on tesed ja jreldus on vr (vi kas lause saab olla loo-
giliselt vr). Eesmrgiks on esialgsete valemite dekompositsioon
vimalikult lihtsateks valemiteks literaalideks, s.t. atomaarse-
teks valemiteks ja nende eitusteks. Dekompositsiooni aluseks on
semantikareeglid. Niteks konjunktsiooni semantika
p & q = t p = t ja q = t
phjal on konjunktsiooni dekompositsiooni tulemuseks tema m-
lemad liikmed: p ja q. De Morgani seaduste phjal kehtib
(p & q) = p q,
s.t. konjunktsiooni eitus on samavrne eituste disjunktsiooniga.
Disjunktsioonile vastab puus hargnemine, sest tema tesuseks
piisab ainult tema he alamvalemi tesusest. Selliselt saame
tesuspuude tuletusreeglid, mis on koondatud tabelisse 6.4
1
. ldi-
suskvantori dekompositsioonireeglis (D) on a suvaline vaadelda-
vas puuharus esinev konstant (vi mingi kseeritud konstant a
0
,
kui harus pole veel htegi konstanti). Eksistentsikvantori dekompo-
sitsioonireeglis (D) valitakse konstandiks c puuharus mitteesinev
(uus) konstant. Tavaliselt piisab valemite hekordsest dekomposit-
sioonist ning kasutatud valemid mrgistatakse smboliga

. Kuid
ldisuskvantori dekompositsioonireeglit (D) on vimalik kasu-
1
Vahel nimetatakse disjunktsiooni dekompositsioonireegli sarnaseid hargne-
mistega reegleid -reegliteks ja konjunktsiooni dekompositsioonireegli tpi
jrjestikuseid reegleid -reegliteks.
180 6. Tuletusssteemid
p
p (D)
q
p
p & q (&D)
p q
(p & q) (&D)
p q
p q (D)
q
p
(p q) (D)
p q
p q (D)
q
p
(p q) (D)
q
p
q
p
p q (D)
q
p
q
p
(p q) (D)
p {x/a}
x p (D)
x p
x p (D)
p {x/c}
x p (D)
x p
x p (D)
Tabel 6.4. Tesuspuude tuletusreeglid.
6.4. Tesuspuu 181
tada jrgemda kigi vaadeldavas puuharus esinevate konstantide
korral, mistttu selle reegli rakendamisel jetakse esialgne valem
mrgistamata.
Puuharu, milles on mingi aatom koos iseenda eitusega, nime-
tatakse suletud haruks ning thistatakse smboliga . Puuharu,
mis pole suletud, kuid mis on lpetatud, s.t. kik temas esinevad
valemid on lahutatud dekompositsioonireeglite abil literaalideks,
nimetatakse avatud lpetatud haruks. Puud nimetatakse suletuks,
kui tema kik harud on suletud, ja avatuks, kui temas leidub
avatud lpetatud haru.
Thistagu
T T
p valemi p tesuspuu suletust.
Lause 6.4.
T T
p & q q & p.
Testus. Kontrollime vastuviteliselt, kas valemi p & q q & p
eitus vib olla tene:
6.
5.
4.
3.
2.
1.

p
q
p
(q & p)

p & q

(p & q q & p)

3 &D
2 &D
2 &D
1 D
1 D
eeldus
Saadud suletud tesuspuu nitab, et valemi p & q q & p eitus
annab vastuolu. Jrelikult on see valem tene.
Kuna tesuspuude meetod on kergesti programmeeritav, sobib
see hsti nii teoreemide testamiseks kui ka valemite hulkade
mudelite konstrueerimiseks. Niteks saab tesuspuudega leida
kontranite mittekehtivale arutlusele p q, q |= p:
182 6. Tuletusssteemid
p q (D)
p (D)
p

q
p q

Selles puus on kaks avatud lpetatud haru, mille literaalid annavad


mlemal juhul vrtustuse {p, q} (p = t ja q = t ). See lkkab
vaadeldava arutluse kehtivuse mber.
Lausearvutusvalemite korral on tesuspuud alati lplikud, sest
dekompositsioonireeglit rakendatakse igale valemile maksimaalselt
ks kord. Kuna ldisuskvantori dekompositsioonireeglit saab kor-
duvalt rakendada, vivad predikaatarvutuse valemite tesuspuud
osutuda lpmatuks. Niteks valemi xy Pxy tesuspuu
7.
6.
5.
4.
3.
2.
1.
. . .
Pcd
y Pcy

Pbc
y Pby

Pab
y Pay

xy Pxy
6 D
1 D
4 D
1 D
2 D
1 D
eeldus
ainus haru on lpmatu, sest eksistentsikvantori dekompositsiooni-
reegel lisab pidevalt uue konstandi ning ldisuskvantori dekom-
positsioonireegliga genereeritakse selle konstandi abil uus eksis-
tentsikvantoriga valem. Tulemuseks on tesuspuu, milles puudub
avatud lpetatud haru.
Tesuspuude tuletusmeetodit saab tiustada, vttes eksistent-
sikvantori dekompositsioonireegli (D) asemel kasutusele reegli
p {x/a
1
} . . . p {x/a
n
} p {x/c}
x p (D2)
6.4. Tesuspuu 183
mis pab muutujat x asendada kigi puuharus olevate konstanti-
dega a
1
, . . . , a
n
ning toob seejrel sisse harus puuduva konstandi c.
Selle reegliga saame valemi xy Pxy jaoks lpmatu hargneva
puu
3.
2.
1.
Paa
. . .
Pab
y Pay

xy Pxy
2 D2
1 D
eeldus
milles esinevad ka avatud lpetatud harud. Niteks valemiga Paa
lppev haru genereerib valemi xy Pxy mudeli, milles on ainult
ks element a ning Paa on tene. Ent valemite korral, millel
on ainult lpmatud mudelid, ei ole ka tiustatud reeglite korral
vimalik piirduda tesuspuu lpliku fragmendi lbivaatamisega.
lesanded
1. ***Konstrueerige valemite hulk, millel on ainult lpmatud mu-
delid.
Kuna tesuspuus on vimalik dekompositsioonireegleid ra-
kendada erinevas jrjekorras, siis antakse tihti ka soovitused,
milliseid reegleid rakendada esimesena. Tesuspuude mtmeid
aitab vhendada strateegia, mille korral sooritatakse alguses kik
jrjestikused tuletusreeglid ning seejrel kik hargnevad reeglid.
Kvantorireeglitest tuleks viimaseks jtta reegli (D) rakendamine.
Saab testada, et tesuspuude meetod on tielik, s.t. kik, mis
on predikaatarvutuses loogiliselt jrelduv, on ka tesuspuudega
tuletatav ja vastupidi:
|= p
T T
p.
Puuharusid vib sulgeda ka mitte ainult vasturkivate literaa-
lide A ja A esinemisel, vaid ka vasturkivate valemite p ja p
korral. Mlemad tuletusmeetodid on ekvivalentsed, sest valemid
p ja p ei saa olla samaaegselt tesed. Kahjuks ei anna sel-
line tuletusmeetodi tiustus meile avatud lpetatud puuharu phjal
automaatselt atomaarsete valemite kehtestavat vrtustust.
II
Matemaatiline loogika
7. Matemaatiline
induktsioon
Matemaatika on mng, mida mngitakse lihtsate
reeglite jrgi, kirjutades paberile mttetuid smbo-
leid.
David Hilbert (18621943)
7.1. Induktiivne testus
Matemaatiline induktsioon on vimas matemaatiline meetod, mis
vimaldab opereerida lpmatute hulkadega. Ta aitab meil koostada
lpmatuid objektide klasse ning seejrel saab temaga testada, et
sellistel klassidel on kindlad abstraktsed omadused.
Nide 7.1. Naturaalarvude hulk
= {0, 1, 2, . . .}
defineeritakse induktiivselt kahe punktiga:
1. 0 on naturaalarv.
2. Kui n on naturaalarv, siis on n + 1 naturaalarv.
Esimese lausega defineeritakse induktsiooni baas ja teisega mratakse
induktsiooni samm.
188 7. Matemaatiline induktsioon
Nide 7.2. Lausearvutuse sntaksi denitsioonis lk. 76 on induktsiooni
baasiks kik atomaarsed valemid, mis koosnevad ainult lausemuutujast,
ja induktsiooni sammuga kirjeldatakse jrkjrgult lausearvutuse liitlau-
sed.
Induktsiooniga on mugav testada lausearvutuse (kui lpmatu
valemite hulga) matemaatilisi omadusi. Testame niteks sellise
lihtsa teoreemi.
Teoreem 7.3. Igas lausearvutuse valemis on vasakpoolsete sul-
gude arv vrdne parempoolsete sulgude arvuga.
Testus. Testame teoreemi induktsiooniga le kigi lausearvu-
tusvalemite. Teoreem kehtib atomaarsete valemite korral, sest neis
sulud puuduvad. Teoreem kehtib ka valemite korral, mis on saadud
atomaarsetest valemitest he lausearvutuse tehte lisamise teel, sest
olemasolevatest valemitest uue valemi konstrueerimisel lisatakse
hed paarissulud vi ei lisata htegi sulgu. Sellised on niteks
valemid
A, (A B), (A & B).
Kasutades lausearvutuse sntaksi definitsiooni teist korda, saame
testada, et teoreem kehtib kigi lausearvutusvalemite korral,
milles on kaks loogilist tehet:
A, (A B), (A B), ((A B) C), . . .
Suurendades niimoodi pidevalt valemites esinevate loogiliste tehete
arvu, testame (lpmatu testuse) tulemusena, et teoreem kehtib
kigi lausearvutusvalemite korral.
Kuna lpmatut testust ei ole mtet kirjutada, siis testatakse
kahes etapis. Kigepealt testatakse induktsiooni baas:
Atomaarsetes lausearvutusvalemites on vasakpoolsete sul-
gude arv vrdne parempoolsete sulgude arvuga,
ning seejrel testatakse induktsiooni samm:
Kui igas lausearvutusvalemis, kus on kuni k loogilist tehet,
on vasakpoolsete sulgude arv vrdne parempoolsete sulgude
7.2. Duaalsus 189
arvuga, siis on ka kigis k+1 loogilise tehtega lausearvutus-
valemites vasakpoolsete sulgude arv vrdne parempoolsete
sulgude arvuga.
Induktsiooni baas ja samm testatakse lausearvutuse sntaksi
definitsiooni phjal. Teoreemi vite testus saadakse siit aga
matemaatilise induktsiooni printsiibil, sest teoreemi vide jreldub
loogiliselt induktsiooni baasi ja induktsiooni sammu videtest.
Matemaatilise induktsiooni meetod ttab ainult selliste hul-
kade korral, mida saab grupeerida jrjestatud rhmade jadaks.
Esimesel induktsiooni sammul testatakse, et esimese rhma kik
liikmed on antud omadusega. Igal jrgmisel induktsiooni sammul
testatakse, et ka eelmistele vahetult jrgneva rhma elementi-
del on vaadeldav omadus. Niteks eelmise teoreemi korral oli
rhmitamise aluseks valemis esinevate loogiliste tehete arv.
lesanded
1. Testage, et induktsiooni baas, induktsiooni samm ja teoreemi
vide moodustavad teoreemis 7.3 kehtiva arutluse. Millise loogika
arutlus see on?
2. Testage matemaatilise induktsiooniga, et kik inimesed on kas
mees- vi naissoost.
7.2. Duaalsus
Lausearvutusvalemites kasutatakse tavaliselt eitus-, konjunktsioo-
ni-, disjunktsiooni-, implikatsiooni- ja ekvivalentsitehteid. Sellisel
juhul eldakse, et valemid on (tehete) baasis {, &, , , }.
Kui kasutatakse ainult kolme tehet: eitust, konjunktsiooni ja
disjunktsiooni, on valemid baasis {, &, }. Niisugustel valemitel
on olemas ka duaalsed valemid. Valemi p duaalne valem p

saadakse, kui kik konjunktsioonid asendatakse disjunktsioonidega


ja kik disjunktsioonid konjunktsioonidega ning kik atomaarsed
valemid nende eitustega. Tabelis 7.1 on toodud mned nited
valemitest ja nende duaalsetest valemitest.
190 7. Matemaatiline induktsioon
Valem p Duaalne valem p

A A
((A F) & G) ((A & F) G)
((A B) (A & B)) ((A & B) & (A B))
Tabel 7.1. Niteid valemitest ja nende duaalsetest valemitest.
Jrgmine teoreem vidab, et valem ja tema duaalne valem on
ksteisele vasturkivad.
Teoreem 7.4 (duaalsus). Olgu p valem baasis {, &, } ja p

tema duaalne valem. Siis kehtib


p = p

.
Testus. Induktsiooni baas. Olgu p atomaarne valem. Siis saame
kahekordse eituse reegli ja duaalsuse definitsiooni phjal
p = p = p

.
Induktsiooni samm.
1. Olgu p = q. Induktsiooni eelduse phjal kehtib q = q

.
Siit saame aga
p = q = q

= p

,
sest duaalsuse definitsiooni phjal kehtib p

= q

.
2. Olgu p = q & r. Induktsiooni phjal kehtib
q = q

, r = r

ning duaalsuse definitsioonist saame


p

= q

.
De Morgani seadused annavad nd
p = q & r = (q r) = (q

)
= (q

) = p

.
7.2. Duaalsus 191
3. p = q r. Selle punkti jtame testada lesandes 7.2.2.
Jreldus 7.5. Kui valemid p ja q on loogiliselt ekvivalentsed, siis
on ka nende duaalsed valemid p

ja q

loogiliselt ekvivalentsed:
p = q p

= q

.
Palju asendusreegleid saab duaalsusteoreemi ja asenduste abil
omavahel teisendada. Konjunktsiooni kommutatiivsusest vib sel-
lisel teel saada niteks disjunktsiooni kommutatiivsuse:
p & q = q & p p q = q p.
lesanded
1. *Nidake, et iga valem baasis {&, } on tene, kui kik tema lau-
semuutujad on tesed. Jrelikult ei saa eitust selles baasis vljen-
dada.
2. Testage disjunktsiooni osa duaalsusteoreemis.
8. Lausearvutuse tielikkus
Formaalse aksiomaatilise ssteemi tielikkus thendab tdemust,
et selles ssteemis langevad tesuse ja tuletatavuse miste kokku.
Ideaalis peaks iga loogilise ssteemi korral leiduma ka vastav
tielik tuletusssteem. Praktikas tekitab loogiliste ssteemide se-
mantika ja sntaktiliste tuletusreeglite vastavusse seadmine kllalt
suuri probleeme: kas ei ole konstrueeritud tuletusreeglitel selget
thendust vi ei osata kirjeldatud semantikat esitada tuletusreeglite
abil. Niteks tekivad tehisintellektissteemides kasutatavate prak-
tiliste tuletusssteemide tielikkuse tagamisel letamatud problee-
mid. Klassikaliste lause- ja predikaatarvutuse tielikkus on aga
vljaspool kahtlust. Jrgnevalt testame Hilberti tpi tuletusss-
teemi H tielikkust klassikalise lausearvutuse jaoks. Testust saab
laiendada traditsiooniliste vahenditega ka predikaatarvutusele.
Tielikkuseteoreemi testus koosneb kahest osast:
Korrektsuse osas nidatakse, et iga tuletatav valem on
loogiliselt tene.
Tielikkuse osas nidatakse, et kehtib ka vastupidine: iga
loogiliselt test valemit saab tuletada.
Me testame, et Hilberti tpi tuletusssteem H on lausearvutuse
jaoks korrektne ja tielik:

H
p |= p.
8.1. Lausearvutuse korrektsus ja mittevasturkivus 193
8.1. Lausearvutuse korrektsus ja
mittevasturkivus
Teoreem 8.1 (korrektsus). Iga lausearvutusvalemi p L
H
korral

H
p |= p.
Testus. Olgu q
1
, . . . , q
n
= p valemi p tuletus formaalses ss-
teemis H. Nitame induktsiooniga, et iga valem q
i
(1 i n)
on tautoloogia.
Kui q
i
on aksioom, on lihtne kontrollida, et ta on tautoloo-
gia. Oletame, et valem q
i
on saadud valemitest q
j
ja q
m
modus
ponensiga, kus j, m < i ja q
m
= q
j
q
i
. Induktsiooni eelduse
phjal on valemid q
j
ja q
m
tautoloogiad. Oletame vastuviteliselt,
et q
i
ei ole tautoloogia. Siis leidub nende valemite selline vr-
tustus , et (q
j
) = t , (q
j
q
i
) = t ja (q
i
) = v. Siit jreldub
aga, et (q
j
q
i
) = v, mis annab vastuolu. Vttes i = n saame,
et valem p on tautoloogia.
Definitsioon 8.2. Aksiomaatilist teooriat nimetatakse vastur-
kivaks, kui leidub selline valem p, nii et teoorias saab tuletada
p ja p.
Teoreem 8.3. Lausearvutus H on mittevasturkiv.
Testus. Oletame, et mingi valemi p korral saab ssteemis H
tuletada nii p kui ka p. Korrektsuseteoreemi phjal on nad
mlemad siis tautoloogiad, mis ei ole vimalik.
8.2. Lausearvutuse tielikkus
Thistagu p
t
valemit p ja p
v
valemit p. Vahetult saab kontrol-
lida, et iga {t, v} korral
p

= t p = .
Ssteemi H tielikkuse testuses kasutame jrgmist lemmat.
194 8. Lausearvutuse tielikkus
Lemma 8.4. Olgu X
1
, . . . , X
n
valemis p esinevad lausemuutujad
ja olgu suvaline p vrtustus. Siis kehtib
X

1
, . . . , X

n

H
p

.
Et lemma vitest aru saada, vaatleme kigepealt jrgmist
nidet. Olgu p = X Y. Vaatleme vrtustusi (t, t ) ja (t, v).
Nendele vrtustustele vastavad lemmas hpoteeside loetelud X, Y
ja X, Y. Esimesel vrtustusel on p vr ja jrelikult vidab
lemma, et X, Y
H
(X Y). Teisel juhul on p tene ja siis
peab olema tuletatav X, Y
H
X Y. Lemmat vime mista
ka nii, et valemi tevrtus on ssteemis H arvutatav, kui kasutada
andmetena vrtustele vastavaid hpoteese.
Testus. Testame lemma induktsiooniga valemi p ehituse jrgi.
Olgu selles m loogilist seost.
Juhul kui m = 0, on p atomaarne valem. On selge, et kui
(p) = t , siis p
H
p, ja kui (p) = v, siis p
H
p.
Eeldame, et lemma vide kehtib iga j < m korral. Nitame, et
see kehtib ka valemite korral, milles on m loogilist seost. Selleks
vaatame lbi kikvimalikud variandid.
1. Olgu valem p kujul q r ja olgu X
1
, . . . , X
k
temas
esinevad lausemuutujad. Kuna valemites q ja r on loogiliste
seoste arv viksem kui m, siis saame induktsiooni eelduse phjal
X

1
, . . . , X

k

H
q

ja X

1
, . . . , X

k

H
r

.
1a. Kui (q) = (r) = t , siis q

= q ja r

= r.
Kuna (q r) = t , siis p

= q r. Eelduse phjal kehtib


X

1
, . . . , X

k

H
r ja aksioomiskeem (H1) annab
H
r (q r).
Siit saame modus ponensiga X

1
, . . . , X

k

H
q r, s.t.
X

1
, . . . , X

k

H
p

.
1b. Kui (q) = t ja (r) = v, siis q

= q ja r

= r.
Nd on (q r) = v ja p

= (q r). Eelduse phjal


kehtivad X

1
, . . . , X

k

H
q ja X

1
, . . . , X

k

H
r. Saab testada,
et
H
q (r (q r)). Rakendades sellele valemile kaks
korda modus ponensit, saame X

1
, . . . , X

k

H
(q r), s.t.
X

1
, . . . , X

k

H
p

.
8.2. Lausearvutuse tielikkus 195
1c. Kui (q) = v, siis q

= q ja suvalise r vrtustuse
korral (q r) = t , mistttu p

= q r. Eelduse phjal keh-


tib X

1
, . . . , X

k

H
q. Saab testada, et
H
q (q r).
Siit saame modus ponensiga X

1
, . . . , X

k

H
q r, s.t.
X

1
, . . . , X

k

H
p

.
2. Olgu valem p kujul q. Kuna valemis q on loogiliste
seoste arv viksem kui m, siis saame induktsiooni eelduse phjal
X

1
, . . . , X

k

H
q

.
2a. Kui (q) = t , siis q

= q, (p) = v ja p

= p. Kuna

H
q q, siis saame modus ponensiga X

1
, . . . , X

k

H
q.
Kuid q = p

, mis annabki X

1
, . . . , X

k

H
p

.
2b. Kui (q) = v, siis q

= q, (p) = t ja p

= p.
Eelduse phjal kehtib X

1
, . . . , X

k

H
q, mis annabki
X

1
, . . . , X

k

H
p

.
Sellega on kik variandid lbi vaadatud ja lemma testatud.
Teoreem 8.5 (tielikkus). Iga lausearvutusvalemi p L
H
korral
|= p
H
p.
Testus. Olgu p tautoloogia ja olgu X
1
, . . . , X
n
temas
esinevad lausemuutujad. Iga vrtustuse korral kehtib
p

= p. Lemmast 8.4 saame, et X

1
, . . . , X

n

H
p. Jrelikult
X

1
, . . . , X

n1
, X
n

H
p ja X

1
, . . . , X

n1
, X
n

H
p.
Deduktsiooni teoreemi jrgi saame X

1
, . . . , X

n1

H
X
n
p
ja X

1
, . . . , X

n1

H
X
n
p. On vimalik testada, et

H
(X
n
p) ((X
n
p) p), kust saame modus ponensiga
X

1
, . . . , X

n1

H
p. Korrates seda protsessi n 1 korda, saamegi
tulemuseks
H
p.
lesanded
1. Testage, et
(a)
H
q (r (q r));
(b)
H
q (q r);
(c)
H
q q;
(d)
H
(q p) ((q p) p).
9. Mittelahenduvad
probleemid
Matemaatikast ei ole vimalik aru saada. Temaga
saab vaid kohaneda.
John von Neumann (19031957)
Matemaatikas on olnud alati palju lahendamata probleeme,
s.t. lesandeid, mida mitte keegi ei ole suutnud lahendada. Niteks
vib tuua Fermat suure teoreemi:
Vrrandil x
n
+ y
n
= z
n
ei ole n > 2 korral positiivseid
tisarvulisi lahendeid.
Prantsuse matemaatik Pierre de Fermat (16011665) kirjutas omal
ajal raamatu servale, et ta teab, kuidas seda videt testada. Tes-
tuse kirjapanekuks kulus matemaatikutel mitusada aastat. Abiks
veti ka arvutid, kuid pingsast otsimisest hoolimata ei nnestunud
leida htegi arvude kombinatsiooni, mis oleks Fermat teoreemi
mber lkanud. Alles 1994. a. esitas Ameerika matemaatik And-
rew Wiles Fermat teoreemi piisavalt ksikasjalise testuse.
Selliste mitteolemasolu teoreemide testused on alati matemaa-
tikat kaunistanud. Negatiivsete tulemuste testamine on tavaliselt
tunduvalt keerulisem kui mberlkkamine, sest testamiseks tuleb
vlja melda ha uusi keerukamaid meetodeid.
Matemaatika ajaloost on teada ka teisi analoogilisi negatiiv-
seid tulemusi. Tuntumad neist on
9.1. Turingi masin 197
ringi kvadratuuri probleem
1
,
arvu

2 irratsionaalsus.
Samamoodi on vimalik uurida ka inimvimete piire. Vttes
kasutusele inimtegevuse abstraktsed mudelid, saab testada, et on
lesandeid, mida ei suuda lahendada isegi kige targem inimene.
Jrelikult pole ka inimene tiuslik.
9.1. Turingi masin
Arvutatavuse mistet on vimalik mitmeti tpsustada. Me vime
niteks sooritada arvutusi kitsal paberlindil vi ruudulisel paberil.
Paberlindi korral peab otsustama, kas lindil on algus ja lpp
vi saab seda tarviduse korral lpmatult jtkata ning kas lindi
lahtritel on aadressid (nagu majadel) vi peame ise arvet pidama,
kus me parasjagu asume. Selgub, et arvutatavuse miste sisu
jb ikka samaks, kskik kuidas me neile ksimustele vastame.
Kui me valime mingi uue arvutatavuse formalisatsiooni, siis
saab alati hoolika kontrollimise teel testada, et see on eelmiste
formalisatsioonidega ekvivalentne, s.t. neile vastab tpselt sama
arvutatavate funktsioonide klass.
Seda ameerika matemaatiku Alonzo Churchi (19031995) ning
inglise matemaatiku ja loogiku Alan Mathison Turingi (1912
1954) snastatud videt ei saa testada, vaid see formuleeritakse
Churchi teesina (e. Turingi teesina):
Mingi formalisatsiooniga arvutatavate funktsioonide klass
langeb kokku funktsioonide klassiga, mis on leldse ini-
meste vi arvutite poolt suvaliste efektiivsete meetoditega
arvutatavad, s.t. iga intuitiivselt arvutatav funktsioon on ka
meie formalisatsiooni mttes arvutatav.
1
Konstrueerida sirkli ja joonlaua abil antud ringiga pindvrdne ruut.
Saksa matemaatik Carl Louis Ferdinand von Lindemann (18521939) testas
1882. a., et see lesanne on lahendamatu.
198 9. Mittelahenduvad probleemid
Churchi teesi kehtivust kinnitab tsiasi, et kellelgi ei ole seda
nnestunud mber lkata ning erinevad arvutatavuse miste for-
malisatsioonid on osutunud tepoolest ekvivalentseteks.
Turing vttis arvutuste tegemiseks kasutusele nn. Turingi
masina, mis sooritab arvutusi mlemas suunas lpmatul lahtriteks
jaotatud lindil. Selle lindi kik lahtrid, vlja arvatud lplik arv
lahtreid, on arvutuste alguses thjad, s.t. nad on tidetud spetsiaalse
thikusmboliga s
0
. Igasse lindi lahtrisse on kirjutatud ks smbol
lplikust lindithestikust s
0
, s
1
, . . . , s
n
ning igal arvutussammul
vaatleb inimene vi mehhaaniline arvuti mingit kindlat lindi
lahtrit. Ta oskab lugeda selles lahtris olevat smbolit, sinna
kirjutada ja liikuda vasakule vi paremale. Masin on igal ajahetkel
hes lplikust arvust seisunditest q
1
, . . . , q
m
.
Linti vib endale ette kujutada kui lpmatut raudteed, mis on
jaotatud liipritega lahtriteks. Raudteerbastel liigub vagun, mida
liigutab selle sees asuv mees, kes loeb liiprite vahelt smboleid,
kustutab neid ja kirjutab sinna uusi smboleid vastavalt tema kes
olevatele lehtedele, kuhu on kantud instruktsioonid, mida igas
seisundis teha.
Instruktsioon sltub nii arvutuste seisundist kui ka vaadeldavast
smbolist. Arvutaja sooritab he (n+4)-st vimalikust tegevusest:
peatab arvutamise;
liigub he lahtri vrra paremale (R);
liigub he lahtri vrra vasakule (L);
kirjutab vaadeldavasse lahtrisse smboli s
0
;
. . .
kirjutab vaadeldavasse lahtrisse smboli s
n
.
Peale nhtava tegevuse sooritab mees ka varjatud tegevuse: ta
mrab jrgmise instruktsiooni (seisundi).
Niisuguseid instruktsioonide kogumeid nimetataksegi Turingi
masinateks. Turingi masinaid vib esitada kas tabelitena, graa-
dena vi ksunelikute hulkadena.
9.1. Turingi masin 199
s
0
s
1
q
1
s
1
q
1
Lq
2
q
2
s
1
q
2
Lq
3
q
3
s
1
q
3

q
1
s
0
s
1
q
1
q
1
s
1
Lq
2
q
2
s
0
s
1
q
2
q
2
s
1
Lq
3
q
3
s
0
s
1
q
3
Joonis 9.1. Turingi masina kaks esitust.
S :L
1
S
1
:L
S
0
:S
1
S S :S
0
:S
1 0 1
:S
q
1
q q
2 3
Joonis 9.2. Turingi masina graaf.
Nide 9.1. Kirjeldame Turingi masinat, mis kirjutab thjale lindile
kolm hte: s
1
s
1
s
1
.
See masin on esitatud joonisel 9.1 tabelina ja ksunelikute hulgana
ning joonisel 9.2 graafina. Ksk q
i
s
j
s
k
q
l
tleb jrgmist:
Kui Turingi masinat interpreteeriv seade on seisundis q
i
ning
vaatleb smbolit s
j
, siis ta kirjutab lahtrisse smboli s
k
ja lheb
le seisundisse q
l
,
Toodud Turingi masin kirjutab vaadeldavasse ruutu smboli s
1
, liigub
vasakule, kirjutab s
1
, liigub veelkord vasakule, kirjutab s
1
ja peatub,
sest puudub tidetav instruktsioon. Me eeldame, et masin alustab td
vhima indeksiga seisundis, milleks on antud juhul seisund q
1
.
Turingi masina td on mistlik kirjeldada kui arvutusprot-
sessi konguratsioonide jada. Arvutuse konguratsioonis nida-
takse lindi hetkeseis, seadme seisund ja vaadeldav lahter ajahetkel.
Olgu Turingi masinat interpreteeriv seade arvutusprotsessi alguses
seisundis q
1
ja olgu kigisse lindi lahtritesse kirjutatud smbol s
0
.
200 9. Mittelahenduvad probleemid
1 7 5 4 3 2 10
12
11
1:L
0:R 0:L
1:L 1:L 1:0 1:R 1:R
0:R
1:L
0:R
1:L 1:R
0:L
0:1 0:1
1:L 0:L
9 4
0:L
1:L 0:L
8 6
Joonis 9.3. Kahekordistav Turingi masin.
Samastades seisundid ja smbolid nende indeksitega (q
1
= 1,
q
2
= 2, q
3
= 3, s
0
= 0, s
1
= 1), saame nites 9.1 kirjeldatud
Turingi masina korral jrgmise konguratsioonide jada:
0000000 0000100 0000100 0001100 0001100 0011100 ,

1

1

2

2

3

3
kus leval on nidatud lindi seis ja vaadeldava lahtri alla on
kirjutatud Turingi masinat interpreteeriva seadme seisundi number
selles konfiguratsioonis.
Nide 9.2. Joonisel 9.3 on Turingi masin, mis kahekordistab htede
arvu lindil.
Nide 9.3. Eelmises kahes nites toodud Turingi masinate hendamise
teel saame konstrueerida masina, mis kirjutab kigepealt thjale lindile
n hte ja kahekordistab siis htede arvu. Jrelikult kirjutab see Turingi
masin thjale lindile 2n hte.
Edaspidi huvitavad meid Turingi masinad, millega saab arvu-
tada tisarvulisi funktsioone. Vtame lindithestikuks hulga {0, 1}
ning kujutame arve hendssteemis.
Definitsioon 9.4. Turingi masin on standardkonguratsioonis n,
kui lindil on n jrjestikust hte ja lejnud lint on thi (s.t. koos-
neb nullidest), kusjuures lugemis-kirjutamispea vaatleb vasakpool-
seimat hte.
9.2. Mittelahenduvad probleemid 201
Thistame smboliga P positiivsete tisarvude hulga {1, 2, . . .}.
Definitsioon 9.5. Me tleme, et Turingi masin arvutab funktsiooni
f : P P, kui ta, alustades td vhima numbriga seisundis
standardkonguratsioonis n (n P), lpetab t standardkon-
guratsioonis f (n). Kui Turingi masin ei lpeta td vi peatub
mittestandardses konguratsioonis, siis f (n) = (mittemratud).
Nitest 9.2 selgub, et funktsiooni f (n) = 2n saab Turingi
masinatega arvutada.
lesanded
1. Konstrueerige Turingi masin, mis modelleerib teie igapevaseid te-
gemisi.
2. Leidke funktsiooni f (n) = 2n arvutamiseks Turingi masin, mille
seisundite arv on viksem kui 12 (nites 9.2).
9.2. Mittelahenduvad probleemid
Definitsioon 9.6. Olgu T Turingi masin ja f tema arvutatav
funktsioon. Turingi masina T produktiivsus on tema poolt thjale
lindile kirjutatud arv, s.t.

f (0), kui f (0) on mratud;


0, muidu.
Defineerime funktsiooni
p(n)
def
= kige produktiivsema n-seisundise
Turingi masina produktiivsus,
millega saab snastada virga kopra probleemi.
Konstrueerida Turingi masin thestikus {0, 1}, mis arvutab
funktsiooni p(n).
Nitame, et virga kopra probleemi ei saa Turingi masinatega
lahendada, s.t. ei leidu Turingi masinat, mis arvutaks produktiiv-
susfunktsiooni p(n). Testame alustuseks paar abitulemust.
202 9. Mittelahenduvad probleemid
Lemma 9.7. p(1) = 1.
Testus. Lemma testatakse kigi variantide lbivaatamisega,
vttes aluseks Turingi masinate esituse graade kujul. heseisun-
dise Turingi masina graas vib olla maksimaalselt kaks noolt.
0 noolega Turingi masina graafe on ainult ks. Kuna see masin
peatub kohe algseisundis, siis on tema produktiivsus 0.
Mitmesuguseid 2 noolega Turingi masina graafe on kokku 16.
Need Turingi masinad ei peatu kunagi, sest nad saavad alati tita
mingit tegevust.
1 noolega Turingi masina graafe on kokku 8. Need Turingi
masinad, mille noole smboliks on 1, peatuvad kohe. Masinad,
mille noolel on mrgend 0:R, 0:L vi 0:0, ei peatu, sest nad
ttavad lpmatus tsklis. Viimase 1 noolega Turingi masina, mille
noolel on mrgend 0:1, produktiivsus on 1. Jrelikult p(1) = 1.
Lemma 9.8. p(47) 100.
Testus. hendame kolm Turingi masinat (samastades nende alg-
ja lpptipud):
1. Masin, mis kirjutab thjale lindile 25 hte (selleks piisab
25 seisundist).
2. Masin, mis kahekordistab htede arvu (milleks vtame
12-seisundise Turingi masina nitest 9.2).
3. Masin, mis kahekordistab htede arvu (12 seisundit).
Tulemuseks on 47-seisundine Turingi masin, mis kirjutab thjale
lindile 100 hte.
Lemma 9.9. p(n + 1) > p(n).
Testus. lesanne 9.2.1.
9.2. Mittelahenduvad probleemid 203
Lemma 9.10. p(n + 11) 2n.
Testus. hendame omavahel kaks Turingi masinat:
1. Masin, mis kirjutab thjale lindile n hte (n seisundit).
2. Masin, mis kahekordistab htede arvu (12 seisundit).
Saadud (n + 11)-seisundise Turingi masina produktiivsus on 2n.
Teoreem 9.11. Virga kopra probleem on mittelahenduv.
Testus. Testame teoreemi vastuviteliselt. Oletame, et leidub
Turingi masin VK, mis arvutab funktsiooni p(n). Olgu sellel
masinal k seisundit. Teoreemi testamiseks hendame omavahel
kolm Turingi masinat:
1) masin, mis kirjutab thjale lindile n hte (n seisundit);
2) VK (k seisundit);
3) VK (k seisundit).
Tulemuseks on (n+2k)-seisundine Turingi masin produktiivsusega
p(p(n)). Seega kehtib iga arvu n korral
p(n + 2k) p(p(n)).
Lemma 9.9 phjal on p(n) kasvav funktsioon, mistttu
n + 2k p(n).
Tehes asenduse {n/n+11}, saame
n + 11 + 2k p(n + 11),
mis annab lemma 9.10 phjal vrratuse
n + 11 + 2k 2n.
Asendus {n/12+2k} annab nd vastuolu, sest vrratus
11 + 2k 12 + 2k
204 9. Mittelahenduvad probleemid
on samavrne vrratusega
0 1.
Jrelikult ei ole Turingi masinat VK olemas, mistttu funktsioon
p(n) ei ole Turingi mttes arvutatav. Churchi teesi phjal vime
vita, et produktiivsusfunktsioon p(n) on mitte ainult Turingi
mttes mittearvutatav, vaid seda ei saa arvutada mitte hegi
mehhaanilise arvutusvahendiga.
lesanded
1. Testage lemma 9.9.
2. **Testage, et p(2) = 4.
Peatumisprobleem on algoritmiliselt mittelahenduva lesande
teine klassikaline nide. Selle testamiseks kasutatakse tavali-
selt nn. diagonaliseerimismeetodit. Laiendame kigepealt Turingi
masinatel arvutatavate funktsioonide miste mitme muutuja funkt-
sioonidele.
Definitsioon 9.12. Me tleme, et Turingi masin M arvutab funkt-
siooni f
M
: P
m
P, kui ta, alustades td vhima numbriga
seisundis standardkonguratsioonis n
1
0n
2
0 . . . 0n
m
(n
i
P), l-
petab t standardkonguratsioonis f
M
(n
1
, n
2
, . . . , n
m
). Kui M
ei lpeta td vi peatub mittestandardses konguratsioonis, siis
f
M
(n
1
, . . . , n
m
) = (mittemratud).
Definitsioon 9.13. Funktsioon f (x
1
, . . . , x
m
) on Turingi mttes
arvutatav, kui leidub seda arvutav Turingi masin.
Niteks joonisel 9.3 toodud Turingi masin arvutab funktsiooni
f (n) = 2n, mistttu funktsioon f (n) = 2n on Turingi mttes
arvutatav.
Kik Turingi masinad saab esitada lpmatu loeteluna
2
M
1
, M
2
, M
3
, . . . ,
2
Sellist Turingi masinate efektiivset loetelu nimetatakse Turingi masinate
Gdeli numeratsiooniks.
9.2. Mittelahenduvad probleemid 205
mis annab meile omakorda kigi Turingi mttes arvutatavate
1 muutuja funktsioonide loetelu
f
1
, f
2
, f
3
, . . . ,
kus Turingi masin M
n
arvutab funktsiooni f
n
.
Snastame nd Turingi masinate peatumisprobleemi:
Leida efektiivne protseduur Turingi masinate peatumise
kontrollimiseks.
lesanded
3. *Pakkuge vlja Turingi masinate efektiivse loetlemise moodus.
4. **Nidake, et virga kopra probleemi mittelahenduvusest jreldub
Turingi masinate peatumisprobleemi mittelahenduvus.
5. Peatumisprobleemi korral on vimalik vaadelda kahte erijuhtu:
Endal peatumise probleem M
n
(n)? (Kas Turingi masin M
n
peatub sisendil n?)
ldine peatumisprobleem: M
m
(n)?
Nidake, et endal peatumise probleemi mittelahenduvusest jreldub
ldise peatumisprobleemi mittelahenduvus.
Kuigi peatumisprobleemi mittelahenduvus jreldub virga kopra
probleemi mittelahenduvusest, pakub peatumisprobleemi testus
ka iseseisvat huvi.
Teoreem 9.14 (peatumisprobleemi mittelahenduvus). Ei leidu
Turingi masinat, mis lahendaks Turingi masinate peatumisprob-
leemi.
Testus. Oletame, et leidub Turingi masin, mis arvutab ldise
peatumisprobleemi karakteristliku funktsiooni
3
3
Karakteristlikes funktsioonides thistab tavaliselt 1 tesust ja 0 vrust.
Kuna me kasutasime Turingi masinates naturaalarvude hulga asemel posi-
tiivsete tisarvude hulka P = {1, 2, . . .}, siis asendasime siin vrtused 1 ja 0
arvudega 2 ja 1.
206 9. Mittelahenduvad probleemid
h(x, y) =

2, kui M
x
(y);
1, kui M
x
(y).
Seda funktsiooni arvutava Turingi masina phjal saab konstruee-
rida uue Turingi masina, mis arvutab funktsiooni
g(x) =

, kui h(x, x) = 2;
1, kui h(x, x) = 1
ehk noolte keeles
g(x) =

, kui M
x
(x);
, kui M
x
(x).
Funktsioon g(x) puudub konstruktsiooni tttu Turingi mttes
arvutatavate 1 muutuja funktsioonide loetelust
f
1
, f
2
, f
3
, . . . ,
sest oletus, et mingi arvu m korral g = f
m
, annab vastuolu
f
m
(m) f
m
(m).
Jrelikult ei ole peatumisprobleemi karakteristlik funktsioon
h(x, y) Turingi mttes arvutatav.
Diagonaliseerimise
4
ideed selgitab jrgmine tabel, kus m-nda
rea n-ndas veerus on funktsiooni f
m
vrtus kohal n.
f
1
(1) f
1
(2) f
1
(3) . . . f
1
(m) . . .
f
2
(1) f
2
(2) f
2
(3) . . . f
2
(m) . . .
f
3
(1) f
3
(2) f
3
(3) . . . f
3
(m) . . .
. . . . . . . . .
.
.
. . . . . . .
f
m
(1) f
m
(2) f
m
(3) . . . f
m
(m) . . .
. . . . . . . . . . . . . . .
.
.
.
4
Saksa matemaatik Georg Cantor (18451918) testas diagonaliseerimis-
meetodiga, et ligus [0, 1] on reaalarve rohkem kui naturaalarve hulgas .
Ta testas samuti, et iga hulga korral on tema kigi osahulkade hulgas roh-
kem elemente kui hulgas endas. Kigi hulkade hulga korral saame siit Cantori
paradoksi.
9.2. Mittelahenduvad probleemid 207
Funktsioon g erineb igast arvutatavast funktsioonist f
m
diagonaal-
elemendil m:
g(m) = f
m
(m).
Me testasime, et mitte kski Turingi masin ei suuda lahendada
peatumisprobleemi kogu Turingi masinate lpmatu loetelu jaoks
korraga. Churchi teesiga saab selle tulemuse le kanda kigile
efektiivsetele algoritmidele, s.t. mitte kski algoritm ei suuda la-
hendada peatumisprobleemi kigi Turingi masinate ja kigi nende
sisendandmete jaoks korraga. Kll vib peatumisprobleem lahen-
duda iga konkreetse Turingi masina korral. Niteks joonisel 9.3
toodud kahekordistav Turingi masin peatub igal sisendi n P
korral.
Turingi masinate efektiivsetel loeteludel on peale peatumis-
probleemi mittelahenduvuse veel teisigi huvitavaid omadusi. heks
neist on loetelude universaalsete funktsioonide arvutatavus.
Definitsioon 9.15. Funktsioonide loetelu f
1
, f
2
, . . . universaalne
funktsioon on funktsioon
f (m, n) = f
m
(n) (m, n P).
Teoreem 9.16 (loetlemisteoreem). Kigi Turingi mttes arvuta-
tavate 1 muutuja funktsioonide loetelu f
1
, f
2
, . . . universaalne
funktsioon on arvutatav.
Ka seda teoreemi on vimalik testada nii formaalselt, konst-
rueerides antud Turingi masinate loetelu jaoks konkreetse univer-
saalse Turingi masina, kui ka mitteformaalselt, selgitades mis-
moodi selle masina t peaks phimtteliselt toimuma ning viida-
tes seejrel Churchi teesile.
lesanded
6. Andke loetlemisteoreemi mitteformaalne testus.
7. **Nidake, et universaalne funktsioon f (m, n) ei ole laiendatav
kikjal mratud arvutatavaks funktsiooniks.
208 9. Mittelahenduvad probleemid
9.3. Predikaatarvutuse mittelahenduvus
Alonzo Church testas, et predikaatarvutus ei ole lahenduv,
s.t. pole vimalik kontrollida, kas suvaliselt valitud predikaat-
arvutuse valem on loogiliselt tene vi mitte.
Teoreem 9.17 (Church). Esimest jrku loogika on mittelahenduv.
Testus. Teoreemi testamiseks taandame ldise peatumisprob-
leemi esimest jrku loogika tesuse probleemile, s.t. nitame, et
kui esimest jrku loogikas on tesuse probleem lahenduv, siis on
ka peatumisprobleem lahenduv.
Olgu meil Turingi masin T , mille sisendiks on arv n. Konst-
rueerime Turingi masina T kirjelduse phjal predikaatarvutuse
valemite hulga ja valemi h, nii et
|= h T (n).
Me interpreteerime neid valemeid loomulikul viisil, nii et nad
kirjeldavad Turingi masina T td sisendil n:
Valem h vidab, et Turingi masin T peatub sisendil n:
T (n).
Valemite hulk tleb, et masina sisendiks on arv n ja
masin ttab vastavalt oma kirjeldusele.
Eeldame, et masin T alustab td ajahetkel 0, vaadeldes pa-
rasjagu 0-ndat lahtrit. Eeldame, et Turingi masina lint on vasakule
ja paremale lpmatu ning lindithestik vib peale numbrite 0 ja
1 sisaldada ka teisi smboleid. Lepime veel kokku, et enne tle
asumist ja prast peatumist ei ole masina seisund, vaadeldav lindi
positsioon ning loetav smbol mratud.
Toome predikaatarvutusse uued predikaatsmbolid
Q
i
(1 i r),
S
j
(0 j m),
9.3. Predikaatarvutuse mittelahenduvus 209
mis vastavad Turingi masina T seisundite hulgale Q =
{q
1
, q
2
, . . . , q
r
} ja lindithestikule = {s
0
, s
1
, . . . , s
m
}. Nii saame
esimest jrku loogika signatuuris 0;

; {Q
i
}, {S
j
}, =, <, kus {Q
i
}
ja {S
j
} thistavad vastavaid predikaatsmbolite loetelusid indeksite
i ja j jrgi.
Selle signatuuri loomulikuks interpretatsiooniks on struktuur
I = ; 0; +1; {Q
i
}, {S
j
}, =, <,
mis koosneb tisarvude hulgast tema loomulikus jrjestuses,
tisarvust null ja he liitmise tehtest ning predikaatsmbolite Q
i
ja S
j
interpretatsioonidest, mis vastavad masina T kirjeldusele:
I |= Q
i
(t, x) masin T on ajahetkel t seisundis q
i
ning vaatleb x-ndat lahtrit;
I |= S
j
(t, x) ajahetkel t on x-ndas lahtris sm-
bol s
j
.
Kirjeldame nd valemite hulka . Iga kirjutamisksu q
i
s
j
s
k
q
l
kohta leidub temas valem
t xy {[Q
i
(t, x) & S
j
(t, x)]
[Q
l
(t

, x) & S
k
(t

, x) & (y = x
(S
0
(t, y) S
0
(t

, y)) & . . . &


(S
m
(t, y) S
m
(t

, y)))]},
s.t. ksu tulemusel muutub ainult vaadeldava lahtri sisu ning kik
lejnud lahtrid jvad samaks.
Iga paremale liikumise ksu q
i
s
j
Rq
l
kohta on hulgas valem
t xy {[Q
i
(t, x) & S
j
(t, x)]
[Q
l
(t

, x

) & (S
0
(t, y) S
0
(t

, y)) & . . . &


(S
m
(t, y) S
m
(t

, y))]}
ning iga vasakule liikumise ksu q
i
s
j
Lq
l
kohta valem
210 9. Mittelahenduvad probleemid
t xy {[Q
i
(t, x

) & S
j
(t, x

)]
[Q
l
(t

, x) & (S
0
(t, y) S
0
(t

, y)) & . . . &


(S
m
(t, y) S
m
(t

, y))]}.
Hulgas on ka valem, mis tleb, et ajahetkel 0 on masin
algseisus:
Q
1
(0, 0) & S
1
(0, 0) & S
1
(0, 0

) & . . . & S
1
(0, 0
(n1)
)&
y [(y = 0 & y = 0

& . . . & y = 0
(n1)
) S
0
(0, y)],
s.t. algseisus on lindil n hte ja lejnud lahtrites on nullid. Kui
n = 0, siis on viimane valem kujul
Q
1
(0, 0) &y S
0
(0, y).
Hulgas on veel seoste

ja < definitsioonid:
zx (z = x

) &zxy (z = x

& z = y

x = y),
xyz (x < y & y < z x < z)&
xy (x

= y x < y) &xy (x < y x = y).


On selge, et interpretatsioonis I on kik valemid tesed,
s.t. interpretatsioon I on valemite hulga mudeliks.
Valem h vidab, et Turingi masin T peatub sisendil n. Kuna
Turingi masin peatub ainult juhul, kui mingi seisundi ja smboli
paari korral on masina tegevus mramata, siis vib valemiks h
vtta disjunktsiooni le kigi selliste seisundi-smboli paaride:

puudub tegevus qi sj . . .
t x (Q
i
(t, x) & S
j
(t, x)).
Mittepeatuvate Turingi masinate korral (mille tegevus kirjeldatud
kigi seisundi-smboli paaride korral) vib valemiks h vtta
loogiliselt vra valemi
0 = 0.
Nitame, et
|= h T (n).
9.3. Predikaatarvutuse mittelahenduvus 211
Oletame, et |= h. Kuna interpretatsioon I on valemite hulga
mudeliks, siis kehtib I |= ja seega I |= h. Valemi h tesus on
aga samavrne Turingi masina T peatumisega sisendil n.
Oletame nd, et T (n) ja lpetamise momendil s on masin
seisundis q
i
, vaadeldes p-ndas lahtris smbolit s
j
. Kirjeldame
arvutuse konfiguratsiooni ajahetkel s valemiga
m
s
= Q
i
(0
(s)
, 0
(p)
) & S
j1
(0
(s)
, 0
(p1)
) &. . . &
S
j
(0
(s)
, 0
(p)
) & . . . & S
jv
(0
(s)
, 0
(pv)
)&
y [y = 0
(p1)
& . . . & y = 0
(p)
& . . . &
y = 0
(pv)
S
0
(0
(s)
, y)],
kus p
1
, . . . , p, . . . , p
v
on lindi jrjestikuste lahtrite numbrite jada
ja s
j1
, . . . , s
j
, . . . , s
jv
nendes lahtrites asuvate smbolite jada.
Niteks algseisu ksitlev valem hulgast kirjeldab arvutuste
alghetke konfiguratsiooni m
0
. Kuna arvutuste kigus saab liikuda
ka 0-ndast lahtrist vasakule, siis tuleb kokku leppida, kuidas me
viitame negatiivse numbriga lahtritele. Lahtrile numbriga p = q
(q > 0) vib niteks viidata valemitega kujul
Q
i
(x, 0
(p)
) = z (Q
i
(x, z) & z
(q)
= 0).
Matemaatilise induktsiooniga saab testada (lesanne 9.3.1), et
|= m
s
,
kus m
s
on suvaline arvutuse konfiguratsioon ajahetkel s 0.
See valem kehtib igal arvutussammul. Jrelikult kehtib ta ka
juhul, kui g on konfiguratsioon, milles Turingi masin T peatub:
|= g.
Kuna Turingi masin T on lpetamise momendil s seisundis q
i
ja
vaatleb p-ndas lahtris smbolit s
j
, siis
g |= Q
i
(0
(s)
, 0
(p)
) & S
j
(0
(s)
, 0
(p)
).
Seega
g |= t x (Q
i
(t, x) & S
j
(t, x)),
millest jreldub g |= h ja |= h.
212 9. Mittelahenduvad probleemid
lesanded
1. **Testage, et
|= m
s
,
kus m
s
on suvaline arvutuse konfiguratsioon ajahetkel s (s 0).
2. **Konstrueerige valemite hulk ja valem h Turingi masina
{q
1
1Rq
1
, q
1
0Lq
2
, q
2
10q
2
}
jaoks, kui n = 0 ja n = 2. Nidake, et |= h, kui n = 0.
10. Aritmeetika
mittetielikkus
Inimsoo saatuslik kalduvus loobuda mtlemast asjade
le, mille suhtes ei valitse enam kahtlusi, on phjus-
tanud poole tema vigadest.
John Stuart Mill (18061873)
Inimene ei saa aru ei olematusest, millest ta esile
kerkib, ega lpmatusest, mis teda alla neelab.
Blaise Pascal (16231662)
Kuna geomeetria ja algebra on intuitiivselt kige paremini miste-
tavad matemaatikaharud, siis on neid ptud korduvalt formalisee-
rida. Tuntud on geomeetria aksiomaatiline lesehitus Eukleidese
(u. 365300 e.m.a.) poolt ja naturaalarvude kirjeldus Dedekindi
(18311916) poolt, mis sai tuntuks Peano aksiomaatikana. Arit-
meetika all mistetakse ldiselt abstraktset struktuuri, mis koosneb
kigi naturaalarvude hulgast ja selle elementaartehetest: liitmi-
sest, korrutamisest jms.
10.1. Formaalne aritmeetika
Olgu aritmeetika keele L
N
signatuur
N
= 0;

, +, ; =. Kir-
jeldame formaalse aritmeetika kui esimest jrku teooria N Peano
aksioomidega:
214 10. Aritmeetika mittetielikkus
(P1) xy (x

= y

x = y).
(P2) x (x

= 0).
(P3) x (x = 0 y (x = y

)).
(P4) x (x + 0 = x).
(P5) xy (x +y

= (x +y)

).
(P6) x (x 0 = 0).
(P7) xy (x y

= (x y) +x).
(P8) P(0) &x(P(x) P(x

)) x P(x) induktsiooniaksioom
(P on suvaline predikaat)
Aksioom (P1) tleb, et jrgmise elemendi leidmise tehe

on hene e. injektiivne. Aksioomid (P2) ja (P3) vidavad, et
leidub ainult ks esimene element, nimelt 0. Aksioomid (P4)
(P7) deneerivad induktiivselt liitmis- ja korrutamistehte. Indukt-
siooniaksioom (P8) formaliseerib aga matemaatilise induktsiooni
printsiibi: alustades elemendist 0 on tehtega

vimalik juda iga
naturaalarvuni.
Formaalsel aritmeetikal on standardinterpretatsioon
= , 0, +1, +, ,
mis koosneb naturaalarvude hulgast ja selle harilikest tehetest.
Kiki teisi teooria N mudeleid, mis ei ole mudeliga isomorfsed,
nimetatakse aritmeetika mittestandardseteks mudeliteks.
Selgub, et formaalne aritmeetika on mittetielik ja mittela-
henduv. Phjuseks on helt poolt esimest jrku predikaatarvutuse
piiratus ja teiselt poolt formaalse aritmeetika suur vljendus-
vimsus. Norra matemaatik Thoralf Skolem (18871963) testas
1934. a., et aritmeetikal leidub loenduv mittestandardne mudel,
mis sisaldab lisaks tavalistele arvudele ka lpmatult suuri arve.
Gdel formaliseeris aga 1931. a. aritmeetikas valetaja paradoksi,
nidates aritmeetika sisemist vastuolulisust.
10.1. Formaalne aritmeetika 215
Thistame formaalsed naturaalarvud smbolarvudega.
0 = 0, 1 = 0

, . . . , m = 0
m

.
Formaalses aritmeetikas saab testada paljud naturaalarvude
hulga omadused. Testame niteks smbolarvude hulga lpmatuse.
Lause 10.1. Teooria N kik mudelid on lpmatud.
Testus. Nitame, et m = n
N
m = n (m, n ). Olgu
m = n. Siis kehtib kas m < n vi n < m. Olgu m < n.
1. m = n hpotees
2. 0
m

= 0
n

smbolarvude definitsioon
3. 0 = 0
nm

2 m korda (P1), UI ja MP
4. t

= 0 3 t = n m1, = smmeetria
5. t

= 0 aksioom (P2)
6. t

= 0 & t

= 0 4,5 Conj
7. m = n 16 IP
Analoogilise testuse saab konstrueerida ka n < m korral. Jreli-
kult on erinevatele arvudele vastavad objektid erinevad. Arve on
aga loenduv hulk.
Teoorias N saab kirjeldada jrjestusseosed:
x < y
def
= w(w = 0 & x +w = y),
x y
def
= x < y x = y.
Definitsioon 10.2. Naturaalarvuline predikaat R(x
1
, . . . , x
n
) on
aritmeetikas vljendatav (e. aritmeetiline predikaat), kui leidub
valem (x
1
, . . . , x
n
) L
N
, nii et iga k
1
, . . . , k
n
korral
R(k
1
, . . . , k
n
) = t |= (k
1
, . . . , k
n
).
216 10. Aritmeetika mittetielikkus
Niteks seost x
1
= x
2
vljendab valem x
1
= x
2
, sest vrdust
interpreteeritakse alati objektide samasusena:
k
1
= k
2
|= k
1
= k
2
,
k
1
= k
2
|= k
1
= k
2
.
Seost x
1
< x
2
vljendab aga valem w(w = 0 & x
1
+ w = x
2
),
kuna
k
1
< k
2
|= w(w = 0 & k
1
+w = k
2
),
k
1
< k
2
|= w(w = 0 & k
1
+w = k
2
).
Defineerime kvantori leidub tpselt ks valemiga

1
x p(x)
def
= x p(x) &xy (p(x) & p(y) x = y).
Sarnaselt aritmeetikas vljendatavate predikaatidega saab de-
neerida ka aritmeetikas vljendatavad funktsioonid.
Definitsioon 10.3. Naturaalarvuline funktsioon f (x
1
, . . . , x
n
) on
aritmeetikas vljendatav, kui leidub valem (x
1
, . . . , x
n
, x
n+1
)
L
N
, nii et iga k
1
, . . . , k
n+1
korral
1) kui f (k
1
, . . . , k
n
) = k
n+1
, siis |= (k
1
, . . . , k
n
, k
n+1
);
2) |=
1
x
n+1
(k
1
, . . . , k
n
, x
n+1
).
Niteks nullfunktsioon
z(x) = 0
on aritmeetikas vljendatav valemiga
(x)
def
= x
1
= x
1
& x
2
= 0.
Olgu z(k
1
) = k
2
, s.t. k
2
= 0. Siis saame vrduse omaduste phjal
|= k
1
= k
1
& 0 = 0,
|=
1
x
2
(x
1
= x
1
& x
2
= 0),
10.2. Gdeli teoreemid aritmeetika mittetielikkusest 217
sest vrdustest x
2
= 0 ja y = 0 jreldub x
2
= y. Ka successor-
funktsioon
s(x) = x + 1
on aritmeetikas vljendatav. Selleks sobib niteks valem
(x)
def
= x
2
= x

1
.
Kurt Gdel (19061978) nitas, et kik arvutatavad naturaal-
arvulised funktsioonid ja predikaadid on aritmeetikas vljendata-
vad. Ta ti selleks sisse -funktsiooni, mis vimaldab aritmeetikas
vljendada viteid naturaalarvude lplike jadade kohta.
Teoreem 10.4 (Gdel). Iga kikjal mratud arvutatav funktsioon
on aritmeetikas vljendatav.
Jreldus 10.5. Iga arvutatav predikaat on aritmeetikas vljenda-
tav.
lesanded
1. Testage, et aritmeetikas on vljendatav successor-funktsioon.
2. Nidake, et funktsioon f (x
1
, . . . , x
n
) on aritmeetikas vljendatav
tema graafik f (x
1
, . . . , x
n
) = y on aritmeetikas vljendatav.
3. Phjendage, miks on aritmeetikas vljendatav mitte kuskil mra-
tud funktsioon (x).
10.2. Gdeli teoreemid aritmeetika
mittetielikkusest
Matemaatika ajaloost on teada mitmeid niteid intuitiivselt sel-
getest teooriatest, milles hiljem avastatakse ebatpsusi vi vastu-
olusid. Eukleidese geomeetriat peeti kuni 19. sajandini ainuvima-
likuks geomeetriaks. Arvati, et selle aksioomide kehtivus on vl-
jaspool kahtlust. Siis aga seati paralleelide aksioom kahtluse alla
218 10. Aritmeetika mittetielikkus
ning saksa matemaatik Georg Friedrich Bernhard Riemann (1826
1866), vene matemaatik Nikolai Lobat"evski (17931856) ja ungari
matemaatik Jnos Bolyai (18021860) konstrueerisid prast selle
krvalejtmist mitu mitteeukleidilist geomeetriat.
Samasugune olukord tekkis eelmisel sajandivahetusel ka
Cantori hulgateoorias. Selles intuitiivselt lihtsas ja selges teoo-
rias avastati mitu vastuolu, millest kuulsamad on Russelli ja
Cantori paradoksid.
Mitme sajandi vltel arvati, et Newtoni mehhaanika kirjel-
dab ideaalselt kehade liikumist ja vastastikuseid mjusid. Kuid
Einsteini relatiivsusteooria nitas, et kehade massi ja kiirust saab
ksitleda ka Newtonist erinevalt: keha aeglasel liikumisel on selle
mass konstantne, kuid valguse kiirusele lhedastel kiirustel keha
mass vheneb. Seda kinnitavad ka fsikute poolt mikromaailmas
tehtud katsed.
Aritmeetika tielikkuse probleem kasvas vlja Hilberti prog-
rammist. Saksa matemaatik David Hilbert (18621943) pdis
selle sajandi alguses matemaatilistes testustes korda luua. Ta
tahtis esitada kogu olemasoleva matemaatika htse formaalse ak-
siomaatilise ssteemina, mille niitseid testusi tunnustaksid kik
matemaatikud. See ssteem pidi loomulikult sisaldama ka tava-
list naturaalarvulist aritmeetikat. Hilbert pidas tarvilikuks testada
rangelt nii selle ssteemi mittevasturkivus kui ka tielikkus.
Definitsioon 10.6. Me tleme, et teooria N on mittetielik, kui
leidub lause p L
N
, nii et

N
p ja
N
p.
Saksa loogik Kurt Gdel (19061978) testas 1931. aastal,
et Hilberti programm on sisemiselt vastuoluline, mistttu seda
ei saagi phimtteliselt ellu viia. Ta nitas, et kui aritmeetikat
sisaldav formaalne teooria ei ole vasturkiv, siis ta ei ole tielik.
Seega saab selle teooria tulemusi erinevalt interpreteerida ning
ei ole olemas htset kogu olemasolevat matemaatikat hlmavat
formaalset teooriat.
10.2. Gdeli teoreemid aritmeetika mittetielikkusest 219
Oletame, et vaadeldaval teoorial leidub mudel. Suvalise kin-
nise valemi p korral on selles mudelis tene kas valem p ise vi
tema eitus p. Kuna see teooria ksitleb kogu olemasolevat ma-
temaatikat, siis tema mittetielikkus thendab, et leidub niisugune
matemaatiline vide, mida ei saa rangelt testada ega ka mber
lkata.
Me vime vtta konstrueeritava teooria aksioomideks aritmee-
tika kigi teste valemite hulga
= { p L
N
| |= p }.
Saadud teooriat nimetatakse standardinterpretatsiooni elemen-
taarteooriaks ( ). See teooria on kll tielik, kuid tema ak-
sioomide hulk ei ole enam lahenduv. Aksioomide hulga lahendu-
vus ja tuletusreeglite hulga lplikkus on aga praktikas kasutatavate
teooriate iseenesestmistetavad omadused.
Teoreem 10.7 (Gdeli esimene teoreem aritmeetika mittetie-
likkusest). Iga lahenduv mittevasturkiv aksiomaatiline teoo-
ria N, mis sisaldab Peano aksioome, on mittetielik, s.t.
= { p L
N
|
N
p }

=
.
Testus. Olgu {M
i
} Turingi masinate Gdeli numeratsioon. De-
neerime predikaadi
T (e, x, y)
def
= Turingi masin M
e
peatub sisen-
dil x tpselt y sammu jooksul.
Predikaat T (e, x, y) on Churchi teesi phjal arvutatav. Jrelikult on
ta aritmeetikas vljendatav. Kuna teooria N on Peano aksiomaatika
ldistus, siis on T (e, x, y) vljendatav ka teoorias N ja leidub
seda vljendav valem (e, x, y) L
N
. Nd saab teoorias N
valemiga
(e, x)
def
= y (e, x, y)
vljendada predikaadi M
e
(x) (Turingi masin M
e
peatub sisen-
dil x). Oletame, et teooria N on tielik. Siis kas

N
(m, n) vi
N
(m, n).
220 10. Aritmeetika mittetielikkus
Kuna lahenduva teooria teoreemide hulk on rekursiivselt loetletav,
siis lahendab loetlemisalgoritm ka ldise peatumisprobleemi:

N
(m, n) M
m
(n),

N
(m, n) M
m
(n) (ei peatu).
ldine peatumisprobleem on aga mittelahenduv, mistttu teooria
N ei saa olla tielik.
Gdeli teine teoreem aritmeetika mittetielikkusest vidab, et
kui aritmeetika on mittevasturkiv, siis ei saa temas tuletada
valemit, mis vljendab tema enda mittevasturkivust. Seega peab
aritmeetika mittevasturkivuse testamiseks vtma kasutusele te-
mast ldisema teooria. Niteks vib proovida testada formaalse
aritmeetika mittevasturkivust formaalses hulgateoorias. Kuid siis
oleks vaja testada ka formaalse hulgateooria mittevasturkivus,
milleks tuleb konstrueerida veel ldisem formaalne teooria.
lesanded
1. Nidake, et formaalse aritmeetika kigi teoreemide hulk on rekur-
siivselt (s.t. algoritmiliselt) loetletav.
11. Krgemat jrku
loogika
11.1. Aritmeetika kui teist jrku teooria
Esimest jrku loogikas tohib kvantitseerida ainult indiviidmuutu-
jaid. Matemaatiliste teooriate esitamisel kvantitseeritakse sageli
ka funktsioone ja predikaate. Vtame niteks pidevusaksioomi
1
Igal lalt tkestatud reaalarvude hulgal on
olemas lemine raja.
Reaalarvude hulgad kujutavad endast reaalarvudel defineeritud
predikaate. Jrelikult vidab pidevusaksioom, et igal reaalarvulisel
predikaadil leidub minimaalne lemine tke.
Ka induktsiooniaksioomis
P0 &x (Px Px

) x Px
on P suvaline predikaat ning tema sidumine ldisuskvantoriga P
annab meile teist jrku predikaatloogika aksioomi. Kui me ksit-
leme formaalset aritmeetikat kui esimest jrku teooriat, siis annab
induktsiooniaksioom iga predikaadi Px korral uue aksioomi, mis-
tttu aksioomide hulk on lpmatu. Naturaalarvude hulga korral on
vimalik konstrueerida kontinuaalne arv erinevaid predikaate Px.
1
G. Kangro. Matemaatiline anals I. Tallinn, 1982, lk. 17.
222 11. Krgemat jrku loogika
Esimest jrku formaalsel aritmeetikal on lisaks naturaalarvude hul-
gale ka mittestandardsed mudelid. Formaalne aritmeetika on aga
teist jrku teooriana lplikult aksiomatiseeritav ning tema ainsaks
mudeliks on aritmeetika standardinterpretatsioon.
11.2. Teist jrku loogika
Lubades esimest jrku loogika keeles kasutada lisaks indiviid-
muutujatele ka lause-, predikaat- ja funktsionaalmuutujaid, mida
vib siduda ldisus- ja eksistentsikvantoritega, on lihtne le minna
esimest jrku loogikast teist jrku loogikasse. Teist jrku loogika
semantika ei erine oluliselt esimest jrku loogika omast: n-kohalist
predikaatmuutujat ptakse asendada kikvimalike n-kohaliste
seostega. mis on deneeritavad vaadeldava interpretatsiooni uni-
versumil, ning vabu muutujaid ksitletakse selliselt, nagu nad
oleksid seotud ldisuskvantoriga.
Krgemat jrku loogikas on paljusid misteid tunduvalt lihtsam
defineerida kui esimest jrku loogikas. Niteks saab Leibnizi
vrduse printsiibi, mis vidab, et kui kahel objektil on hed
ja samad omadused, siis vib need objektid samastada, esitada
definitsioonina
x = y
def
= P (Px Py).
Definitsiooni aluseks on tdemus, et erinevaid objekte on vimalik
alati semantiliselt eristada, sest me saame deneerida abstraktse
omaduse, mis on hel objektil tidetud, teisel aga ei ole. Te-
gelikult on Leibnizi vrduse printsiip esitatav ka esimest jrku
loogikas. Selleks vtame kasutusele binaarse predikaadi , mis
rakendab oma esimest argumenti teisele argumendile, ja ksitleme
predikaatsmboleid kui indiviidmuutujaid sobivas esimest jrku
teoorias:
P ( (P, x) (P, y)).
Ent krgemat jrku loogika vimaldab esitada sellised vited palju
lihtsamal ja loomulikumal kujul.
11.3. Kompaktsusteoreem 223
11.3. Kompaktsusteoreem
Esimest jrku predikaatarvutuse tielikkuse teoreemist jreldub
vahetult mitu olulist tulemust, nagu Skolemi-Lwenheimi teoreem
ja kompaktsusteoreem. Me nimetame teooriaks suvalist valemite
hulka. Teooria mudel on interpretatsioon, milles on tesed kik
selle teooria valemid. Interpretatsioon on lplik, kui tema univer-
sum on lplik.
Teoreem 11.1 (Skolemi-Lwenheimi teoreem, 1915). Kui esi-
mest jrku teoorial leidub lpmatu mudel, siis leidub tal ka
lplik vi loenduv mudel.
Seda teoreemi nimetatakse vahel ka Skolemi-Lwenheimi las-
kumisteoreemiks vastandina Skolemi-Lwenheimi tusmisteoree-
mile.
Teoreem 11.2 (Skolemi-Lwenheimi tusmisteoreem). Kui esi-
mest jrku teoorial leidub lpmatu mudel, siis leidub tal mudel ka
iga vimsuse korral, mis on selle mudeli vimsusest suurem.
Nimetatud teoreemidest jreldub, et esimest jrku loogikas ei
saa lpmatuid vimsusi eristada. Kuna esimest jrku predikaat-
arvutuses langevad tuletatavuse ja loogilise jrelduvuse misted
kokku, siis kehtib veel jrgmine teoreem.
Teoreem 11.3 (kompaktsusteoreem). Kui |= p, siis leidub lp-
lik hulk , nii et |= p.
Vahel nimetatakse kompaktsusteoreemiks tema jreldust.
Jreldus 11.4. Kui teooria igal lplikul alamteoorial leidub
mudel, siis leidub mudel ka teoorial .
lesanded
1. Testage kompaktsusteoreem ja selle jreldus.
224 11. Krgemat jrku loogika
11.4. Vljendatavus teist jrku loogikas
Jrgnevalt nitame kompaktsusteoreemiga esimest jrku loogika
piiratust.
Teoreem 11.5 (Henkin, 1949). Kui teoorial leidub kuitahes
suur lplik mudel, siis leidub tal ka lpmatu mudel, s.t. esimest
jrku loogikas ei saa lplikkust ja lpmatust eristada.
Testus. Olgu esimest jrku teooria, millel leidub kuitahes
suur lplik mudel. Teooria

saamiseks lisame teooriale


kikvimalikud valemid
n
(n = 1, 2, . . .), mis vidavad, et
leidub vhemalt n erinevat elementi
2
. Kuna teooria

igal lplikul
alamteoorial leidub mudel, on kompaktsusteoreemi phjal mudel
ka tal endal. Valemite
n
tesuse tttu on see mudel lpmatu.
Kuna

, siis on saadud mudel ka esialgse teooria mudel.


Teist jrku loogikas saab eristada lplikke ja lpmatuid hulki.
Selleks sobib niteks valem

<0
def
= f (Inj(f ) Surj(f )),
s.t. iga injektiivne funktsioon on samal ajal ka srjektiivne, kus
Inj(f )
def
= xy (f (x) = f (y) x = y),
Surj(f )
def
= xy (f (y) = x).
lesanded
1. Phjendage, miks valem
<0
on kigis lplikes interpretatsiooni-
des tene ja kigis lpmatutes interpretatsioonides vr.
Jrgnevalt nitame, et esimest jrku aritmeetikal leiduvad
loenduvad mittestandardsed mudelid.
2
Niteks n
def
= x1 . . . xn(x1 = x2 & x1 = x3 & . . . & xn1 = xn).
11.4. Vljendatavus teist jrku loogikas 225
Teoreem 11.6 (Skolemi teoreem aritmeetika mittestandardsetest
mudelitest, 1934). Olgu esimest jrku teooria, mille signatuuris
on smbolid 0 ja

(successor-funktsioon) ning mille mudeliks
on aritmeetika standardinterpretatsioon . Siis leidub teoorial
loenduv mudel , mis pole mudeliga isomorfne.
Teooriaks vib vtta niteks kik formaalse aritmeetika
(teooria N) teoreemid vi kik aritmeetika standardinterpretatsioo-
nis tesed valemid (s.t. mudeli elementaarteooria)
( ) = { p | |= p }.
Testus. Olgu loetletud omadustega teooria. Teooria

saa-
miseks lisame signatuuri uue konstandi c ja aksioomid c = n
(n = 0, 1, 2, . . .), kus n thistab n-ndat smbolarvu. Teooria

igal lplikul alamteoorial on olemas mudel, milleks vib vtta


standardinterpretatsiooni , ksitledes konstanti c esimese arvuna,
mille kohta vaadeldavas lplikus alamteoorias puudub aksioom
c = n. Kompaktsusteoreemi ja Skolemi-Lwenheimi teoreemi
phjal leidub teoorial

loenduv mudel . Et konstantsmbolit


c ei saa interpreteerida hegi naturaalarvuna, siis pole mudelid
ja omavahel isomorfsed.
lesanded
2. Testage, et formaalse aritmeetika mudelid ja ei ole omava-
hel isomorfsed.
Erinevalt esimest jrku loogikast on teist jrku formaalse
aritmeetika mudel heselt mratud. Selleks vib kasutada niteks
valemit

N
def
= &x Nx,
kus

def
= x (x

= 0) &xy (x

= y

x = y),
Nx
def
= P (P0 &u(Pu Pu

) Px),
226 11. Krgemat jrku loogika
s.t. smbolarvud n (n = 0, 1, 2, . . .) thistavad erinevaid arve ning
puuduvad smbolitega thistamata arvud.
Toome etteruttavalt veel he esimest ja teist jrku predikaat-
arvutuse erinevuse: kui esimest jrku intuitsionistlikus loogikas
ei saa kvantoreid ja lausearvutustehteid ksteise kaudu avaldada,
siis teist jrku intuitsionistlikus loogikas saab deneerida need
ldisuskvantori ja implikatsiooni kaudu:
(= v) = XX,
p = p ,
p &q = X((p (q X)) X),
p q = X((p X) ((q X) X)),
x p = Xx ((p X) X),
P p = XP ((p X) X),
kus suured thed thistavad lause- ja predikaatmuutujaid ning
vastuolu.
11.5. Tbiteooria
Kui me lubame kasutada predikaate ka predikaatide ja funktsioo-
nide argumentidena, saame tulemuseks tpidega predikaatarvu-
tuse. Deneerime niteks predikaadi
(P)
def
= P(P),
mis tleb, et predikaat P on iseendale rakendatav.
lesanded
1. *Kirjeldage predikaadid P ja Q, nii et (P) on tene ja
(Q) on vr.
Ksime nd, kas predikaati saab iseendale rakendada
vi mitte? Kui ( ) on tene, on predikaadi
definitsiooni tttu tene ka lause ( ). Saime vastuolu.
11.5. Tbiteooria 227
Oletame, et ( ) on vr. Siis on definitsiooni tttu
vr ka lause ( ), mis annab jlle vastuolu.
See Russelli avastatud paradoks nitab, et predikaatsmbolite
kasutamisel predikaatide argumentavaldistes ilma hegi kitsendus-
eta vivad tekkida vastuolud. Paradokside vltimiseks toodi sisse
predikaatide, funktsioonide ja indiviidide tbid:
Boolei konstandid t ja v on tpi o.
Indiviidmuutujad ja indiviidkonstandid on tpi .
Kui ja on tbid, siis on funktsioonitp, mis
seab -tpi objektidele vastavusse -tpi objektid.
Niteks tp thistab indiviididel mratud funktsioone
ning tp o indiviididel mratud hekohalisi predikaate.
Niisugust tbiteooriat kasutatakse niteks funktsionaalse pro-
grammeerimise ssteemides, kus igal predikaadil, funktsioonil ja
indiviidil on kseeritud tp. Tpide phjal deneeritakse ka
objektide tasemed:
Indiviidmuutujad, indiviidkonstandid ja Boolei konstandid
on tasemega 0.
Funktsiooni tase on he vrra suurem tema argumentide
maksimaalsest tasemest.
Niteks esimest ja teist jrku predikaatarvutus on tasemega 1.
Predikaatidele ja funktsioonidele tpide ja tasemete omistamise
kaudu saame rkida ka kolmandat, neljandat jne. jrku loogikast
(s.t. lplikku jrku loogikatest). On selge, et tbiteooria krvaldab
loogikast Russelli paradoksi sarnased vastuolud. Predikaati ei ole
sellisel juhul vimalik iseendale rakendada, sest siis peaks selle
predikaadi aste olema samaaegselt iseendast he vrra suurem.
Loogikat, kus iseendale viitamine ei ole denitsioonides luba-
tud, nimetatakse predikatiivseks. Huvi pakub ka mittepredikatiivne
loogika. Eriti seoses rakendustega andmebaaside teoorias ning
rekursiivsete programmide ja induktiivsete struktuuride analsi-
misel.
228 11. Krgemat jrku loogika
Tbiteooria kaudu on loomulik sisse tuua ka indiviidide
liigid e. sordid. Selleks vtame kasutusele mitu erisugust univer-
sumit, thistades nende elemendid erinevate 0-taseme tpidega

1
,
2
, . . . Tulemuseks on mitmeliigiline e. mitmesordiline predi-
kaatarvutus. Niteks programmeerimiskeeltes vivad protseduuride
ja funktsioonide argumendid olla kas mnda ssteemselt mra-
tud tisarvud, reaalarvud, smbolid vi kasutaja deneeritud
tpi hulgad, kirjed vms.
11.6. Matemaatiline teooria
Esimest jrku loogikal on rida omadusi, mis teist jrku loogikal
puuduvad:
1. Esimest jrku loogika teste valemite hulka saab rekursiiv-
selt loetleda. Ent teist jrku loogika teste valemite hulka ei
saa rekursiivselt loetleda, sest see hulk ei ole mitte heski
krgemat jrku aritmeetikas kirjeldatav.
2. Esimest jrku loogika on kompaktne, aga teist jrku loogika
ei ole kompaktne. Selle phjuseks on aritmeetika standard-
interpretatsiooni hene kirjeldatavus teist jrku loogikas.
3. Esimest jrku loogikas kehtivad Skolemi-Lwenheimi lasku-
misteoreem ja tusmisteoreem. Teist jrku loogikas nad aga
ei kehti, sest seal saab eristada loenduvaid ja kontiinumi
vimsusega hulki.
Selleprast tekib igustatud ksimus:
Kas teist jrku loogikat vib ldse pidada loogikaks?
Vib-olla on teist jrku loogika vaid matemaatiline abstraktsioon.
helt poolt on tal olemas loogikale iseloomulikud tunnused:
sntaks, semantika ja tuletusteooria. Filosoofilises mttes vib
aga loogikat ksitleda kui teadust a priori tdedest, mis ei sltu
praktikast ega meie subjektiivsusest. Seeprast peab Quine teist
jrku loogikat pigem matemaatiliseks teooriaks.
11.7. Rakendused arvutiteaduses ja programmeerimises 229
Samas on selge, et teist jrku loogikal on matemaatilistes
arutlustes thtis koht. Phjalikumalt on uuritud krgemat jrku
hulgateooriat ja analsi. Sajandi alguses kivitunud Hilberti
programmi sisuks oli mittepredikatiivsete testusmeetodite phjen-
damine predikatiivsete vahenditega. Gdeli teoreemid formaalse
aritmeetika mittetielikkusest nitasid aga, et Hilberti ettevtmine
oli liiga optimistlik. Sellegipoolest nnestus muuta mitu niliselt
mittepredikatiivset meetodit oluliselt konstruktiivsemaks.
11.7. Rakendused arvutiteaduses ja
programmeerimises
Universaalsete programmeerimiskeelte aluseks on protseduurid,
mis on krgemat jrku funktsioonid. Juba Algol ja Ada kasu-
tasid tiel mral krgemat jrku loogikate tbistruktuuri. Eriti
arenenud on objektorienteeritud keelte tbissteem. Tbid on
heaegselt nii andmete kirjeldused, mida saab kasutada prog-
rammide vigade avastamiseks, kui ka iseseisvad andmed.
Konstruktiivse loogika ja funktsionaalse programmeerimise va-
hel avastatud seosed on programmide automaatse snteesi aluseks,
kus programmid genereeritakse nende formaalsetest testustest
krgemat jrku loogikas.
Kuna juba esimest jrku loogika on algoritmiliselt mittelahen-
duv, on mittelahenduv ka teist jrku loogika. Selleprast uuritakse
arvutiteaduses intensiivselt tema alamloogikaid nagu monaadi-
list teist jrku loogikat, milles vib kasutada krgemat jrku
muutujatena ainult hekohalisi predikaate (s.t. hulki). Ilma funkt-
sionaalsmboliteta monaadiline teist jrku loogika lahendub nagu
ka monaadiline esimest jrku loogika.
230 11. Krgemat jrku loogika
11.8. lesanded
1. (G. Forbes) Formaliseerige laused, kasutades teist jrku kvanto-
reid:
(a) Platonit ja Sokratest ei ole vimalik eristada.
(b) Igal kahel inimesel on midagi hist.
(c) Mnel inimesel ei ole teiste inimestega midagi hist.
(d) Kui miski on omane igale kahele inimesele, siis on igal
kahel inimesel mingi hine omadus.
2. **Formaliseerige vited. Pdke hinnata kasutatava loogika
jrku. (Allikas: G. Kangro. Matemaatiline anals I. Tallinn,
1982)
(a) Kui igale reaalarvule x hulgast X on heselt vastavusse
seatud reaalarv y, siis eldakse, et hulgal X on deneeri-
tud funktsioon.
(b) Arv A on funktsiooni f piirvrtus kohal a parajasti siis,
kui funktsiooni f mramispiirkonnas iga a-le lheneva
jada {x
n
} puhul, kus x
n
= a, kehtib seos lim
n
f(x
n
) = A.
(c) Kui ksteisesse sisestatud likude jadas likude pikkused
lhenevad nullile, siis neil likudel on parajasti ks hine
punkt, mis kujutab nende likude otspunktide jada piir-
vrtust.
(d) Igast tkestatud jadast saab eraldada koonduva osajada.
(e) Kui funktsioonid f ja g on pidevad kohal a, siis
ka funktsioonid f(x) + g(x), f (x) g(x), f(x) g(x),
f (x)/g(x) on pidevad kohal a, kusjuures jagatise korral
eeldame, et g(a) = 0.
(f) Ligus pidev funktsioon on selles ligus tkestatud.
(g) Ligus pideval funktsioonil on selles ligus ekstremaalsed
vrtused.
(h) Joon y = f(x) on kumer (ngus) piirkonnas X para-
jasti siis, kui f

(x) kahaneb (kasvab) monotoonselt piir-


konnas X.
11.8. lesanded 231
(i) Rida nimetame koonduvaks, kui selle rea osasummade
jada koondub, ja hajuvaks, kui osasummade jada hajub.
III
Mitteklassikaline loogika
12. Modaalloogika
Loogikat ei saa rakendada tegelikule maailmale.
Marvin Lee Minsky (s. 1927)
Modaalloogikat tunti juba Aristotelese ajal, tnapeva modaal-
loogika rajas ameerika loogik ja losoof Clarence Irving Lewis
(18831964). Ta kirjeldas alates 1912. a. modaalloogika jaoks mitu
aksiomaatilist ssteemi. Modaalloogika on tihedalt seotud mitme
tehisintellektis, arvutiteaduses ja losooas kasutatava loogikaga
nagu temporaalne, deontiline ja episteemiline loogika. Temporaal-
loogikaga saab niteks testada programmide korrektsust, teadmisi
ja uskumisi ksitleva episteemilise loogikaga saab aga formaalselt
kirjeldada erisuguseid inimmtlemise tpe.
12.1. Modaalsed operaatorid
Modaalloogika on klassikalise loogika ldistus: temas kehtivad
kik klassikalise loogika seadused, lisaks tuuakse veel vima-
likkuse ja paratamatuse modaalsed operaatorid ja , mida
kasutatakse sarnaselt eitusega. Erinevalt eitusest ei ole modaal-
sed operaatorid tevrtusfunktsioonilised, s.t. videte p ja p
tevrtused ei ole vite p tevrtusega tielikult mratud.
236 12. Modaalloogika
Vaatleme lauset
On vimalik, et ma olen Eestimaa kuningas.
See lause on episteemilisel tlgendamisel vr, sest ma tean, et
ma ei ole kuningas. Ent seda saab tlgendada ka lausena
On vimalik ette kujutada olukorda, kus ma
olen Eestimaa kuningas,
mis on tene, sest asjad oleksid vinud areneda niimoodi, et Eesti
on kuningriik ning mina olen selle riigi kuningas.
Modaalloogikas nimetatakse vimalikke olukordi, milliseks
asjad oleksid vinud areneda, vimalikeks maailmadeks. See ter-
minoloogia on prit saksa losoolt ja matemaatikult Gottfried
Wilhelm Leibnizilt (16461716).
Mida thendab mingi olukorra vimalikkus? Vimalik on
loomulikult kik see, mis kehtib tegelikult. Kuid mis on vimatu?
Selle asemel, et rkida mingi olukorra eetilisest, juriidilisest,
tehnilisest vms. vimatusest, kasutame neist ldisemat loogilise
mittevimalikkuse mistet. Kik, mis on loogiliselt mittevimalik,
on mittevimalik ka teistes thendustes.
Mingi olukorra loogilist mittevimalikkust saab phjendada
ainult loogikareeglitega, kusjuures loogikat tuleb ksitleda vima-
likult ldiselt. Niteks loogiliselt ei ole vimalik ette kujutada
mmargust nelinurka ega ka naissoost venda. Tavaliselt eldakse,
et loogiliselt mittevimalik on see, millest jreldub vastuolu.
Niisiis on iga vide, mille vrus on testatud, loogiliselt mitte-
vimalik, ning iga testatud vide on paratamatult tene, sest ta
ei saa kuidagi olla vr
1
. Paratamatult tene on niteks lause
Kolmnurgal on kolm nurka.
Kui lause pole paratamatult vr, on ta loogiliselt vimalik.
Vimalik on niteks lause
1
Sellise mittevimalikkuse definitsiooniga tuleb olla ettevaatlik, sest Gdeli
teoreem aritmeetika mittetielikkusest kinnitab vrade lausete olemasolu, mille
vrus ei tarvitse olla formaalselt testatav.
12.2. Modaalloogika seadused 237
Lennart Meri oli Eesti president 1996. aastal.
See lause pole aga paratamatult tene, sest Riigikogu oleks vinud
valida presidendiks ka alternatiivse kandidaadi.
Filosoofilises analsis kasutatakse modaalseid operaatoreid
kllalt sageli. Niteks vaba tahte probleemi korral kerkib ksimus:
Kas inimene oleks vinud konkreetses situatsioonis kituda
teisiti?
Kui inimene poleks saanud teisiti kituda, on meie tunne tegutse-
mise vabadusest vaid illusoorne.
12.2. Modaalloogika seadused
Niisiis me laiendasime klassikalist loogikat vimalikkuse ja para-
tamatuse seostega. Selgus, et lause on mittevimalik siis ja ainult
siis, kui ta on paratamatult vr:
p = p.
Jrelikult saab modaalsed tehted avaldada teineteise kaudu:
p = p,
p = p.
On selge, et iga tene lause on vimalik, ning et iga paratamatu
lause peab olema tene:
p |= p,
p |= p.
Neid seadusi ei saa aga mber prata, sest siis langeksid
vimalikkuse ja paratamatuse misted kokku.
Oletame, et mingi vide jreldub loogiliselt mingist paratama-
tult tesest vitest. Siis on ka jreldus paratamatult tene. Selles
veendumiseks eeldame, et q jreldub loogiliselt vitest p, vide p
on paratamatult tene, ent q ei ole paratamatult tene. Kuna q
238 12. Modaalloogika
ei ole paratamatult tene, on ta mingis olukorras vr. Loogilise
jreldumise tttu on ka tema eeldus p selles olukorras vr. See
on aga vastuolus p paratamatu tesusega. Pannes thele, et q
loogilist jreldumist vitest p vib vljendada lausega (p q),
saab testatud seaduse esitada kujul
(p q) |= p q.
lesanded
1. *Nidake, et selle seaduse prdseadus ei kehti.
Kuna kik, mis on loogiliselt tene, on ka paratamatult tene,
siis kehtib paratamatuse sissetoomise reegel:
Kui |= p, siis |= p.
Toodud seadused ja reeglid on aluseks tuletusssteemile T , mis
on modaalloogika ssteemidest ks nrgemaid.
Phjus, miks Lewis ti loogikasse paratamatuse miste, oli
tema rahulolematus tavalise implikatsiooniga. Niteks lause
Kui kolmnurgal on neli nurka, siis vrvid sina
endal huuli
on implikatsiooni eelduse vruse tttu tene, kuid tema osalau-
sete vahel puudub tajutav loogiline seos. Lewis deneeris range
implikatsiooni, mis on tene ainult siis, kui ei ole vimalik, et
tema eeldus on tene ning jreldus on vr:
(p q) = (p & q).
Kahjuks tekivad range implikatsiooni korral samasugused para-
doksid nagu tavalise implikatsiooni korral
2
:
2
Tautoloogiaid kujul
p (q p),
p (p q),
(p q) (q p)
nimetatakse implikatsiooni paradoksideks (MacColl, 1906). Nende valemite pa-
radoksaalsus seisneb selles, et nad on tesed suvalise valemi q korral.
12.3. Vimalike maailmade semantika 239
p (q p),
p (p q),
s.t. range implikatsiooniga saab suvalisest lausest jreldada parata-
matu lause ning mittevimalikust lausest jreldub rangelt kskik
milline lause.
12.3. Vimalike maailmade semantika
Modaalsete operaatorite thenduse kirjeldamiseks vttis USA loo-
gik ja losoof Saul Aaron Kripke (s. 1940) 1963. a. kasutusele
vimalike maailmade semantika, kus kikvimalikke ettetulevaid
olukordi ksitletakse kui terviklikke maailmade ssteeme. Iga
maailm on vaadeldava signatuuri smbolite (lausemuutujate, pre-
dikaatsmbolite jne.) ks vimalik interpretatsioon. Kuna mo-
daalloogikas vib kasutada ka tavalisi modaliseerimata lauseid,
siis kuulutatakse ks maailmadest tegelikuks maailmaks ning lau-
sed, mis on selles maailmas tesed, arvatakse testeks ka kogu
maailmade ssteemis.
Me tleme, et p on tene, kui p kehtib kigis vimalikes
maailmades, ja p on tene, kui p kehtib mnes vimalikus maa-
ilmas. Idee on selles, et vimalik maailm on tielik alternatiivne
viis, kuidas asjad oleksid vinud olla.
Definitsioon 12.1. Modaalse lauseloogika valemite hulga inter-
pretatsioon on vimalike maailmade hulk , mille iga maailm
w omistab igale selles hulgas esinevale lausemuutujale mingi te-
vrtuse ja mille ks maailm on thistatud kui tegelik maailm w

.
Sellist modaalloogilist ssteemi nimetatakse ka standardseks
modaalloogikaks ehk ssteemiks S5. Me ksitleme Lewise teisi
modaalloogilisi ssteeme nagu T ja S0S4 pgusalt natuke hiljem.
Thistades vljenditega w[p] ja [p] valemi p tevrtused
maailmas w ja intepretatsioonis ning vljendiga w: p t
tevrtuse, mille maailm w omistab valemile p, saame anda
modaalse lauseloogika semantikareeglid:
240 12. Modaalloogika
1. w[p] = t w: p t (p on lausemuutuja).
2. w[ p] = t (u ) u[p] = t .
3. w[ p] = t (u ) u[p] = t .
4. [p] = t w

[p] = t ,
kus w on suvaline vimalik maailm, w

on interpretat-
siooni tegelik maailm ning lausearvutustehete semantika on
sama, mis lauseloogikas.
Me tleme nagu tavaliselt, et valem on loogiliselt tene, kui
ta on tene kigis interpretatsioonides, ning arutlus kehtib, kui ei
leidu interpretatsiooni, milles tema eeldused on tesed ja jreldus
vr.
Vimalike maailmade ssteeme saab kasutada eksijrelduste
mberlkkamiseks.
Nide 12.2. A& B |=
S5
(A& B).
Valime interpretatsiooni = {w

, u} selliselt, et A ja B on vastu-
rkivad laused, mis ei saa olla samaaegselt tesed:

w

u
A v A t
B t B v
Selles interpretatsioonis on eeldus A& B tene, sest
1. u[A] = t (definitsiooni 1. punkti phjal).
2. w

[ A] = t (3), sest u[A] = t.


3. w

[B] = t (1).
4. w

[ B] = t (3), sest w

[B] = t.
5. w

[ A& B] = t (konjunktsiooni semantika phjal).


6. [ A& B] = t (4), sest w

[ A& B] = t.
12.4. Tuletused modaalloogikas S5 241
Jreldus (A& B) on aga vr:
1. w

[A] = v (definitsiooni 1. punkti phjal).


2. w

[A & B] = v (konjunktsiooni semantika phjal).


3. u[B] = v (1).
4. u[A & B] = v (konjunktsiooni semantika phjal).
5. w

[ (A& B)] = v (3), sest w

[A& B] = v ja u[A & B] = v.


6. [ (A& B)] = v (4), sest w

[ (A& B)] = v.
lesanded
1. Testage vited:
(a) A |=
S5
A;
(b) (A B) |=
S5
A B;
(c) (A B) |=
S5
( A B).
2. *Nidake, et |=
S5
(p p), kuid |=
S5
p p.
12.4. Tuletused modaalloogikas S5
Kirjeldame modaalloogika tuletusreeglid. Selleks lisame lausear-
vutuse loomuliku tuletuse ssteemi modaalsete operaatorite
sissetoomis- ja eemaldamisreeglid.
Paratamatuse sissetoomisreeglis ( I) ja vimalikkuse eemal-
damisreeglis ( E) peab olema tidetud tingimus (), mis nuab,
et valemeid p, p ja q mjutavad eeldused ja hpoteesid (vlja
arvatud hpotees p vimalikkuseoperaatori eemaldamisel) peavad
olema tielikult modaliseeritud, s.t. nende kik lausemuutujad
peavad olema seotud kas vimalikkuse- vi paratamatuseoperaa-
toriga.
Toome nd mned tuletuste nited.
242 12. Modaalloogika
Sissetoomisreegel Eemaldamisreegel
p
p
( I)
p
p
( E)
p
p
( I)
p
[p]
.
.
.
.
q
q
( E)

Tabel 12.1. Loomuliku tuletusssteemi modaalsed reeglid.


Nide 12.3. Testame, et (A & B)
S5
B:
1 1. (A & B) eeldus
1 2. A & B 1 E
1 3. B 2 &E
1 4. B 3 I
Testamiseks kasutame loomuliku tuletuse ssteemi, milles iga valemi
ees on tema eelduste ja hpoteeside numbrite loend. Antud juhul sl-
tub valemite tesus ainult eelduse (A & B) tesusest.
Nide 12.4. Testame (p q)
S5
p q:
1 1. (p q) eeldus
2 2. p hpotees
1 3. p q 1 E
2 4. p 2 E
1,2 5. q 3,4 E
1,2 6. q 5 I (sest (p q) ja p on
tielikult modaliseeritud)
1 7. p q 2,6 I
Nide 12.5. Jrgmiseks testame seaduse p = p. Selleks tule-
tame kigepealt vasakpoolsest valemist parempoolse valemi:
12.4. Tuletused modaalloogikas S5 243
1 1. p eeldus
2 2. p hpotees
2 3. p 2 I
1,2 4. 1,3 E
1 5. p 2,4 I
1 6. p 5 I (sest 1. valem on
tielikult modaliseeritud)
Seejrel tuletame parempoolsest valemist p valemi p:
1 1. p eeldus
2 2. p hpotees
3 3. p hpotees
1 4. p 1 E
1,3 5. 3,4 E
1,2 6. 2,3,5 E (sest 1. ja 5. valem on
tielikult modaliseeritud)
1 7. p 2,6 I
Seaduse p = p saamiseks tuleb nd kasutada implikatsiooni ja
ekvivalentsi sissetoomisreegleid.
Paratamatuse sissetoomis- ja vimalikkuse eemaldamisreeglites
esinevad kitsendused vivad mnel juhul muuta otsesed tuletused
vimatuks.
Nide 12.6. A
S5
A ei saa tuletada kujul
1 1. A eeldus
1 2. A 1 I
1 3. A 2 I
sest lause A ei ole tielikult modaliseeritud, mistttu 3. reas ei tohi
paratamatuse sissetoomisreeglit rakendada. Vimalik on aga tuletus
244 12. Modaalloogika
1 1. A eeldus
1 2. A 1 I
3 3. A hpotees
3 4. A 3 I (sest 3. valem on
tielikult modaliseeritud)
5. A A 3,4 I
1 6. A 2,5 E
kus kasutatakse kigepealt implikatsiooni sissetoomisreeglit ning seej-
rel implikatsiooni eemaldamisreeglit.
lesanded
1. Konstrueerige tuletused:
(a) A B
S5
A B;
(b) B
S5
(A B);
(c) (A& B)
S5
A& B;
(d) A B
S5
(A B);
(e) A
S5
A;
(f)
S5
A A.
12.5. Kanooniline tlge predikaatloogika
keelde
Modaalse lauseloogika laused saab tlkida monaadilise predikaat-
arvutuse keelde, milles kasutatakse mitteloogilistest smbolitest
ainult hekohalisi predikaatsmboleid. Selleks vaatleme parata-
matust kui ldisuskvantorit ja vimalikkust kui eksistentsikvan-
torit le vimalike maailmade universumi. Me vajame ainult
hte indiviidmuutujat, milleks vtame muutuja w. Tlkimise
kigus asendame lausemuutujad A, B, . . . atomaarsete valemi-
tega Aw, Bw, . . . . Niteks modaalloogika laused
12.6. Erinevad tuletusssteemid 245
A A,
(A B) ( A B),
A A
tlgitakse predikaatarvutuse valemiteks
wAw Aw,
w(Aw Bw) (wAw wBw),
wAw wwAw.
Seega tlgitakse tielikult modaliseeritud laused kinnisteks predi-
kaatarvutuse valemiteks, kusjuures korduvale modaliseerimisele
vastab korduv kvantitseerimine. Tielikult modaliseerimata lau-
sete tlkimisel saadakse aga vabade muutujatega predikaatarvutuse
valemid.
Selgub, et esialgsed modaalse lauseloogika laused on tlgitud
valemitega semantiliselt samavrsed (lesanne 12.5.1). Samuti
jreldub monaadilise predikaatarvutuse lahenduvusest modaalse
lauseloogika lahenduvus.
lesanded
1. *** Olgu p modaalse lauseloogika lause ja p

tema kanooniline
tlge monaadilise predikaatloogika keelde. Nidake, et valemid p
ja p

on semantiliselt samavrsed, s.t. leiduvad interpretatsioonid


I ja I

, nii et I |= p I

|= p

.
2. ***Testage, et monaadiline predikaatarvutus on lahenduv.
12.6. Erinevad tuletusssteemid
Lewis ti modaalloogika jaoks sisse mitu aksiomaatilist tule-
tusssteemi. Ssteemi T aksioomideks on kik lausearvutuse
tautoloogiad, millele lisatakse aksioomiskeemid
246 12. Modaalloogika
(T) p p;
(K) (p q) ( p q),
s.t. iga paratamatu lause on tene ning juhul, kui vitest p jreldub
paratamatult vide q, jreldub p paratamatusest q paratamatus.
Tuletusreegliteks on modus ponens ja paratamatuse sissetoomine
p
p
(N).
Jttes aksioomiskeemi (T) vlja, saame tuletusssteemi K,
mida kasutatakse deontilises loogikas. Ssteemis K tlgendatakse
smbolit mitte kui paratamatust, vaid kui kohustuslikkust.
Sellisel juhul ei tarvitse aksioomiskeem (T) kehtida, sest meile
vivad olla kohustuslikud asjad, mis ei ole tesed. Niteks vib
olla kohustuslik, et ma teeksin kik eksamid viitele, kuigi see
tegelikult nii ei ole. Teadmiste loogikas thistab smbol seda,
mis on teada. Kuna tavaliselt on meie teadmiste sisuks tesed
vited, jetakse teadmiste loogikas aksioomiskeem (T) alles. Aga
uskumiste loogikas visatakse (T) jlle vlja, sest thistab seal
seda, millesse usutakse.
Lewise tuletusssteemid S4 ja S5 on ssteemi T laiendused.
Ssteemis S4 lisatakse aksioomiskeem
(4) p p,
mis tleb, et kik, mis on paratamatu, on seda paratamatult.
Samuti on kik, mille vimalikkus on vimalik, ka ise vimalik:
(4 ) p p.
Tuletusssteemi S5 saamiseks lisatakse ssteemile S4 aksioo-
miskeem
(5) p p.
Vimalike maailmade semantika abil saab selgitada ka nende
ssteemide vahelisi erinevusi. Selleks toome lisaks maailmade
ssteemile sisse ka maailmadevahelise ligipsetavuse seose R
ning defineerime paratamatuseoperaatori semantika jrgmiselt:
w[ p] = t u(u & w R u u[p] = t ),
s.t. mingi vite paratamatult tesuseks maailmas w peab see
vide olema tene kigis maailmades, kuhu sellest maailmast on
12.7. Modaalne predikaatloogika 247
vimalik ligi pseda. Analoogiliselt deneeritakse ka vimalik-
kuseoperaatori semantika.
Sltuvalt seose R algebralistest omadustest saame erinevate
modaalloogika tuletusssteemide interpretatsioonid. Ssteemis K
ei seata seosele R mingeid tingimusi. Ssteemis T nutakse, et
seos R oleks reeksiivne
3
. S4-s peab R olema lisaks reeksiivsu-
sele ka transitiivne ja ssteemis S5 on R ekvivalentsiseos, s.t. ta
on heaegselt nii reeksiivne, smmeetriline kui ka transitiivne.
Ssteemid K, T , S4 ja S5 on nimetatud interpretatsioonide suh-
tes tielikud, s.t. teste ja tuletatavate valemite hulgad langevad
nendes kokku.
lesanded
1. Nidake, et aksioomiskeemid (4) ja (4 ) on ekvivalentsed.
2. Testage, et aksioomiskeemidest (5) ja (T) jreldub (4).
Kuna ssteemidel K, T , S4 ja S5 on olemas lpliku mudeli
omadus (kui valemite hulgal leidub mudel, siis sellel hulgal leidub
ka lplik mudel), on kik need ssteemid lahenduvad.
Ssteemi S4 interpretatsioone kasutatakse samuti intuitsionist-
likus loogikas, sest me kujutame intuitsionistlikku loogikat ette kui
ajas monotoonselt kasvavat testatud videte hulka. Aja kulgemise
seos on aga reeksiivne ja transitiivne.
12.7. Modaalne predikaatloogika
Modaalsest lausearvutusest on lihtne le minna modaalsesse pre-
dikaatarvutusse. Selleks lisatakse predikaatarvutuse thestikku mo-
daalsete operaatorite smbolid ja . Lihtne on ldistada
ka vimalike maailmade interpretatsioone, lisades maailmadesse
indiviidid ning kujutades iga maailma kui hte vimalikku pre-
dikaatloogika interpretatsiooni. Edasi tekivad aga losoolised
probleemid, sest pole selge, mida sellised maailmad endast tpselt
kujutavad.
3
Binaarne seos R on refleksiivne, kui kehtib x xRx, smmeetriline, kui
xy (xRy yRx), ja transitiivne, kui xyz (xRy &yRz xRz).
248 12. Modaalloogika
Niteks ei tarvitse modaalses predikaatloogikas enam kehtida
vrdusaksioomid. Quine toob niteks vrdsete elementide asenda-
mise seaduse
a = b (Aa Ab),
mille kehtimine on modaalses predikaatloogikas ksitav. Niteks
on pikesessteemis kokku 9 planeeti. On selge, et arv 9 on
paratamatult suurem kui 7. Ent pole tsi, et planeetide arv on
paratamatult suurem kui 7.
lesanded
1. Nidake, et vrdsete elementide asendamise seadus ei kehti tead-
miste ja uskumiste loogikates.
Modaalses predikaatloogikas pakuvad huvi ka Barcani valem
ja selle prdvalem, mis vidavad, et ldisuskvantor ja parata-
matuseoperaator (vi vimalikkuseoperaator ja eksistentsikvantor)
kommuteeruvad omavahel:
x p = x p.
Vtame valemiks p lause Mx, mis tleb, et objekt x on
materiaalne. Vasakpoolne valem vtab nd kokku kontingentse
materialisti seisukoha: kik tegelikus maailmas eksisteerivad asjad
on igas maailmas materiaalsed. Parempoolne valem thendab aga,
et mittemateriaalseid asju ei saagi olla. Kontingentne materialist ei
tarvitse sellega nustuda, sest teistes maailmades vivad esineda
ka mittemateriaalsed asjad: need on objektid, mis oleksid vinud
eksisteerida, kuid tegelikult ei eksisteeri.
13. Intuitsionistlik loogika
On kahte tpi mistusi . . . matemaatiline ja nn.
intuitiivne. Esimene juab oma vaadeteni aeglaselt,
kuid need on kindlad ja ranged; teist on nnista-
tud suurema paindlikkusega ning ta tegeleb samaaeg-
selt armastatud asjade erinevate armastusvrsete osa-
dega.
Blaise Pascal (16231662), Discours sur les pas-
sions de lamour
13.1. Sissejuhatus
Intuitsionistliku loogika tekkimine ja aksiomatiseerimine on selle
sajandi loogikas omamoodi paradoks. Intuitsionism tekkis mate-
maatika aluste uurimisel ja on teiste mitteklassikaliste loogika-
harudega vrreldes rohkem seotud keeruliste matemaatikaprob-
leemidega, eriti aga matemaatiliste objektide olemasolu ja tesuse
mistmisega. Rohkem kui teised mitteklassikalised loogikad on in-
tuitsionistlik loogika matemaatiline selles mttes, et uuritakse just
matemaatika konstruktsioonides ja arvutustes kasutatavat-kehtivat
loogikat. Intuitsionism on ka ainus mitteklassikaline ssteem, mida
kasutades on lbi uuritud suured valdkonnad matemaatikas. Teiselt
poolt on testamise ja arvutamise/konstrueerimise seoste uurimisel
leitud, et intuitsionistlik loogika kirjeldab arvutatavust mrksa pa-
remini kui klassikaline, mis on esile kutsunud arvutiteaduse huvi
intuitsionismi vastu.
250 13. Intuitsionistlik loogika
Intuitsionistliku matemaatikalosooa tekkimise aluseks oli
klassikalisega vrreldes erinev vastus ksimusele, mida uurib ma-
temaatika. Ajalooliselt on domineerinud platonistlik e. realistlik
seisukoht, mida vljendatakse snadega, et matemaatika uurib
matemaatilisi objekte: arve, funktsioone, hulki jne. Matemaatik
kujutab endale ette, et nende objektide maailm eksisteerib umbes
samuti kui fsiliste objektide maailm. Selles maailmas on iga
vide kas tene vi vr, sltumata sellest, kas me seda tevr-
tust teame vi mitte. Niteks Goldbachi hpoteesil (iga paarisarvu,
mis on suurem kui 2, saab esitada kahe algarvu summana) on
matemaatiku arvates kindel tevrtus, kuigi keegi seda praegu ei
tea. Matemaatikute tegevus seisneb realistide arvates videte te-
suse testamises vi vruse kindlakstegemises matemaatikud
uurivad objektiivselt eksisteerivat maailma.
Tegelikult me teame, et matemaatiliste objektide maailm on
inimeste vlja meldud ja arve ega hulki ei eksisteeri kusagil
vljaspool matemaatikat iseseisvana. Matemaatikute maailma on
olemas just niipalju, kui seda seni on vlja meldud. Sealhulgas
on ka niteks naturaalarvude hulgal ainult niipalju omadusi, kui
on kseerinud (aksioomidena, traditsiooniliste arusaamade ja et-
tekujutustena vi mingil muul teel) senine matemaatika. See ei
thenda muidugi, et tesed on ainult need vited, mida keegi juba
on testanud. Niteks on kindlasti selliseid naturaalarve x, y ja z,
mille kohta keegi pole arvutanud, kas vide x + y = z on tene
vi vr. Matemaatikas on aga meetodid, millega saab suvaliste
x, y ja z jaoks kindlaks teha, kas x + y = z kehtib vi mitte ja
seeprast on sellisel vitel kindel tevrtus. Aga me teame, et
saab formuleerida viteid, mille tesus ega vrus ei jreldu seni
matemaatikas paikapandud tdedest, ja matemaatika vib edaspidi
areneda hes vi teises suunas, tehes mne sellise vite teseks
vi vraks. Kurt Gdel ja Paul Joseph Cohen (s. 1934) testa-
sid, et meil pole alust pidada kontiinumhpoteesi ei teseks ega
vraks. Me vime arendada matemaatikat, mille hulkade univer-
sumis kontiinumhpotees on tene, vi matemaatikat, kus see on
vr. Teades juba kolmkmmend aastat selle vite sltumatust,
pole matemaatikud kiirustanud talle tevrtust kseerima, kuigi
13.1. Sissejuhatus 251
Hilbert nimetas aastal 1900 tema kehtimise ksimust matemaatika
lahtistest probleemidest esimesena. See kik aga thendab, et meil
pole phjust eeldada, et tna ja praegu on niteks Goldbachi hpo-
teesil vi kontiinumhpoteesil tevrtus. Seega pole niisugusest
vaatepunktist alust ka A A arvamisel ldkehtivaks.
Intuitsionismi loojaks peetakse hollandi loogikut
L. E. J. Brouwerit (18811966), kes vastukaaluna D. Hilberti
alustatud formalistlikule, aksiomatiseerimisel baseeruvale suunale
matemaatika aluste phjendamisel propageeris matemaatika
ehitamist intuitsiooni abil. Brouweri jrgi seisneb matemaatika
intuitiivsetes konstruktsioonides ja intuitiivsetes arutlustes selliseid
konstruktsioone ksitlevate videte kohta, aga mitte formaalses
deduktsioonis formaalselt kehtestatud aksioomidest. Brouwer oli
ammu enne mittetielikkuseteoreemi testamist Gdeli poolt
(1931) veendunud, et matemaatiliste konstruktsioonide kogu
mitmekesisus ei saa olla hlmatud mingisuguse kseeritud
formaalse ssteemiga. Mis puutub loogikasse, siis Brouwer
tahtis luua intuitsionistlikku matemaatikat ega seadnud mingeid
loogikaprintsiipe vljapoole matemaatikat ega sellest krgemale.
Loomulikult ei eeldanud tema ideed ka intuitsionistliku loogika
aksiomatiseerimist.
Loogikud olid aga huvitatud intuitsionistlikus matemaatikas
kasutatavate printsiipide ekstraheerimisest, mis saigi teoks in-
tuitsionistliku predikaatarvutuse aksiomatiseerimisega A. Heytingi
poolt 1930. aastal. Jrgnenud arengu tulemusena mistetakse t-
napeval intuitsionismi all enamasti intuitsionistlikku loogikat ja
intuitsionistliku loogika all philiselt Heytingi predikaatarvutust.
Sellele uurimistle on stimuleerivalt mjunud intuitsionistliku
tuletatavuse ja arvutatavuse vaheliste seoste avastamine ning tes-
tustest algoritmide eraldamise vimalus.
Intuitsionistliku matemaatika testustes kasutavad aga erine-
vad matemaatikud peale intuitsionistlikus predikaatarvutuses for-
maliseeritud reeglite veel suhteliselt universaalseid, kuid kohati
omavahel vastuolus olevaid printsiipe (Churchi tees, Markovi
printsiip jm.). Nii ei saa me rkida htsest intuitsionistlikust
matemaatikast ega rangelt vttes ka loogikast. Kll aga moodustab
252 13. Intuitsionistlik loogika
Heytingi arvutus hisosa kigist mistlikest intuitsionismidest,
s.t. ainult vrdlemisi radikaalsete vaadetega intuitsionistid ei tun-
nista selles arvutuses tuletatavate valemite ldkehtivust.
13.2. Kaks testuse nidet
Paljudele on teada, et intuitsionistlik matemaatika ei aktsepteeri
nn. puhta olemasolu testusi ega tunnista ldise printsiibina vlis-
tatud kolmanda seadust. Toome kigepealt he lihtsa nite, kuidas
vlistatud kolmanda seadust kasutades saab testada kindlate oma-
dustega objekti olemasolu ilma objekti ennast esitamata.
Teoreem 13.1. Leiduvad sellised irratsionaalsed arvud a ja b, et
a
b
on ratsionaalarv.
Testus. Vaatleme arvu

2

2
. Kui

2

2
on ratsionaalarv, siis
on teoreemi vide tene, sest sobivad a
1
=

2 ja b
1
=

2. Kui

2
on irratsionaalarv, siis on teoreemi vide tene, sest sobivad
a
2
=

2
ja b
2
=

2, kuna a
b2
2
= (

2
)

2
=

2
2
= 2.
Oleme teoreemi klassikaliselt mtleva matemaatiku jaoks tes-
tanud, aga testusest ei saa teada, millised a ja b vrtused
rahuldavad teoreemi tingimusi. Testuses kasutasime vlistatud
kolmanda seadust, pidades teseks disjunktsiooni

2
on ratsionaalne vi

2

2
on irratsionaalne.
Intuitsionistlikus tlgenduses nutakse vite x A(x) testamisel
ka sobiva x vrtuse esitamist (ja tema sobivuse testamist),
disjunktsiooni A B testamisel aga tese liikme nitamist koos
tema kehtivuse testamisega. See thendab, et valemeid kujul
A A ei saa suvalise valemi A jaoks iseenesest teseks arvata,
vaid seda saab teha alles iga valemi A jaoks eraldi, testades
13.2. Kaks testuse nidet 253
disjunktsiooni sobiva liikme. Niteks on tegelikult teada, et

2

2
on irratsionaalne ja seega on teoreem tene arvude a
2
ja b
2
sobivuse tttu. Niisugune testus on muidugi oluliselt keerulisem
kui paarile reale mahtuv klassikaline puhta olemasolu testus, aga
ta annab ka probleemi kohta rohkem informatsiooni.
Toome siin ka he intuitsionistliku testuse nite. Nitame,
et kuigi A A pole intuitsionisti jaoks ldkehtiv, saab testada
selle valemi kahekordse eituse. Mrgime, et valemi A eituse testa-
miseks peavad intuitsionistid piisavaks, et valemist A jreldatakse
vastuolu.
Teoreem 13.2. Valem (A A) on tene.
Testus. Meil tuleb nidata, et (A A) annab vastuolu.
Selleks oletame, et (A A) kehtib. Nitame kigepealt, et
siis kehtib A. Tepoolest. Kui kehtiks A, siis kehtiks esimese
liikme tesuse tttu ka AA ja see oleks vastuolus (AA)
kehtimisega. Et kehtib A, siis vime teise liikme tesuse phjal
vita, et kehtib A A ja oleme saanud vastuolu. Jrelikult on
(A A) vr ja kehtib (A A).
Juhime thelepanu sellele, et siin me ei kasutanud vlistatud
kolmanda seadust A A, vaid jreldasime oletusest (A A)
kigepealt A ja siis nitasime, et oletus ise ei saa kehtida.
Neme ka, et intuitsionistlikus loogikas pole phjust lugeda
valemit A A ldkehtivaks. Valemi A testamiseks piisab
A mberlkkamisest, A testamine vib aga nuda keeruliste
objektide konstrueerimist. Kokkuvttes on intuitsionistlikult seisu-
kohalt loomulik eristada kolme liiki valemeid:
1) tesed (s.t. testatud),
2) vrad (sellised, mille eitus on testatud),
3) praegu teadmata ja isegi olematu tevrtusega valemid.
Viimaste suhtes pole phjust lugeda, et ka A A kehtib.
Intuitsionistlik lhenemine teeb olukorra keerulisemaks kui
klassikaline. Sellegipoolest on konstrueeritud vastuvetavaid in-
tuitsionistlikke teooriaid. Kll aga loobub tsine intuitsionist kigi
254 13. Intuitsionistlik loogika
teste valemite hulga vaatlemisest. Mittetriviaalsetel juhtudel on
see hulk sna piiritlemata. Samuti on he ja sama keele jaoks
tihti erisugused intuitsionistlikud semantikad, s.t. ka he ja sama
valdkonna erinevad intuitsionistlikud teooriad.
13.3. Intuitsionistlik loogikaseoste mistmine
Intuitsionisti seisukohalt pole aritmeetika, matemaatilise analsi,
hulgateooria jt. matemaatiliste distsipliinide videte semantika
lpuni selge, sest pole tpselt selged nende teooriate (lpmatud)
objektid. Ei saa olla ka protseduuri, mis kontrolliks nende teooriate
valemite tesust. Seetttu tuleb piirduda ainult semantiliste kok-
kulepetega, mida valemite tlgendus peaks kindlasti rahuldama.
Nende kokkulepete phjal on ka vimalik formuleerida aksio-
maatilisi teooriaid, mis formaliseerivad teatud aspekte sisulisest
matemaatilisest teooriast (teatud phjusi valemite tesuseks), mitte
aga kogu semantikat.
Iga kinnine valem vljendab mingit (ldiselt mittetielikku)
teadet matemaatilisest konstruktsioonist. Valemi tesust saab ni-
data seda tendava konstruktsiooni esitamisega. See konstruktsioon
peab vastama teatavatele valemi kujust tulenevatele tingimustele
semantilistele kokkulepetele.
Kui valem A on kujul A
1
& A
2
, siis k tendab A parajasti
siis, kui temast vib saada konstruktsioonid k
1
ja k
2
, mis
tendavad vastavalt A
1
ja A
2
. (Vib arvata, et A tenduseks
on paar, mis koosneb A
1
ja A
2
tendustest).
Kui valem A on kujul A
1
A
2
, siis k tendab A parajasti
siis, kui temast vib saada informatsiooni selle kohta, kumb
A
i
on tene, ja selle A
i
tenduse.
Kui valem A on kujul A
1
A
2
, siis k tendab A parajasti
siis, kui k annab ldise meetodi, mis teisendab A
1
suvalise
tenduse A
2
tenduseks.
13.3. Intuitsionistlik loogikaseoste mistmine 255
Kui valem A on kujul B, siis k tendab A parajasti siis,
kui k tendab A , kus thistab standardset vra
lauset.
Kui valem A on kujul x B(x), siis k tendab A parajasti
siis, kui k esitab x muutumispiirkonna mingi elemendi c ja
valemi B(c) tenduse.
Kui valem A on kujul x A(x), siis k tendab A pa-
rajasti siis, kui k annab ldise meetodi, millega saab x
muutumispiirkonna iga elemendi d jaoks leida valemi A(d)
tenduse.
Kommenteerime veel pisut neid kokkuleppeid.
1. Kigepealt, antud tingimusi tuleb tepoolest vaadelda kui
tingimusi, s.t. nad ei ole tehete ja kvantorite matemaatilised
denitsioonid. Esiteks pole neis kseeritud, mis laadi ob-
jektid vivad olla valemite tendused: testused, algoritmid,
nende mingid formaalsed esitused vms. Intuitsionistid ei k-
seeri ka, mida mistetakse ldise meetodina. Siin oleks kl-
lalt loomulik mista meetoditena algoritme mingis formali-
satsioonis. Formaalsete detailide kseerimine vib anda juba
mingi konkreetse intuitsionistliku semantika (niteks Kleene
deneeritud rekursiivse realiseeritavuse). Samuti ei thenda
semantilised kokkulepped keerulisemate mistete taandamist
lihtsamatele. Esitatakse ju tingimused ldisuskvantori ja
implikatsiooni jaoks omakorda ldisuskvantorit kasutades.
2. Millises vahekorras on kokkulepped klassikalise arusaa-
misega testamisest? Kui mista tendavate objektidena
testusi, siis on tingimused kigil juhtudel klassiku jaoks
kindlasti piisavad, ilmselt aga mitte tarvilikud.
3. Vlja arvatud eituse juht, esitatakse valemi tendusele nu-
ded antud valemi osavalemite kaudu, mis viitab testuse
otsimiseks soodsa osavalemi omaduse kehtimisele.
256 13. Intuitsionistlik loogika
4. Intuitsionistliku semantika jrgi on erinevalt klassikalisest
loogikast kik loogikatehted peale eituse iseseisvad ja neid
ei saa avaldada teiste kaudu. Niteks ei kehti samavrsused
he kvantori avaldamiseks teise kvantori ja eituse kaudu.
13.4. Intuitsionistlik predikaatarvutus
Ajalooliselt tekkis intuitsionistlik predikaatarvutus klassikalisest
arvutusest. Me vime uurida klassikalise arvutuse reegleid ja
aksioome ning kontrollida, millised neist on koosklas meie
semantiliste kokkulepetega ja millised tuleb asendada uutega (nr-
gematega). Kui vtame seejuures aluseks paragrahvis 6.1 too-
dud Hilberti tpi lausearvutuse K, siis avastame, et ainsana
ei vasta intuitsionistlikele semantilistele kokkulepetele aksioom
(K10): p p. Klassikalised aksioomid ja reeglid kvantorite
kohta on aga kik aktsepteeritavad. Asendades aksioomi (K10) in-
tuitsionistlikele kokkulepetele vastava aksioomiga p (p q),
saame intuitsionistliku predikaatarvutuse, kus aksioomid on
(K1)(K9)
(I10) p (p q)
(H4)(H5)
ja tuletusreeglid
modus ponens
(Gen)
Et lisatud aksioom (I10) on klassikaliselt tuletatav (samaselt
tene), siis on iga intuitsionistlikus ssteemis tuletatav valem seda
samuti.
Gentzen nitas, et laltooduga samavrse sekventsiaalse in-
tuitsionistliku predikaatarvutuse saame, kui lubame paragrahvis 6.3
formuleeritud ssteemis kasutada vaid selliseid sekventse, mille
suktsedent on thi vi sisaldab ainult hte valemit. Jttes suktse-
dentidest liigsed liikmed vlja, vime loogilised reeglid formulee-
rida tabelis 13.1 toodud viisil, kus on kikjal thi vi koosneb
hest valemist ning muutuja a ei esine reeglites () ja ()
vabalt ja valemites.
13.4. Intuitsionistlik predikaatarvutus 257
A,
A & B,
,
B,
A & B,
(&)
A B
A & B
(&)
A, B,
A B,
()
A
A B
,
B
A B
()
A B,
A B, ,
()
A, B
A B
()
A
A,
()
A,
A
()
A(x/t),
x A(x),
()
A(x/a)
x A(x)
()
A(x/a),
x A(x),
()
A(x/t)
x A(x)
()
Tabel 13.1. Intuitsionistlik tuletusssteem.
Struktuursetest reeglitest kaotavad kahe valemiga suktsedenti
sisaldavad reeglid oma mtte. Et ka intuitsionistliku ssteemi jaoks
saab testada likereegli elimineeritavuse, jvad alles kolm reeglit
antetsedendi jaoks ja ks suktsedendi jaoks:

C,
, C, D,
, D, C,
C, C,
C,

C
Paragrahvis 13.2 toodud valemi (A A) testuse saame
258 13. Intuitsionistlik loogika
formaliseerida jrgmise tuletusena:
A A
A A A
()
(A A), A
()
A, (A A)
(A A) A
()
(A A) A A
()
(A A), (A A)
()
(A A)
(A A)
()
Paragrahvis 6.3 toodud konjunktsiooni kommutatiivsuse sea-
duse tuletuses on suktsedentides ainult ks valem. Jrelikult
kuulub see tuletus ka intuitsionistlikku arvutusse. Sekvents
x P(x) x P(x) tuletatakse seal aga disjunktsiooni teise
eksemplari sissetoomisega suktsedenti. Seega on see testus klassi-
kaline. Veelgi enam. Ainsad reeglid, mille rakendamise tulemusena
viks selle sekventsi saada, on () ja valemi lisamine suktse-
denti. Aga siis peaks olema tuletatav ks sekventsidest x P(x),
x P(x) vi . Need sekventsid aga pole ilmselt isegi klas-
sikaliselt tuletatavad (nad pole samaselt tesed). Neme jlle, et
sekventsionaalse arvutuse jaoks on mnikord lihtne testada ka
mittetuletatavust.
13.5. Kripke mudelid
Intuitsionistlikku tesust on ptud formaliseerida ka Kripke mu-
delitega, mis kirjeldavad teadmiste vimalikku arengut. Aluseks
vetakse modaalloogika S4, mille mudelites saab maailmad anti-
smmeetrilisuse lisatingimuse abil osaliselt jrjestada
1
. Intuitsio-
nistliku loogika Kripke mudelites nutakse, et see osaline jrjestus
1
Binaarne seos R on antismmeetriline, kui xy (xRy & yRx x = y).
Osaline jrjestus on reeksiivne, antismmeetriline ja transitiivne binaarne
seos.
13.5. Kripke mudelid 259
oleks puukujuline
2
, mille juureks (minimaalseks elemendiks) on
tegelik maailm. Puuharud kirjeldavad videte tendamise prot-
sessi vimalikke arenguid, kusjuures juba tendatud vited jvad
teseks ka edaspidi.
Definitsioon 13.3. Intuitsionistliku predikaatloogika Kripke mudel
mingi signatuuri jaoks on
= , , w

, , I,
kus on vimalike maailmade hulk, w

on tegelik maailm, on
maailmadevahelise (puukujulise) jrjestuse seos, annab iga
maailma universumi ja I mrab iga maailma interpretatsiooni.
Me eeldame, et maailmade universumid kasvavad tendatud
videte hulga kasvamisel monotoonselt:
w w

(w) (w

).
Loogiliste tehete semantika anname jrgmiselt:
1. w |= p I (w) |= p (p on atomaarne valem).
2. w |= p & q w |= p ja w |= q.
w |= p q w |= p vi w |= q.
w |= p q iga w

w korral w

|= p w

|= q.
w |= p iga w

w korral w

|= p.
3. w |= x p iga w

w ja iga c (w

) korral
w

|= p {x/c}.
w |= x p leidub c (w), nii et w |= p {x/c}.
4. |= p w

|= p,
kus w on suvaline vimalik maailm ja w

on tegelik maailm.
Thistame intuitsionistliku jreldumist smboliga |=
I
.
2
S.t. tskliteta sidus orienteeritud juurega graaf.
260 13. Intuitsionistlik loogika
Nide 13.4. Nitame, et
(A & B) |=
I
A B.
Valime kolmest maailmast koosneva Kripke mudeli
w

u v
A B
= {w

, u, v}, , w

, , I,
kus vide A tendatakse hes puuharus ja B teises puuharus.
= {(w

, u), (w

, v)},
(w

) = (u) = (v) = ,
I (w

) = , I (u) = {A}, I (v) = {B}.


Selles mudelis kehtib w

|= (A & B), sest kski tema maailm ei


tenda valemit A & B: A I (w

), I (v) ja B I (u). Kuid w

|= A,
sest w

u ja u |= A; samuti w

|= B, sest w

v ja v |= B.
Jrelikult w

|= A B.
Nide 13.5. Testame, et
x (Fx A) |=
I
x Fx A.
Testamiseks valime Kripke mudeli
= {w

, u}, , w

, , I,
kus
= {(w

, u)},
(w

) = {a} (u) = {a, b},


I (w

) = {Fa} I (u) = {Fa, A}.


w

|= Fa A, sest w

|= Fa; u |= Fa A ja u |= FbA, sest u |= A.


Seega w

|= x (Fx A).
Kuid w

|= A, sest A I (w

), ja w

|= x Fx, sest u w

,
b (u) ja Fb I (u). Seega w

|= x Fx A.
13.6. Rekursiivne realiseeritavus. Nelsoni teoreem 261
Saab nidata, et Kripke semantika on intuitsionistlike tuletus-
ssteemide suhtes korrektne ja tielik.
Teoreem 13.6 (tielikkus).
I
p |=
I
p.
Klassikaliselt tesed laused saab kergesti teisendada intuit-
sionistlikult testeks lauseteks: kirjutame iga valemi ette kaks
eituseseost.
Teoreem 13.7. |= p |=
I
p.
Jrelikult vib intuitsionistlikku loogikat vaadata kui klassikalise
loogika ldistust, millest saab valemite klassi piiramisega eraldada
klassikalise fragmendi.
13.6. Rekursiivne realiseeritavus. Nelsoni
teoreem
Kripke mudeleid vib konstrueerida suvalise signatuuri jaoks.
Vaatleme veel hte konkreetset aritmeetikavalemitele antud intuit-
sionistlikku semantikat, mis seob ka intuitsionistliku tuletatavuse ja
algoritmilise arvutatavuse. Rekursiivse realiseeritavuse deneeris
1945. aastal Stephen Cole Kleene kui he vimaliku intuitsionist-
liku semantika.
Defineerime relatsiooni e r A, kus e ja A on kin-
nine valem signatuuris 0;

, +, ; =: Naturaalarv e realiseerib
valemi A. This
e
thendab denitsioonis funktsiooni, mida
arvutab Turingi masin M
e
, s.t. e on seda funktsiooni arvutava
algoritmi kood.
1. Kui A on atomaarne aritmeetikavalem s = t , kus s ja t on
(kinnised, s.t. muutujateta) termid, siis e r s = t e = 0 ja
s = t on tene.
2. e r A & B e = 2
a
3
b
, kus a r A ja b r B.
3. e r A B e = 2
0
3
a
, kus a r A, vi e = 2
1
3
b
, kus b r B.
262 13. Intuitsionistlik loogika
4. e r A B n [n r A [
e
(n) r B]].
5. e r A e r (A 0 = 1).
6. e r x A(x) e = 2
a
3
b
, kus a r A(b).
7. e r x A(x) n [
e
(n) r A(n)].
See denitsioon vastab intuitsionistliku semantika ldisele
skeemile paragrahvis 13.3, kusjuures tendavateks konstruktsiooni-
deks on valitud naturaalarvud (vaadelduna teatud algoritmi koodi-
dena), ldiseks meetodiks rekursiivsed funktsioonid ja standardseks
vraks valemiks on vetud 0 = 1. Oluline on siin, et indukt-
siooni baas muutujateta termide vrdus on intuitsionisti
jaoks piisavalt heselt mistetav: selliste termide vrtused saab
arvutada ja vrduse kehtimist kontrollida. Teiselt poolt vib re-
kursiivset realiseeritavust mista kui klassikule arusaadavat tpse
denitsiooniga antud intuitsionistlikku semantikat.
Definitsioon 13.8. Vabade muutujatega valemite jaoks deneeri-
takse:
e r A(x
1
, ..., x
n
) k
1
. . . k
n
[
e
(k
1
, . . . , k
n
) r A(k
1
, ..., k
n
)],
s.t. tingimus on sama nagu e r x
1
...x
n
A(x
1
, . . . , x
n
) jaoks.
Definitsioon 13.9. Valemit A nimetame realiseeritavaks ja kirju-
tame r A, kui leidub selline arv e, et e r A.
Millist tendavat informatsiooni sisaldab realiseeriv arv? Nagu
nha, kodeerivad realisatsioonid huvitavamatel juhtudel teatud
algoritme. Uurime, mis (milliste algoritmide olemasolu) on vajalik
nii- vi teistsuguse ehitusega valemi realiseeritavuseks?
1. Vaatleme valemeid kujul A. Definitsiooni jrgi tingimust
lahti kirjutades saame:
e r A
e r (A 0 = 1)
n [n r A [
e
(n) r 0 = 1]].
13.6. Rekursiivne realiseeritavus. Nelsoni teoreem 263
Et 0 = 1 kui vr atomaarne valem ei ole definitsiooni jrgi
realiseeritav, siis saab A olla realiseeritav ainult juhul,
kui kski arv n ei realiseeri A. A mitterealiseeritavus on
aga ka piisav selleks, et suvaline arv e realiseeriks A, sest
implikatsioon on siis vasaku poole vruse tttu tene arvust

e
(n) sltumata. Seega: A on realiseeritav parajasti siis,
kui A pole realiseeritav, ja sellisel juhul realiseerib eitust
iga naturaalarv. Arvutuslikust kljest thendab see, et eituse
realisatsioon ei sisalda mingit informatsiooni.
Samuti kehtib:
r A parajasti siis, kui pole r A,
s.t. parajasti siis, kui r A.
Oleme sellega testanud, et realiseeritavusloogikas kehtib
vlimise kahekordse eituse rajtmise seadus (see ei thenda
aga veel A A realiseeritavust!). Eespool veendusime,
et alati niisugune seadus intuitsionistlikus loogikas ei kehti.
2. Vaatleme valemeid kujul x [A(x) A(x)]. Definitsiooni
lahti kirjutades saame:
e r x [A(x) A(x)]
n [
e
(n) r [A(n) A(n)]]
n [
e
(n) = 2
0
3
a
, kus a r A(n), vi
e = 2
1
3
b
, kus b r A(n)].
Niisiis vime suvalise n korral prast
e
(n) arvutamist
leida, kas see on paaritu vi paarisarv ja nii teada saada,
kas kehtib A(n) vi A(n). Seega kodeerib realiseeriv arv e
muuhulgas omadust A(x) lahendavat algoritmi ja jrelikult
on sellisel kujul oleva valemi realiseeritavuseks tarvilik
omaduse A(x) algoritmiline lahenduvus. Klassikaliselt on
aga iga valem kujul x [A(x) A(x)] tuletatav. Jrelikult
leidub klassikaliselt tuletatav mitterealiseeritav valem.
264 13. Intuitsionistlik loogika
3. Valemid kujul xy A(x, y). Saame:
e r xy A(x, y)
n [
e
(n) r y A(n, y)]
n [
e
(n) = 2
a
3
b
, kus a r A(n, b)].
Seega saab realiseeriva algoritmi abil iga x jaoks arvutada
sellise y, et A(x, y) on realiseeritav, ja ka selle valemi
realisatsiooni.
Matemaatikas testatakse tihti viimati toodud kujul olevaid
teoreeme, mis vidavad, et parameetrite x suvaliste vrtuste kor-
ral leidub vaadeldaval vrrandil vi vrrandissteemil lahend y.
Teoreemi praktiliseks kasutamiseks on vaja ka algoritmi, mis vr-
randi parameetrite jrgi leiab lahendi. Jrgmine teoreem nitab, et
kui teoreem on testatud intuitsionistlikus ssteemis, siis testusest
saab eraldada ka algoritmi.
Teoreem 13.10 (Nelson, 1947). Iga intuitsionistlikus aritmeetikas
tuletatav valem on rekursiivselt realiseeritav. Leidub algoritm, mis
valemi tuletuse jrgi leiab realisatsiooni.
Teoreem testatakse induktsiooniga tuletuse ehituse jrgi, ni-
dates et
1) intuitsionistliku loogika ja aritmeetika aksioomid on reali-
seeritavad;
2) tuletusreeglite kohta kehtib: leidub algoritm, mis lemise
valemi suvalise realisatsiooni jrgi leiab alumise valemi realisat-
siooni.
13.7. lesanded 265
13.7. lesanded
1. Nidake, et
(a) A |=
I
A;
(b) |=
I
A A;
(c) x Fx |=
I
x Fx.
2. Testage, et A
I
A B.
14. Hgusloogika
Et midagi saavutada ning selles kindel olla,
peab sihikule vtma suure.
John Stuart Mill (18061873)
Vale, aga jgitu.
Arg, aga vapper.
Vale, aga tde.
Linnar Priimgi
14.1. Soriitide paradoksid
Vaatleme unte rivi paradoksi. Oletame, et me korjasime aiast
sada una. Jaotame unad punasteks, kollasteks ja rohelisteks.
Jrjestame igat liiki unad vrvi intensiivsuse jrgi, nii et tule-
museks on pikk unte rivi, mis algab pris roheliste untega;
edasi tulevad kollakasrohelised toonid, mis lhevad jrkjrgult le
kollasteks toonideks; kollastele untele jrgnevad kollakaspunased
unad ning rivi lpeb tiesti punaste untega.
Thistame selle rivi unad
o
1
, o
2
, . . . , o
100
.
Me saame snastada unte rivi kohta kolm videt:
14.1. Soriitide paradoksid 267
1. Esimene un o
1
on roheline.
2. Kui o
i
on roheline, siis o
i+1
on roheline (1 i < 100).
3. Viimane un o
100
ei ole roheline.
Vited 1 ja 3 on ilmselt tesed. Vide 2 tundub kll kahtlane,
kuid ta on pigem tene kui vr. Tema vraks tunnistamiseks
peaks rivis leiduma selline jrjestikuste unte paar, kus eelmine
un on roheline, jrgmine un ei ole aga roheline. Niisuguse paari
leidmine on aga ksitav, sest jrjestikused unad on praktiliselt
sama vrvi.
Need kolm videt moodustavad vasturkiva lausete hulga.
Selles veendumiseks piisab ainult lausearvutuse kasutamisest. Kir-
jutades teise vite iga unte paari jaoks eraldi vlja, saame videte
jada:
o
1
on roheline,
o
1
on roheline o
2
on roheline,
o
2
on roheline o
3
on roheline,
. . .
o
99
on roheline o
100
on roheline,
millest jreldub modus ponensi korduva rakendamise teel vide
o
100
on roheline,
mis on vastuolus 3. vitega.
Sellist tpi arutlusi nimetatakse soriitide (aheljrelduste) pa-
radoksideks. Loetleme veel mnda soriitide paradoksi.
Kuhjaparadoks. 100 000 liivatera moodustavad kuhja. he
liivatera kuhjast eemaldamine ei likvideeri kuhja. Jrelikult
moodustab ka ks liivatera kuhja.
268 14. Hgusloogika
Inimeksistentsi paradoks. Iga imik on inimene. Kui miski
on inimene ajahetkel t , siis on ta seda ka ajahetkel t ,
kus on vabalt valitav ajavahemik. Seega on viljastunud
munarakk ka inimene.
Kik need arutlused phinevad samal nhtusel, kus objektide
omadused muutuvad suuremas vahemikus, kui predikaatidega on
vimalik kirjeldada. Vikse muutuse korral jb predikaat samaks,
kuid suure muutuse korral predikaat muutub. Paradoksides annab
vikeste muutuste jada kokkuvttes suure muutuse. Antud juhul ei
ole viga mitte eeldustes, vaid loogilises aparatuuris. ks vimalik
lahendus on leminek kahevalentsest loogikast mitmevalentsesse
loogikasse.
lesanded
1. Kiilaspea paradoks. Testage, et mitte keegi ei ole kiilaspea.
2. Hletamisea paradoks. Testage, et kski inimene pole hlei-
guse omamiseks kunagi piisavalt kps.
14.2. Hgusloogika semantika
Eelmises punktis toodud unte rivi nite korral muutus predikaadi
roheline rakendatavusaste pidevalt viksemaks. Samas suurenes
pidevalt predikaatide kollane ja punane rakendatavus. Klassikalises
loogikas on iga vide kas tene vi vr. Seega kehtib iga
predikaadi p(x) korral
p(x) {t, v}.
Hgusloogikas vetakse predikaadi rakendatavusastme thista-
miseks kasutusele predikaadi tesusaste
p(x) [0, 1],
kus tevrtuste hulk on asendatud reaalarvulise liguga [0, 1], nii
et 0 on vr ja 1 on tene. See thendab, et me loeme lauset p(x)
teseks niivrd, kuivrd predikaat p on objektile x rakendatav.
Eesti keeles ei kasutata mitte ainult kahte tesusastet: tene ja
vr, vaid tesus varieerub sageli kindlas vahemikus. Me vime
14.2. Hgusloogika semantika 269
niteks mingi lause kohta elda, et see on tiesti tene, osaliselt
tene, peaaegu vr vms.
Hgusloogika semantika kirjeldamiseks laiendame klassikalise
interpretatsiooni mistet. Hgusinterpretatsioon on loetelu
= U ; Const ; Pred ,
kus U on interpretatsiooni universum, Const seab signa-
tuuri igale konstantsmbolile c vastavusse universumi U mingi
elemendi c ja Pred mrab kasutatavate predikaatide tesus-
astmed kigil universumi elementidel.
Klassikalist interpretatsiooni saab sellisel juhul vaadelda kui
hgusinterpretatsiooni erijuhtu, kus kasutatakse ainult tesusast-
meid 0 ja 1. Samas peab hgusloogika semantika olema vastavuses
loogikareeglitega ja meie intuitsiooniga ning lahendama soriitide
paradoksid.
Me asendasime tevrtused tene ja vr vastavalt reaalar-
vudega 1 ja 0. Sellisel juhul on mistlik vaadelda tesusastme x
eitust kui tesusastet 1 x. Tesusastmete x ja y konjunktsiooni
vrtuseks vib vtta neist arvudest viksema. Nende disjunkt-
siooni vrtuseks sobib aga suurem arvudest x ja y. Nii annavad
klassikalised loogikatehted ja hgustehted tesusastmetel 1 ja 0
sama tulemuse. Miinimum- ja maksimumfunktsioonide kasuta-
mine on antud juhul loomulik, sest nendel funktsioonidel on
konjunktsiooniga ja disjunktsiooniga palju sarnaseid omadusi. Nad
on niteks kommutatiivsed ja assotsiatiivsed. Samuti on nad oma
argumentide suhtes monotoonselt mittekahanevad.
Nii saame hgusloogika semantikareeglid:
1. Atomaarse valemi p tesusastme [p] mrab tema hgu-
sinterpretatsioon p :
[p] = p .
2. [p] = 1 [p].
3. [p & q] = min { [p], [q]},
[p q] = max { [p], [q]}.
270 14. Hgusloogika
Vttes niteks [A] = 0,75, saame
[A] = 1 [A] = 0,25 .
Seega on peaaegu tese lause eitus praktiliselt vr. Lihtne
on veenduda, et hgusloogikas ei kehti vasturkivusseadus ega
vlistatud kolmanda seadus. Meie nite korral on tesusaste
[A & A] = min { [A], [A]}
= min {0,75 , 0,25}
= 0,25 ,
mis on tunduvalt suurem kui tielik vrus 0 ja
[A A] = max { [A], [A]}
= max {0,75 , 0,25}
= 0,75
pole ka tiesti tene. Vtame tieliku vruse thistamiseks
tarvitusele smboli ning defineerime
[] = 0.
Klassikalises loogikas arvatakse implikatsioon vraks, kui
tema eeldus on tene ja jreldus on vr. Hgusloogikas thendab
see situatsiooni, kus eelduse tesusaste on jrelduse tesusastmest
suurem. Selleprast on loomulik implikatsiooni tesusastmeks pi-
dada tesuse kadu leminekul tema eelduse tesusastmelt jrelduse
tesusastmele:
[p q] =

1 ( [p] [q]), kui [p] > [q];


1, muidu.
Iga hgusinterpretatsiooni korral kehtivad siis niteks vrdused
[1 0] = 1 (1 0) = 0,
[0,75 0,5] = 0,25,
[0,5 0,75] = 1.
ldisus- ja eksistentsikvantoreid vib klassikalisel juhul ksit-
leda vastavalt kui konjunktsiooni ja disjunktsiooni le universumi
14.2. Hgusloogika semantika 271
kigi elementide. Hgusloogikas saame selliselt kvantorite seman-
tikareeglid
[x p(x)] = min { [p(c )] | c U },
[x p(x)] = max { [p(c )] | c U }.
Hgusloogikas saab loogilist jreldumist defineerida mitmel
viisil. Klassikalises mttes ei tohi tuletada testest eeldustest vra
jreldust:
|=
F
p ei leidu hgusinterpretatsiooni ,
nii et [] = 1 ja [p] = 0 ,
kus on lplik lausete hulk, mille tesusastmeks on tema kompo-
nentlausete konjunktsiooni tesusaste. Kui me ei luba teha teste
eelduste phjal mittetest jreldust, siis saame nrga jreldumise
denitsiooni
|=
F2
p ei leidu hgusinterpretatsiooni ,
nii et [] = 1 ja [p] < 1.
Kui me aga keelame jreldamisel tesusastme vhenemise, siis
saame tugeva jreldumise definitsiooni
|=
F3
p ei leidu hgusinterpretatsiooni ,
nii et [p] < [].
Saab nidata, et tugev jreldumine implitseerib nrga jreldumise:
|=
F3
p |=
F2
p.
Vastupidine vide aga ei kehti (lesanne 14.2.3).
Nd on vimalik veenduda, et soriitide paradoksid ei kehti
hgusloogikas. Niteks unte rivi paradoksi korral ei ole eeldused
Kui o
i
on roheline, siis o
i+1
on roheline,
enam tiesti tesed, sest implikatsiooni jrelduse tesusaste on
eelduse tesusastmest viksem. Mittetestest eeldustest vib klas-
sikalisel ja nrgal jreldamisel teha suvalise jrelduse. Soriitide
paradoksid ei kehti ka tugevas mttes, sest modus ponensi reegel
272 14. Hgusloogika
ei ole tugeva jreldumise suhtes korrektne, s.t. tema jrelduse
tesusaste vib olla eelduste tesusastmetest viksem. Selle nita-
miseks valime laused A ja B, nii et [A] = 0,5 ja [B] = 0,4.
Siis kehtib
A, A B |=
F3
B,
sest [A B] = 0,9, min { [A], [A B]} = 0,5 ja
[B] < [A & (A B)]. Nrga jreldumise suhtes on aga modus
ponens korrektne:
A, A B |=
F2
B.
Klassikaliste tuletusreeglite mittekorrektsus ongi peamiseks
phjuseks, miks seniajani on kirjeldamata hgusloogika korrektne
ja tielik tuletusreeglite ssteem.
lesanded
1. Nidake, et
A B |=
F2,F3
A B.
2. *Testage, et modus ponensi reegel on nrga jreldumise suhtes
korrektne.
3. Nidake, et |=
F2
p |=
F3
p.
4. Nidake, et |=
F2
p |=
F
p, kuid |=
F
p |=
F2
p.
15. Mittemonotoonne
loogika
Tde tuseb, vale vajub.
Eesti vanasna
Mittemonotoonne loogika tekkis 1980. aastatel. Siis hakkasid selle
valdkonna vastu huvi tundma tehisintellekti esindajad, kes ttasid
vlja mitu selliste loogikate kirjeldamise meetodit.
15.1. McCarthy nide
Vaatleme lauseid:
Kgist saab klma vett.
Homme tuseb pike.
Virge Naeris ei vida olmpiamngudel kuldmedalit.
Selles kursuses ei rgita llejoomise kultuurist.
Nende lausete teprasus on kllalt suur. Kuid vib ette kujutada
olukordi, kus majas on klm vesi kinni keeratud vi Virge Naeris
saab kolmikhppes olmpiakulla.
274 15. Mittemonotoonne loogika
Me ei vaatle lauseid kui vankumatuid tdesid, vaid nad vivad
osutuda vradeks, kui me saame konkreetse olukorra kohta
tpsustatud informatsiooni.
Vaatleme mittemonotoonse loogika standardnidet lausete vr-
tustamise kohta mittemonotoonsetes arutlustes. Oletame, et ma
tlen:
Linnud lendavad.
Tweety on lind.
Kas sellest saab jreldada, et Tweety lendab? Selline jreldus on
antud juhul eeldatav. Kuid Tweety vib ka mitte lennata ta
vib olla niteks jaanalind vi pingviin. Ta vib olla ka lihtsalt
lennuvimetu. Me peame kigil nendel juhtudel oma esialgse
jrelduse tagasi vtma.
Jrelikult ei ole vaadeldav reegel mitte
(x) (x),
vaid niteks
(x) & (x) (x),
s.t. kik normaalsed linnud lendavad. See vide pannakse tavaliselt
kirja vaikimisireegli abil:
(x) & (x) (x),
s.t. kui lind ei ole ebanormaalne, siis ta lendab. ige ei ole ka
vide, et kik ebanormaalsed linnud ei lenda, sest jaanalind vib
niteks lennata lennukiga. Siis on tegemist erandi erandiga.
Kuidas saab teha otsustuse ( )? Loomulikult ei
saa me seda tuletada, vaid saame eeldada, et Tweety on normaalne
lind, kuna puuduvad seda mber lkkavad vited. Aga kui ilmub
vlja vastupidine informatsioon, siis me thistame selle eelduse.
Me teame niteks, et jaanalinnud ei lenda:
(x) (x) & (x).
15.1. McCarthy nide 275
jaanalinnud linnud
lendajad
Fred Tweety
Joonis 15.1. Lendavate objektide skeem.
Sellest saab aga tuletada, et jaanalinnud on ebanormaalsed (les-
anne 15.1.1, lk. 276):
(x) (x).
Seega, kui Fred on jaanalind, siis me ei saa eeldada ( ).
Thistades vaikimisireegleid hekordsete nooltega ja rangeid
reegleid topeltnooltega, saame joonisel 15.1 toodud skeemi:
(x) & (x) (x),
(x) &
j
(x) (x),
(x) (x),
(x) (x),
(x) (x).
Me kasutame siin erisuguseid ebanormaalsuse predikaate, sest
ebanormaalsed linnud (kes ei lenda) erinevad ebanormaalsetest
jaanalindudest (kes lendavad). See, et objekt on hes mttes eba-
normaalne, ei thenda sugugi, et ta on igas mttes ebanormaalne.
276 15. Mittemonotoonne loogika
lesanded
1. Nidake, et kehtib arutlus.
(x) & (x) (x)
(x) (x) & (x)
(x) (x)
15.2. Nite formaalne ksitlus
Miks nimetatakse niisugust arutluse tpi mittemonotoonseks?
Klassikaline loogika on monotoonne, sest temas kehtib
|= p, |= p,
s.t. loogiliste jrelduste hulk ei kahane eelduste hulga kasvamisel.
Mittemonotoonsete arutluste korral see ei kehti. Kui selgub,
et Tweety on jaanalind, tuleb thistada eelnev otsustus Tweety
lendamise kohta, mistttu jrelduste hulk ei kasva uute faktide
teadasaamisel monotoonselt.
Ent kuidas me otsustasime, et Tweety on normaalne lind ning
oskab lennata? Vastus on selline. et meil on hulk eeldusi, mida
me soovime kasutada, ning me usume neist eeldustest nii paljusid
kui vimalik.
Olgu T kigi lausete hulk, mille kohta me teame, et nad on
tesed, ja A eelduste hulk, mida me soovime arutlustes vaiki-
misi kasutada (niteks normaalsuse eeldused kigi vaadeldavate
objektide kohta). Me tleme sellisel juhul, et paar (T, A) on
mittemonotoonne teooria ja T on baasteooria (s.t. teooria see osa,
mida me teame kindlalt).
Definitsioon 15.1. Mittemonotoonse teooria (T, A) laiend on A
suvaline maksimaalne osahulk E A, mis ei anna lausete
hulgaga T vastuolu. S.t. teooria laiend on ks vimalik viis,
kuidas asjad viksid olla, eeldusel, et me oleme T faktide
igsuses veendunud.
Joonisel 15.2 on toodud lendavate objektide lihtsustatud skeem,
15.2. Nite formaalne ksitlus 277
jaanalind lind
lendab
Fred Tweety
Joonis 15.2. Lendavate objektide lihtsustatud skeem.
kust on vlja jetud jaanalindude mittelendamist vljendav vaiki-
misireegel:
T =

(x) & (x) (x)


(x) (x) & (x)
( )
( )
Me soovime eeldada, et Fred ja Tweety on normaalsed linnud:
A =

( )
( )
Kuid Fred on jaanalind ja on seeprast ebanormaalne. Seega
kehtib T |= ( ) ning lause ( ) ei saa esineda
mitte heski T mittevasturkivas laiendis. Jrelikult on mittemo-
notoonse teooria (T, A) laiend heselt mratud:
E = { ( )}.
Kuna
T E |= ( ),
siis on ( ) antud teooria mittemonotoonne jreldus.
278 15. Mittemonotoonne loogika
Republicans Quakers
pacists
Nixon
Joonis 15.3. Nixoni romb.
lesanded
1. Nidake, et
(a) hulk E on vaadeldava mittemonotoonse teooria ainuke
laiend;
(b) T E |= ( ).
Kuid laiend ei tarvitse olla hene. Joonisel 15.3 on toodud
Nixoni romb
T =

(x) &
r
(x) (x)
(x) &
p
(x) (x)
( )
( ) ,
kus predikaat
r
mrgib religioosset ebanormaalsust ja
p
poliitilist ebanormaalsust.
Me soovime eeldada, et Nixon on nii poliitiliselt kui ka
religioosselt normaalne:
A = {
r
( ),
p
( )}.
Ent
T |=
r
( )
p
( ),
15.2. Nite formaalne ksitlus 279
jaanalind lind
lendab
Fred
Joonis 15.4. Fredi romb.
s.t. Nixon peab olema hes mttes ebanormaalne. Seega on
teoorial (T, A) kaks mittemonotoonset laiendit:
E
1
= {
p
( )},
E
2
= {
r
( )},
kuid me ei saa kumbagi laiendit teisele eelistada, sest me ei tea,
kas Nixon on patsifist vi ei ole.
Ka lindude ja jaanalindude nite korral saab konstrueerida
Nixoni rombi sarnase figuuri. Jtame Tweety vaatluse alt vlja ja
uurime, millise otsustuse saab teha Fredi kohta, eeldades, et ta on
igati normaalne:
A = { ( ),
j
( )}.
Fredi rombi korral annab lause
( )
j
( ).
kehtivus (nagu Nixoni rombi korral) vastuolu. Antud juhul on aga
vimalik eelistada hte teooria laiendit teisele: kuna jaanalinnud
moodustavad lindude alamklassi, siis tuleb eelistada jaanalindude
reeglit
(x) &
j
(x) (x).
ldjuhul ei ole kasutatava reegli valik nii lihtne. Seeprast on
280 15. Mittemonotoonne loogika
mitme vimaliku laiendi hulgast he valimise probleem praegu
thtis uurimisvaldkond.
15.3. Suletud maailm
Kogu negatiivset informatsiooni pole mtet tielikult kirjeldada,
sest selle hulk kasvab universumi htlasel suurenemisel geomeet-
riliselt.
Niteks, kui me teame, et Fred on jaanalind, siis me peaksime
ka toonitama, mida Fred ei ole:
( ),
( ),
( ),
. . .
Kui me aga teame, et Jaan on Tartus, siis ta ei saa olla Tallinnas.
Eeldades, et kogu positiivne informatsioon on antud, saab
suletud maailma eelduse (Reiter, 1978) abil teadmiste baasist
negatiivsed faktid lihtsalt tuletada:
p p,
s.t. kui p pole testatav, siis jreldame p.
Kuna reeglid on harilikult implikatiivsed, siis ei saa positiiv-
setest faktidest negatiivset informatsiooni otse tuletada. Me ei saa
niteks tuletada videtest
( ),
(x) (x)
lauset ( ), sest selle videte hulga Herbrandi
baas (mis koosneb antud signatuuri kigist kinnistest elementaar-
valemitest)
B = { ( ), ( )},
15.3. Suletud maailm 281
on ka tema mudeliks. Lause
( ),
tuletamiseks peame kasutama tielikkuse eeldusi (Clark, 1978),
mis muudavad implikatsioonid ekvivalentsideks.
Moodustame iga predikaadi jaoks tielikkuseaksioomi, mis
vidab, et predikaat on tene ainult teadmiste baasis kirjeldatud
juhtudel. Tieliku teadmiste baasi saamiseks tuleb lisada veel
vrduse aksioomid.
Lindude nite korral koosneb tielik teadmiste baas reeglitest
=

x = (x)
(x) (x)
(x) x = (x)
(x) ,
mille kaks viimast reeglit on tielikkuseaksioomid hekohaliste
predikaatide ja jaoks. Neist predikaatidest viimane
on alati vr, sest ei ole esialgses teadmiste baasis mitte
hegi reegli paremas pooles. Nd saab juba lihtsalt tuletada
( ).
Clark lisab ka nimede unikaalsuse aksioomid, mis tagavad,
et erinevad indiviidkonstandid viitavad erinevatele objektidele.
Lisades teadmiste baasi vite
( ),
tuleb tieliku teadmiste baasi saamiseks asendada predikaadi
kirjeldus vitega
(x) x =
ning lisada unikaalsuse aksioom
= .
Toome teadmiste baasi ka lendamise predikaadi
(x) & (x) (x)
282 15. Mittemonotoonne loogika
koos tielikkuseaksioomiga
(x) (x) & (x).
Nd saab tuletada vited
( ),
( ).
Kuid ilma nimede unikaalsuse aksioomita ei oleks saanud mitte
kumbagi neist lausetest tuletada.
Tielik teadmiste baas pole aga heselt mratud, sest lenda-
mise predikaadi tielikkuseaksioomi saab vaadelda ka kui predi-
kaadi tielikku kirjeldust:
(x) & (x) (x),
(x) (x) & (x).
Saadud tielikkuseaksioom ei ole aga eelmisega samavrne (les-
anne 15.3.1). Tielikkuseaksioom vib olla ka vasturkiv. Niteks
valemi
Pa = Pa Pa
= Pa Pa
tielikkuseaksioom
Px x = a & Pa
annab asenduse {x/a} korral vastuolu Pa Pa. Kahjuks pole
tpselt teada, millal vib tielikustamist kasutada ja millal mitte.
lesanded
1. Nidake, et jrgmised laused ei ole loogiliselt samavrsed:
(x) (x) & (x),
(x) (x) & (x).
15.4. Piiramine 283
15.4. Piiramine
McCarthy on esitanud suletud maailma eelduse rakendamiseks
terve hulga reegleid. Need reeglid on sntaktilised (nagu tielikus-
tamine), lisades uusi aksioome, mille eesmrgiks on minimaalsete
suletud maailma mudelite forsseerimine mittetieliku teooria jaoks.
Piiramistest on levinum predikaadi piiramine ja universumi piira-
mine.
Predikaadi piiramise nitena vaatleme maailma, kus kehtib
valem
(A) (B).
Aksioom
x ( (x) x = A) x ( (x) x = B)
suleb plokkide maailma, kasutades vlistavat disjunktsiooni ning
minimeerides predikaadi ekstensiooni.
Universumi piiramise korral kinnitatakse, et eksisteerivad ainult
antud kontekstis mainitavad indiviidid. Vaatleme niteks lihtsat
andmebaasi
petaja
Kask
Tamm
Platon
pilane
Kuusk
Mnd
Aristoteles
Juhendab
Kask Mnd
Tamm Kuusk
Platon Aristoteles
Lpliku indiviidide arvu korral saab universumi suletuse eel-
duse snastada indiviidide loeteluga kujul
x (x = Kask x = Tamm . . . x = Aristoteles).
Nd saab vastata ksimusele Kas kigil pilastel on petaja?
jaatavalt. Muidu oleksime pidanud vastama Pole teada.
Kui indiviidide arv pole fikseeritud, saab universumi piiramise
aksioomi esitada ka vitena
x (petaja(x) pilane(x)).
284 15. Mittemonotoonne loogika
15.5. Vaikimisi-loogika
Vaikimisi-loogikas (Reiter, 1978) ptakse minimaalsete mudelite
asemel mrata meid huvitavad mudelid. Selleks lisatakse esimest
jrku loogikale uued tuletusreeglid vaikimisireeglid. Erinevalt
tavalistest tuletusreeglitest vivad vaikimisireeglite eeldused viidata
nii tuntud faktidele kui ka kaheldavatele videtele, andes vimaluse
kasutada puuduvat negatiivset informatsiooni.
Definitsioon 15.2. Vaikimisiteooria on paar = (D, W), kus D
on vaikimisireeglite hulk ja W on suvaline esimest jrku loogika
valemite hulk.
Vaikimisireeglid on kujul
:
1
, . . . ,
m

,
kus on eeldus,
i
(i = 1, . . . , m) on phjendused ja on
jreldus.
Vaikimisireegel tleb, et kui me teame tema eeldust ja meil
pole midagi toodud phjenduste vastu (s.t. nende eitused ei ole
tuletatavad), siis vib tuletada tema jrelduse.
Kui phjendusi on ks (m = 1), vaadeldakse eraldi kahte
juhtumit:
Kui phjendus on kujul = , siis on tegemist normaalse
vaikimisireegliga.
Kui phjendus on kujul = & (kus on suvaline
valem), on tegemist poolnormaalse vaikimisireegliga.
Kirjanduses vaadeldaksegi philiselt normaalseid ja poolnormaal-
seid reegleid.
Normaalne vaikimisireegel on niteks
(x) : (x)
(x)
,
15.5. Vaikimisi-loogika 285
mis tleb, et iga lind, kelle kohta ei ole teada, et ta ei lenda,
oskab lennata. Poolnormaalne vaikimisireegel on aga
(x) : (x) & (x)
(x)
,
mis vidab, et vaikimisi mittepingviinid lendavad.
Vaikimisi-loogikas saab niteks esitada suletud maailma reegli:
: p
p
,
sest kui meil pole midagi p vastu (niteks p), siis vib p
tuletada.
Vaatame jlle traditsioonilist vaikimisiteooriat
W =

(x) (x)
(x) (x)
(x) (x)
(x) (x)
( ) ,
mille vaikimisireeglite hulk on
D =

(x) : (x)
(x)
.
Selles teoorias saab tuletada vite
( ).
Hiljem vib see lause osutuda mittetuletatavaks. Niteks kui
selgub, et Tweety on pingviin. Me saame selles teoorias tuletada
ka vite
( ) ( ).
Kahjuks ei ole vaikimisi-loogika kikide jrelduste hulk rekur-
siivselt loetletav, s.t. ei leidu algoritmi, mis loetleks kik antud
vaikimisiteooriast jrelduvad vited.
286 15. Mittemonotoonne loogika
15.6. Autoepisteemiline loogika
Autoepisteemiline loogika (Moore, 1983) kasutab maailma kir-
jeldamiseks teadmise modaalset predikaati, mille ta omistab oma
uskumiste le arutlevale ideaalselt mtlevale agendile.
Moore interpreteerib mittemonotoonses loogikas aksioomi
x ( (x) & M( (x)) (x))
mitte kui Tpiline lind lendab, vaid kui Ainsad linnud, kes
ei lenda, on linnud, kelle kohta on teada, et nad ei lenda.
Nii muutub arutluse all olev aksioom viteks agendi (mitte aga
tpilise indiviidi) teadmiste kohta.
Moore mrgib, et vaikimisi-loogika ja autoepisteemiline loo-
gika on erinevatel phjustel mittemonotoonsed. Vaikimisi-loogika
on katseline ja on seeprast mberlkatav. Autoepisteemiline loo-
gika teeb ainult kehtivaid jreldusi ja tema mittemonotoonsus
tuleneb kontekstist, sest videte thendused sltuvad agendi tead-
mistest: kui agent pib midagi juurde, siis muutub ka videte
tesus.
15.7. lesanded
1. *On teada, et kik teed viivad Rooma. Testage, et likooli
tnav ei vii Rooma.
16. Lineaarloogika
Lineaarloogika on klassikalise loogika laiendus, milles ptakse
formaliseerida ressursside liikumisega seotud probleeme. Tema
autoriks on prantsuse loogik Jean-Yves Girard.
Lineaarloogika lahutab hariliku disjunktsiooni ja konjunkt-
siooni n. algosadeks, kummagi kaheks eri komponendiks. Li-
neaarloogika on seega eriti peeneteraline loogika, mis annab
tpsemad kirjeldusvimalused kui harilik loogika.
16.1. Tegevuste ja situatsioonide kordumatus
Kuna klassikalise ja intuitsionistliku loogika aluseks on samasus-
seadus, siis tegeldakse nendes teooriates psivate tdedega. Niteks
kehtib neis arutlus
A, A B
B
,
kus lausete A ja A B tesusest saadakse lause B tesus. Samal
ajal silib ka lause A tesus.
Niisugune stabiilsus on hea matemaatikas, kuid ei kehti reaal-
setes situatsioonides. Vitel, et A-st jreldub B, vib loomulikus
keeles ja tegelikus elus olla mitu thendust. Kige avarama then-
duse formaliseerib klassikaline loogika:
A B = A B.
288 16. Lineaarloogika
Intuitsionistlik loogika formaliseerib jreldust pisut kitsamalt, nu-
des, et A testusest saaks konstrueerida B testuse. Veel rangemalt
ksitleb jreldust relevantsusloogika, mis formaliseerib jrelduse
kausaalset iseloomu: A B vib elda ainult sel juhul, kui B
testamise juures lheb tingimata vaja ka A-d. Niteks ei ole vide
Kuul on lehmi, jrelikult olen kolm meetrit
pikk
relevantselt tsi isegi siis, kui Kuul lehmi pole. Lineaarloogika
lheb relevantsusloogikast teatud mttes sammu kaugemale: A-st
B jreldamine tarvitab A ra, nii et prast jreldusreegli rakenda-
mist enam A-d alles pole. Fsikas ja keemias nimetatakse sellist
protsessi reaktsiooniks. Samas annab lineaarloogika vimaluse k-
sitleda jreldust soovi korral klassikaliselt: lineaarloogika annab
vahendid jrelduse thendust soovi kohaselt mrata.
Kujutame niteks ette olukorda, kus me saame sooritada kahte
tegevust:
A: kulutame 5 krooni.
B: saame paki sigarette.
Thistame tegevuse, kus me ostame 5 krooni eest paki sigarette,
valemiga
A B.
Kuna me saame suitsude ostmisel oma kroonidest lahti, siis ei
saa seda operatsiooni enam korrata. Loomulikult on tihti ka juhtu-
meid, kus reaktsiooni ei toimu vi seda saab ignoreerida. Niteks
matemaatiliste abitulemuste tesus silib ka prast testuse lppu.
Samuti on inimesi, kellel on piiramatul hulgal raha. Loetletud
juhtudel on tegemist stabiilsete olukordadega, mille ksitlemisel
kasutatakse spetsiaalseid seoseid ! ja ?, mida nimetatakse ekspo-
nentideks.
Eksponendid vljendavad tegevuse korratavust, s.t. reaktsiooni
puudumist. Valem !A tleb, et me vime kulutada nii palju
kroone, kui tahame. Smbol thistab lineaarset implikatsiooni,
s.t. implikatsiooni, mis oma eelduse ra tarvitab. Lineaarloogikas
16.2. Kaks konjunktsiooni ja disjunktsiooni 289
saab tavalise implikatsiooni avaldada kujul
A B = (!A) B,
s.t. lausest A jreldub B parajasti siis, kui itereeritud A phjus-
tab B.
Kik klassikalise ja intuitsionistliku loogika laused saab tlkida
lineaarloogika keelde. Jrelikult ei kaota me lineaarloogikasse
leminekuga mitte midagi. Milline on aga saadud kasu?
16.2. Kaks konjunktsiooni ja disjunktsiooni
Lineaarloogikas kasutatakse kahte konjunktsiooni: (korda) ja
& (koos), mis esindavad sna ja erinevaid keelelisi kasutusi:
korral sooritatakse mlemad vaadeldavad tegevused.
& korral sooritatakse ainult ks (meie valitud) tegevus.
Olgu vimalikud tegevused:
A: kulutame 5 krooni;
B: saame paki Rumbat;
C: saame paki Marlborot.
Tegevus A B thendab, et me kulutame viis krooni ja saame
vastu he paki Rumbat. Me ei saa aga sooritada tegevust
A B C,
sest viie krooni eest ei saa osta kahte pakki sigarette, mis maksavad
kokku kmme krooni. Me saame kll sooritada tegevuse
A A B C,
s.t. ostame kmne krooni eest kaks pakki sigarette. Vimalik on
sooritada ka tegevus
A B & C.
Selleks valime tegevuste B ja C hulgast he ning sooritame selle.
290 16. Lineaarloogika
Kuigi seos & sarnaneb disjunktsiooniga, ei ole seda ige
disjunktsioonina ksitleda. Niteks valemid
A& B A ja A& B B
on lineaarloogikas tesed (lesanne 16.6.2), klassikalise disjunkt-
siooni korral need aga ei kehti.
Lineaarloogikas on samuti kaks disjunktsiooni:
(pluss) on duaalne seosega &, vljendades vimalust
sooritada ks vimalikest tegevustest.
(vrdsus) on duaalne seosega ning vljendab tegevus-
tevahelist sltuvust.
Meie nite korral thendab tegevus A B C vimalust saada
viie krooni eest pakk Rumbat vi pakk Marlborot; me ei saa
aga otsustada, kumma paki me saame.
Seose A B saab avaldada lineaarse eituse kaudu, kui
A

B vi B

A.
16.3. Lineaarne eitus
Lineaarne eitus (null, mitte midagi) on thtsaim lineaarne seos.
Tema kaudu saab avaldada lineaarse implikatsiooni
A B = A

B
ning tal on ka transponeeriv toime:
A B = B

.
Lineaarloogikas (nagu klassikalises loogikas) kehtib eituse
eitamise seadus:
A = A

.
Kuid erinevalt klassikalisest loogikast on lineaarloogikal ka vga
lihtne konstruktiivne thendus. Lineaarse eituse keerukas iseloom
tagab De Morgani seaduste kehtivuse kigi seoste ja kvantorite
16.4. Sekventsiaalne tuletus 291
korral:
(A B)

= A

(A B)

= A

(A& B)

= A

(A B)

= A

& B

(!A)

=?A

(?A)

=!A

(x A)

= x A

(x A)

= x A

16.4. Sekventsiaalne tuletus


Toome nitena ka lineaarse lauseloogika sekventsiaalse tuletusss-
teemi (Girard, 1987):
Aksioomid:
a, a

(Piisab, kui vaadelda ainult atomaarseid valemeid a.)


Korrutamisreeglid
1
:
1 (1-aksioom)
A, B,
A B, ,

,

A, B,
A B,
Liitmisreeglid:
, (aksioom, on suvaline)
A, B,
A & B,
&
A,
A B,
1
B,
A B,
2
1
1 on neutraalne element ja 0 on neutraalne element.
292 16. Lineaarloogika
Eksponentsiaalsed (modaalsed) reeglid:
A,
?A,
(mahajtmine)

?A,
(nrgendamine)
?A, ?A,
?A,
(koondamine)
A, ?
!A, ?
(!-salvestus)
(? thistab sekventsi, mille iga elemendi ette on kirjutatud ?)
Selles ssteemis vib suvaliselt muuta sekventsi elementide jrjes-
tust. Tuleb thele panna ka seda, et siin puudub reegel konstandi 0
jaoks.
Implikatsiooni defineerime seosega
A B = A

B
ja eituse asendusreeglitega
1

= ,

= 1,

= 0, 0

= ,
a

= a (a on atomaarne valem),
(?A)

=!A

, (!A)

=?A

,
(A B)

= A

, (A B)

= A

,
(A B)

= A

& B

, (A& B)

= A

.
Ja lpuks tuletusnide:
A, A

B, B

(A B), A

, B

((A B) B

), A

(((A B) B

) A

)
16.5. Lineaarloogika vljendusvimsus 293
16.5. Lineaarloogika vljendusvimsus
Lineaarloogikat vib vaadelda kui mingi ssteemi seisude ja le-
minekute kirjeldamise vahendit. Niteks malemngus on seisuks
maleseis ja leminekuks malekik. Keemiliste reaktsioonide kor-
ral on seisuks molekulide loetelu ja leminekuks on keemiline
reaktsioon, mis annab esialgse molekulide loetelu phjal uue
molekulide hulga. Me saame thistada keemilistes reaktsioonides
esinevaid seise molekulide konjunktsioonidena ja seisudevahelisi
leminekuid implikatsioonidena. Vaatleme niteks keemilist vale-
mit
2H
2
+ O
2
2H
2
O,
mis tleb, et molekulid H
2
, H
2
ja O
2
annavad keemilise reakt-
siooni tulemusena molekulid H
2
O ja H
2
O. Lineaarloogikas saab
selle valemi les kirjutada kujul
H
2
H
2
O
2
H
2
O H
2
O,
sest keemilistes reaktsioonides tuleb kik komponendid valida ja
samas ei tohi htegi komponenti korduvalt kasutada.
Eksponendid muudavad lineaarloogika sama vimsaks kui
klassikalise ja intuitsionistliku loogika. Lineaarloogika on neist
tegelikult vimsam. Me peame olema selliste videtega ettevaatli-
kud, sest kike, mida saab leldse vljendada, saab vljendada
ka klassikalises loogikas. Ka intuitsionistliku loogika korral saab
nidata, et ta on klassikalisest loogikast vimsam. Me peame
silmas seda, et lineaarloogikas saab mugavamalt kirjeldada lemi-
nekuid, mille ksitlemine klassikalises loogikas on vga keeruline.
Lineaarloogika on praegu populaarne just selleprast, et palju
abstraktseid masinaid ja ssteeme saab temas llatavalt lihtsalt
esitada.
Ent erinevalt klassikalisest ja intuitsionistlikust lausearvutusest
on eksponente sisaldav lineaarne lausearvutus mittelahenduv.
294 16. Lineaarloogika
16.6. lesanded
1. Kirjeldage lineaarloogikat kasutades, kuidas saab sita Tartust
Tallinnasse.
2. Nidake, et valemid A & B A ja A & B B on lineaarloo-
gikas tesed.
3. *Nidake, et klassikalised lihtsustamis- ja idempotentsusreeglid
A & B A,
A A & A
ei kehti seoste ja korral.
IV
Loogika rakendusi
programmeerimises ja
tehisintellektis
17. Automaatne
teoreemitestamine
Nagu nimigi tleb, tegeldakse nimetatud valdkonnas meetodite ot-
simisega loogikateoreemide automaatseks testamiseks arvuti abil.
Kuivrd arvuti kasutamine on seejuures vga olulisel kohal, on
automaatne teoreemitestamine tihedalt seotud teoreetilise arvuti-
teadusega. Kuivrd loogikateoreemidena saab formaliseerida suurt
hulka mtlemislesandeid, on automaatne teoreemitestamine ka
tehisintellektiteaduse ks osa.
tlesime, et eesmrgiks on loogikateoreemide testamine.
Nagu varasematest peatkkidest nha, saab iga konkreetse ma-
temaatikateoreemi ja mitmesugused kombineerimist nudvad prak-
tilised probleemid esitada loogika keeles, s.o. loogikateoreemidena.
Loogika kasutamine universaalse baaskeelena ei kitsenda teoree-
mitestajate rakendussfri, vaid muudab selle, vastupidi, nii laiaks
kui vhegi vimalik.
Teatavasti on mitmesuguseid, eri eesmrkideks sobivaid loo-
gikassteeme. Automaatse teoreemitestamise jaoks pakuvad nad
kik huvi. Enamik pingutusi on siiamaani suunatud klassikalise
predikaatarvutuse teoreemide lahendamisele viimatinimetatud
loogikassteem on kasutatavaim ja ldiselt peetakse seda kige
olulisemaks ssteemiks olemasolevatest.
298 17. Automaatne teoreemitestamine
17.1. Eesmrgid
Automaatse teoreemitestamise otsene eesmrk on luua sellised
arvutiprogrammid ja arvutid, mis suudaksid keerulisi, tpset mt-
lemist nudvaid probleeme mistliku aja jooksul automaatselt
lahendada. Inimesest kasutaja annab arvutile tpselt formaliseeri-
tud probleemi (niteks uue matemaatikateoreemi, programmeeri-
mislesande, elektroonikassteemi korrektsuse kontrolli, inseneri-
lesande vi andmebaasi, millest jreldusi/lahendusi otsida) ning
soovib, et arvuti selle probleemi mistliku aja jooksul lahendaks.
Kriitilise thtsuse omandab fraas mistliku aja jooksul: kui
mingil loogika keeles kirjeldatud probleemil on ldse lahendus,
siis teoreetiliselt suudab ka pris lihtne arvutiprogramm sellise
probleemi alati lahendada. Paraku kulub taolisel lihtsal programmil
peaaegu iga probleemi lahendamiseks lootusetult kaua aega: enne
juab pike kustuda ja maailma lpp ktte juda, kui arvuti
vastuse leiab.
Praktiliselt kasutusklblik automaatse teoreemitestamise ss-
teem peaks suutma lahendada huvipakkuvaid probleeme mistliku
aja, s.o. paari sekundi, tunni vi isegi peva ja kuu jooksul,
olenevalt probleemi thtsusest.
Paraku suudavad olemasolevad automaatse testamise ss-
teemid lahendada mistliku aja jooksul ainult ksikuid teliselt
keerulisi ja praktiliselt olulisi probleeme; rhuva enamiku raskete
probleemide puhul pole neist ssteemidest ksi suuremat kasu.
Kll aga saab neid kasutada interaktiivselt: kasutaja annab ette
suunised ning leiab ise testuse kige keerulisemad osad, jttes
lihtsamad, kuid tmahukad alamlesanded arvutile.
Sestap on automaatse teoreemitestamise ala phieesmrgiks
suurendada automaatsete teoreemitestajate kiirust. Testajate kii-
ruse suurendamise nimel tehakse td kolmes peasuunas:
Otsingumeetodite vljattamine, mis garanteeriksid vanade
meetoditega vrreldes suurema otsingukiiruse iga vimaliku
lesande jaoks.
Siia kuulub paremate insenerilahenduste leidmine nii teoree-
17.2. Sissejuhatus resolutsioonimeetodisse 299
mitestajate tarkvara kirjutamisel kui ka riistvara, s.o. arvu-
tite rakendamisel. Riistvara rakendamisel on aktuaalsemaks
probleemiks testuseotsingu efektiivne jaotamine paljude eri-
nevate, kuid samaaegselt ttavate protsessorite vi arvutite
vahel.
Otsingustrateegiate vljattamine, mis annavad suurema
kiiruse kas enamikul praktilist huvi pakkuvatel juhtudel vi
siis spetsiaalsete lesannete puhul.
Peale testajate kiiruse suurendamise on teine oluline ees-
mrk hlbustada automaatse testaja ja inimesest kasutaja vahelist
suhtlemist. Soovitatavalt peaks testaja kasutajal olema vima-
lik anda testajale npuniteid ehk soovitusi, kuidas probleemi
testust kergemini leida. Kasutaja peaks saama soovi korral osa
testuse sammudest ise leida, suunates automaatse testaja seni la-
hendamata jnud alamprobleemide juurde. Samas peaks kasutaja
saama informatsiooni lpetamata jnud testuseotsingutest, suut-
maks hinnata, kuidas testuseotsingu strateegiat jrgmisel katsel
muuta.
Mitmed olemasolevad ssteemid vimaldavadki taolist inimka-
sutaja ja automaatse testaja koostd, kuid mugavusest, lihtsusest
ja koost sujuvusest on asi veel kllalt kaugel.
17.2. Sissejuhatus resolutsioonimeetodisse
Automaatse teoreemitestamise jaoks on vlja ttatud hulk pris
erinevaid meetodeid. Nende hulgast on ks efektiivsemaid ja kind-
lasti kige levinum resolutsioonimeetod, mille 1965. aastal esitas
J. Robinson. Samaaegselt, kuid Robinsonist sltumatult leiutas
sarnaste phiprintsiipidega prdmeetodi S. Maslov. 1965. aastal
oli resolutsioonimeetod teline murrang automaatses teoreemites-
tamises, vimaldades suhteliselt vikese ajakuluga testada palju
teoreeme, mis olid varasemate meetodite, niteks Davisi-Putnami
meetod (ks viimase leiutajatest, H. Putnam, sai hiljem kuul-
300 17. Automaatne teoreemitestamine
saks funktsionalistliku losooasuuna rajajana), jaoks lootusetult
vljaspool haardeulatust.
ldise resolutsioonimeetodi jaoks on vlja ttatud suur hulk
ksteisest oluliselt erinevaid otsingustrateegiaid. Mitme ksteisest
erineva modikatsiooni tttu on tegu vga paindliku meetodiga:
enamikku praktikas kasutatavaid, niliselt resolutsioonimeetodist
erinevaid testuseotsingu-algoritme on vimalik esitada kui reso-
lutsioonimeetodi spetsiaalseid strateegiaid. Tuntud loogilise pro-
grammeerimise keel Prolog baseerub hel niisugusel resolutsioo-
nimeetodi strateegial, mis sobib kll hsti loogilise programmeeri-
mise, kuid halvasti automaatse teoreemitestamise jaoks.
Resolutsioonimeetod on iseenesest vga lihtne testusmeetod:
meetodi elementaarseima variandi juures kasutatakse ainult kahte
tuletusreeglit, resolutsioonireeglit ja faktoriseerimisreeglit. Enne
testuse alustamist teisendatakse testatav teoreem vimalikult
lihtsale kujule, disjunktide hulgaks. Disjunktiks nimetatakse sellist
disjunktsiooni, mis koosneb ainult positiivsetest ja negatiivsetest
elementaarvalemitest. Taolisi eitusega vi ilma selleta elemen-
taarvalemeid nimetatakse literaalideks. Kik disjunktis esinevad
muutujad on vaikimisi seotud ldisuskvantoriga . Jrgnevas ka-
sutame muutujatena thti x,y,z,u,v,w lejnud smbolid
on kas konstandid, funktsionaal- vi predikaatsmbolid. Mned
disjunktide nited:
hestainsast literaalist koosnev disjunkt, mis vljendab, et
Jaan on Martini isa: isa(Jaan,Martin).
hestainsast literaalist koosnev disjunkt, mis vljendab, et
Riivo ei ole Veiko isa: isa(Riivo,Veiko).
Kahest literaalist koosnev disjunkt, mis vljendab, et Veiko
isa on kas Martin vi Riivo: isa(Martin,Veiko)
isa(Riivo,Veiko).
Teatavasti on jreldust esitav lause A B ekvivalentne
lausega A B. Jrgnev kahest literaalist koosnev dis-
junkt vljendab, et juhul kui Martin on Veiko isa, siis
17.2. Sissejuhatus resolutsioonimeetodisse 301
on Jaan Veiko vanaisa: isa(Martin,Veiko) vana-
isa(Jaan,Veiko).
Jrgnev muutujaid x ja y sisaldav disjunkt tleb, et emad
on alati naissoost: ema(x,y) naissoost(x).
Muutujaid sisaldavat disjunkti on kohane mista jrgmi-
selt: disjunkt kehtib, kskik mis objektid ka muutujate
asemele panna. Viimasest disjunktist saame muutuja x kons-
tandiga Jaan ja muutuja y konstandiga Martin asendades
jrgmise kehtiva disjunkti: ema(Jaan,Martin) nais-
soost(Jaan).
Jrgnev muutujaid x, y ja z sisaldav disjunkt tleb, et
kui x on y isa ja y on z isa, siis x on z vana-
isa: isa(x,y) isa(y,z) vanaisa(x,z). Te-
poolest, lause (A & B) C on ekvivalentne lausega
A B C.
Eelmine disjunkt ei olnud vanaisa-suhte defineerimiseks
siiski piisav. Puudujnud emapoolset liini pidi vanaisaks
olemise mrab disjunkt isa(x,y) ema(y,z)
vanaisa(x,z). Reeglid, mis harilikus predikaatarvutuses
on esitatavad heainsa valemiga, ei pruugi olla esitatavad
heainsa disjunktiga: sageli lheb tarvis mitut disjunkti.
Resolutsioonimeetodi phiprintsiip on fakte ja reegleid esi-
tavate etteantud disjunktide hulgast uute disjunktide tuletamine.
Disjunktide hulka ksitletakse kui disjunktide konjunktsiooni. Re-
solutsioonimeetod on tielik meetod: kui etteantud disjunktide
hulgast jreldub loogiliselt mingi disjunkt D, siis resolutsioo-
nimeetod tuletab alati kas sellesama disjunkti D vi ldisema
disjunkti D

, nii et D on D

-i erijuht. Erijuhu tpse denitsiooni


anname hiljem.
17.2.1. Lihtsaim juht: muutujateta disjunktid
Kui disjunktides muutujaid ei ole, s.t. tegu on sisuliselt lausear-
vutusega, siis on resolutsioonireeglit pris lihtne esitada. Kahest
302 17. Automaatne teoreemitestamine
disjunktist A
1
A
2
. . . A
n
ja A
1
B
2
. . . B
m
, millest
esimene sisaldab positiivset literaali A
1
ja teine selle eitusega va-
rianti A
1
, saame tuletada uue disjunkti, pannes mlemad kokku
ja ligates vlja literaalid A
1
ning A
1
:
A
1
A
2
. . . A
n
A
1
B
2
. . . B
m
A
2
. . . A
n
B
2
. . . B
m
Seejuures eeldame, et literaalide jrjekord disjunktis ei ole oluline
ning seda vib vabalt muuta. raligatavad literaalid ei pruugi
seega olla disjunktides esimesel positsioonil.
Resolutsioonireeglit vib mista kui klassikalise modus po-
nensi
A A B
B
ldistust. Tepoolest, modus ponensi saab esitada disjunktidena
kui
A A B
B
ning resolutsioonireegel lisab modus ponensi kahele eeldusele
n. ballastina literaale, mis lhevad muutumatuna edasi modus
ponensi jreldusse.
Muutujateta disjunktide korral tleb resolutsioonimeetodi teine
reegel, faktoriseerimisreegel, et kui disjunktis on kaks hesugust
literaali, siis vib he neist krvaldada:
A
1
A
1
A
2
. . . A
n
A
1
A
2
. . . A
n
.
Erinevalt resolutsioonireeglist, mis tuletab uusi disjunkte, jttes
eelduseks olnud alles, kasutame faktoriseerimisreeglit lihtsus-
tava reeglina: kui faktoriseerimisreegli rakendamisel disjunktile
C saame uue disjunkti C

, siis kustutame eelduse C, s.t. ei kasuta


teda enam kunagi uute disjunktide tuletamise juures.
Toome siinkohal kaks resolutsioonimeetodi rakendamise ni-
det. Olgu meil antud jrgmised muutujateta disjunktid 14:
17.2. Sissejuhatus resolutsioonimeetodisse 303
(1) isa(Jaan,Martin),
(2) isa(Riivo,Veiko),
(3) isa(Martin,Veiko) isa(Riivo,Veiko),
(4) isa(Martin,Veiko) vanaisa(Jaan,Veiko).
Resolutsioonimeetod vimaldab disjunktidest 14 tuletada dis-
junkti vanaisa(Jaan,Veiko), seejuures ei kasuta me ldse
disjunkti 1:
(2 ja 3 annavad disjunkti 5) isa(Martin,Veiko),
(4 ja 5 annavad disjunkti 6) vanaisa(Jaan,Veiko).
Nagu eldud, on resolutsioonimeetodi sisuks algsetest ja juba
tuletatud disjunktidest ha uute disjunktide tuletamine, kasuta-
des seejuures resolutsiooni- ja faktoriseerimisreegleid. Tuletatud
disjunktid saab seega jaotada tasemete vahel. Esimese taseme
moodustavad algselt antud disjunktid. Teise taseme moodustavad
algselt antud disjunktidest tuletatud disjunktid. Kolmanda taseme
moodustavad esimese ja teise taseme disjunktidest tuletatud dis-
junktid jne.
Definitsioon 17.1. Olgu S disjunktide hulk. Thistagu
(S) kigi disjunktide hulka, mida saab tuletada
hulgast S resolutsioonireegli ja faktoriseerimisreegli hekordse
rakendamisega. Deneerime nd:
T
1
(S) = S,
T
i+1
(S) = T
i
(S) (T
i
(S)),
T

(S) =

i
T
i
(S).
304 17. Automaatne teoreemitestamine
Olgu meil antud jrgmised disjunktid 14:
(1) A ,
(2) A B ,
(3) B C ,
(4) C .
Vaatame, milliseid disjunkte viimastest resolutsioonimeetodiga
ldse tuletada saab. Selleks esitame resolutsioonimeetodi t
sammhaaval. Iga tuletussamm koosneb hest resolutsioonireegli
ja kui vimalik, siis ka faktoriseerimisreegli rakendamisest.
Teine tase:
(1 ja 2 annavad disjunkti 5) B,
(2 ja 3 annavad disjunkti 6) A C,
(3 ja 4 annavad disjunkti 7) B.
Kolmas tase:
(5 ja 3 annavad disjunkti 8) C,
(5 ja 7 annavad disjunkti 9) thi disjunkt ehk vastuolu,
(6 ja 1 annavad disjunkti 8 koopia) C,
(6 ja 4 annavad disjunkti 10) A,
(7 ja 2 annavad disjunkti 10 koopia) A,
(7 ja 5 annavad disjunkti 9 koopia) thi disjunkt ehk vastuolu.
Neljas tase:
(8 ja 4 annavad disjunkti 9 koopia) thi disjunkt ehk vastuolu.
(10 ja 1 annavad disjunkti 9 koopia) thi disjunkt ehk vastuolu.
17.2. Sissejuhatus resolutsioonimeetodisse 305
Kuna viimasel, neljandal tasemel on kik disjunktid varasemate
disjunktide koopiad, siis ei ole resolutsioonimeetodiga vimalik
enam htegi disjunkti lisaks tuletada.
Vaadeldud nide on resolutsioonimeetodi kasutamise juures
tpiline: enamasti rakendatakse resolutsioonimeetodit disjunktide
hulga vastuolulisuse testamiseks. Kui vastuolu on leitud, siis
peatatakse t kohe, kuna mingit lisainformatsiooni edasine tu-
letamine ei anna. Meie nites tuleks t peatada kohe prast
disjunkti 9 tuletamist.
Vastuolu otsimise motiiviks on asjaolu, et mistahes valemi F
tuletatavus on ekvivalentne tema eituse F vastuolulisusega.
Uurime niteks, kas mingist disjunktide hulgast jreldub mingi
disjunkt D. Valem D kehtib parajasti siis, kui & D on
vastuoluline, s.t. disjunktide & D hulgast saab tuletada thja
disjunkti. Meenutame, et disjunktide hulka {C
1
, C
2
, . . . , C
n
} vib
vaadelda disjunktide konjunktsioonina C
1
& C
2
& . . . & C
n
.
hes sjatoodud nites tuletasime disjunktidest 14 disjunkti
vanaisa(Jaan,Veiko). Oletame, et meid huvitas algul nimelt
ksimus, kas vanaisa(Jaan,Veiko) on nimetatud disjunktidest
14 tuletatav. Seda ksimust saab formuleerida jrgmiselt: kas
disjunktide hulk 14 pluss vanaisa(Jaan,Veiko) on vastu-
oluline, s.t. kas neist saab tuletada thja disjunkti? Tepoolest:
(1) isa(Jaan,Martin),
(2) isa(Riivo,Veiko),
(3) isa(Martin,Veiko) isa(Riivo,Veiko),
(4) isa(Martin,Veiko) vanaisa(Jaan,Veiko),
(5) vanaisa(Jaan,Veiko).
Tuletus:
(2 ja 3 annavad disjunkti 6) isa(Martin,Veiko),
(4 ja 6 annavad disjunkti 7) vanaisa(Jaan,Veiko),
306 17. Automaatne teoreemitestamine
(7 ja 5 annavad thja disjunkti) vastuolu.
Thja disjunkti saab samadest disjunktidest 15 tuletada ka tei-
sel viisil, alustades otsitava disjunkti eitusest (5) ning liikudes
n. tagasisuunas:
(5 ja 4 annavad disjunkti 6) isa(Martin,Veiko),
(6 ja 3 annavad disjunkti 7) isa(Riivo,Veiko),
(7 ja 2 annavad thja disjunkti) vastuolu.
Vaatame, milliseid disjunkte viimasest hulgast 15 resolutsiooni-
meetodiga ldse tuletada saab. Lisaks nites toodud disjunktidele
saab tuletada veel ainult he:
(3 ja 4 annavad 8) isa(Riivo,Veiko)
vanaisa(Jaan,Veiko)
Testame nd muutujateta resolutsioonimeetodi korrektsuse
ja tielikkuse, ning nitame seejrel, et muutujateta disjunktide
jaoks on resolutsioonimeetod lahendav algoritm.
Definitsioon 17.2. Kui D T

(S), siis tleme, et D on disjunk-


tide S hulgast resolutsioonimeetodiga tuletatav.
Teoreem 17.3 (muutujateta resolutsioonimeetodi korrektsus).
Kui disjunkt D on disjunktide hulgast S resolutsioonimeetodiga
tuletatav, siis kehtib valem S D.
Testus. Lihtne induktsioon tuletuse sgavuse jrgi.
Induktsiooni baasjuht on olukord, kus D S. Sel juhul kehtib
S D.
Induktsiooni sammu jaoks veendume esiteks, et kui mingi
disjunkt C on tuletatud he resolutsioonireegli rakendusega dis-
junktidele C
1
ja C
2
, siis kehtib lause (C
1
& C
2
) C. Teiseks
veendume, et kui disjunkt C on tuletatud he faktoriseerimisreegli
rakendusega disjunktile C
1
, siis kehtib lause C
1
C.
17.2. Sissejuhatus resolutsioonimeetodisse 307
Tielikkuse testame thja disjunkti ehk vastuolu jaoks. Arves-
tame seejuures, et disjunktide hulk on interpreteeritav disjunktide
konjunktsioonina.
On mitu resolutsioonimeetodi tielikkuse testust. J. Robinsoni
esimene testus [Robinson 65] kasutas semantilisi puid. Siin
esitame R. Boyeri testuse [Boyer 71], mis kasutab induktsiooni
mdul k.
Definitsioon 17.4. Olgu S disjunktide hulk. Defineerime k(S) kui
kigi hulgas S esinevate literaalide arvu ja disjunktide arvu vahe,
kusjuures he literaali mitmesugused esinemised hulgas S loetakse
eri literaalideks.
Nide: k({ A B, A, A C}) = 5 3 = 2.
Teoreem 17.5 (muutujateta resolutsioonimeetodi tielikkus).
Kui muutujateta disjunktide hulgal S ei ole htegi mudelit (s.t. S
on vastuoluline ehk loogiliselt vr), siis on thi disjunkt hulgast
S resolutsioonimeetodiga tuletatav.
Testus. Induktsioon k(S) jrgi.
Baasjuht: k(S) = 0. Sel juhul vrdub literaalide esinemiste
arv hulgas S disjunktide esinemiste arvuga hulgas S, mistttu S
koosneb heelemendilistest disjunktidest. Sellisel hulgal S ei ole
mudelit ainult sel juhul, kui mingi literaali A jaoks kehtib nii
A S kui A S. Sel juhul saab tuletada thja disjunkti hulgast
S hekordse resolutsioonireegli rakendamisega.
Induktsiooni samm: eeldame, et 0 < k(S) ja teoreem
kehtib kigi selliste disjunktihulkade R korral, mille jaoks
k(R) < k(S). Eelduse 0 < k(S) tttu peab hulgas S olema v-
hemalt ks mitte-heelemendiline disjunkt. Olgu selleks disjunkt
D: L A
1
. . . A
n
, kus 0 < n. Olgu saadud disjunktist D
literaali L eemaldamise teel: A
1
. . . A
n
. Olgu S
1
disjunktide
hulk (S D) {} ja S
2
disjunktide hulk (S D) {L}. Iga hulga
S
1
vi S
2
mudel on ka hulga S mudel. Jrelikult, kuna teoreemi
eelduse kohaselt hulgal S mudelit ei ole, pole mudelit ka hulkadel
308 17. Automaatne teoreemitestamine
S
1
ja S
2
. On lihtne nha, et k(S
1
) < k(S) ja k(S
2
) < k(S).
Seega saab induktsiooni eelduse kohaselt thja disjunkti tuletada
nii hulgast S
1
kui S
2
. Olgu T
2
thja disjunkti tuletus hulgast S
2
.
Vaatleme kahte juhtu.
Esimene juht: kui tuletuses T
2
ei ole disjunkti L, siis on T
2
samas ka thja disjunkti tuletuseks hulgast S, mida oligi vaja
testada.
Teine juht: kui tuletuses T
2
on disjunkt L, teisendame tule-
tuse T
2
uueks tuletuseks T

2
, asendades disjunkti L iga esinemise
disjunktiga D, s.o. L, ja teostades kik muudetud resolutsioo-
nisammud uuesti. T

2
on korrektne tuletus hulgast S, mis lpeb
thja disjunkti asemel kas disjunktiga vi
1
. . .
m
.
Viimasel juhul annab m-kordne faktoriseerimisreegli rakendamine
tulemuseks . Seega saab disjunktide hulgast S tuletada dis-
junkti . Kuivrd hulgast S
1
, s.o. (S D) {}, saab eelduse
kohaselt tuletada thja disjunkti ning kehtib (S D) S, siis on
thi disjunkt tuletatav ka hulgast S, mida oligi vaja testada.
Teoreem 17.6. Muutujateta disjunktihulkade jaoks on resolutsioo-
nimeetod lahendav algoritm, s.t. iga uuritava disjunktihulga jaoks
peatub mingil hetkel meetodi t, kusjuures vastuolu leitakse siis
ja ainult siis, kui disjunktihulgal ei ole htegi mudelit.
Testus. Muutujateta resolutsioonimeetodi tielikkuse teoreemi
jrgi tuletab resolutsioonimeetod thja disjunkti igast disjunktihul-
gast, millel pole mudelit. Jb le vaadata olukorda, kus uuritav
disjunktihulk S ei ole vastuoluline, s.t. mudel on olemas. Reso-
lutsioonimeetodi korrektsuse teoreemist jreldub, et vastuolu sel
juhul ei tuletata. Hulk S sisaldab N literaali. On lihtne veenduda,
et tuletatud disjunktid koosnevad ainult hulgas S sisalduvatest
literaalidest. N erinevast literaalist on vimalik konstrueerida 2
N
erinevat disjunkti, seega on tuletatavate disjunktide hulk lplik.
lesanded
1. *(R. Kowalski) Esitage laused disjunktidena, kasutades ainult kons-
tante kass ja mina:
17.2. Sissejuhatus resolutsioonimeetodisse 309
Lindudele meeldivad ussikesed.
Kassidele meeldivad kalad.
Sbrad meeldivad teineteisele.
Minu kass on minu sber.
Minu kass sb kike, mis talle meeldib.
Mida me saame nendest lausetest jreldada selle kohta, mida minu
kass sb?
2. *(R. Kowalski) Oletame, et ma usun jrgmisi fakte:
Leidub draakon.
Draakon kas magab oma koopas vi ktib metsas.
Kui draakon on nljane, siis ta ei saa magada.
Kui draakon on vsinud, siis ta ei saa kttida.
Leidke resolutsiooni abil vastused jrgmistele ksimustele. Mida
teeb draakon siis, kui ta on nljane? Mida teeb draakon siis, kui
ta on vsinud? Mida teeb draakon siis, kui ta on nljane ja vsi-
nud? Ksimustele vastamiseks kasutage eeldust
Kui x ei saa teha toimingut y, siis x ei tee y.
17.2.2. ldjuht: muutujaid sisaldavad disjunktid
Jrgnevalt vaatame resolutsioonimeetodi rakendamist juhul, kui
disjunktid sisaldavad muutujaid. Olgu meil antud andmebaas ni-
mega D:
(1) isa(Jaan,Peeter),
(2) isa(Jaan,Martin),
(3) isa(Martin,Veiko),
(4) isa(Riivo,Leo),
(5) ema(Leena,Leo) isa(Leena,Leo),
(6) isa(Leena,Leo),
310 17. Automaatne teoreemitestamine
(7) isa(x,y) isa(y,z) vanaisa(x,z),
(8) isa(x,y) ema(y,z) vanaisa(x,z).
Pame kigepealt testada, et andmebaasist jreldub vide
A: vanaisa(Jaan,Veiko). Nagu varem mrgitud, kehtib
D A parajasti siis, kui D & A on vastuoluline. Moodus-
tame uue disjunktide hulga D

, lisades andmebaasile D vite A


eituse
(9) vanaisa(Jaan,Veiko)
ja pame saadud D

-st tuletada vastuolu ehk thja disjunkti.


Kuidas kasutada muutujaid sisaldavaid vanaisa-reegleid? Nagu
varem eldud, ei thista suvaline muutujaid sisaldav vide V
midagi muud, kui V kigi konkretiseeritud videte hulka, kus me
konkretiseerimise all mistame V kigi muutujate asendamist kas
konstantide vi keerukamate muutujaid mittesisaldavate objekti-
dega. Selline kigi konkretiseeritud videte hulk on kahtlemata
lpmatu. Vite
isa(x,y) isa(y,z) vanaisa(x,z)
konkretisatsioonide hulka kuuluvad niteks
isa(Leo,Leo) isa(Leo,Leo)
vanaisa(Leo,Leo),
isa(Jaan,Martin) isa(Martin,Leo)
vanaisa(Jaan,Leo),
isa(Martin,Jaan) isa(Jaan,Leo)
vanaisa(Martin,Leo)
jne. jne., millest enamik ei aita meid kuidagi vite vana-
isa(Jaan,Veiko) tuletamisel. Kuidas leida sobiv konkretisee-
ring? Lihtsaim, kuid vga ebaefektiivne meetod on kigi konkre-
tiseeringute jrjestikune proovimine, lootuses kunagi sobiva peale
sattuda. Resolutsioonimeetodi peamine idee ongi sellise kigi
17.2. Sissejuhatus resolutsioonimeetodisse 311
konkretiseeringute proovimise asendamine efektiivsema meeto-
diga.
Meenutame varem esitatud muutujateta resolutsioonireeglit:
A
1
A
2
. . . A
n
A
1
B
2
. . . B
m
A
2
. . . A
n
B
2
. . . B
m
Jrgnevas eeldame, et reegli eelduses esinevad disjunktid vivad
sisaldada muutujaid. Modifitseerime resolutsioonireeglit niimoodi,
et literaal A
1
vasakpoolses eelduses ja ja literaal A
1
parempoolses
eelduses ei ole enam tpselt hesugused: olgu parempoolses
eelduses A
1
asemel literaal A

1
.
Et resolutsioonireegel oleks korrektne, peame nd nudma,
et (muutujaid sisaldavaid) literaale A
1
ja A

1
saab samasugusteks
konkretiseerida ehk unitseerida. S.t. asendades reegli vasakpool-
ses disjunktis osa muutujaid uute objektidega, saame literaali A
1
konkretiseeritud variandi, mille thistame kui A
1
. Oluline on,
et saaksime ka parempoolse disjunkti muutujaid uute objekti-
dega asendades algselt A
1
-st erineva literaali A

1
konkretiseerida
selliseks literaaliks A

1
, et A

1
ja A
1
on tpselt hesugused.
Muutujateta resolutsioonireegli moditseerimise idee on jrg-
mine: ei proovita lbi mitte kiki vimalikke konkretiseeringuid,
vaid ainult neid, mis vimaldavad rakendada resolutsioonireeg-
lit. Viimases nites ei ole mingit mtet katsetada disjunkti 7
konkretisatsiooni isa(Leo,Leo) isa(Leo,Leo)
vanaisa(Leo,Leo), kuna mingeid uusi resolutsioonireegli ra-
kendamisvimalusi see ei anna.
Jtkame nite uurimist. Tahame rakendada resolutsiooni-
reeglit disjunktidele 2 ja 7, s.o. isa(Jaan,Martin) ja
isa(x,y) isa(y,z) vanaisa(x,z). Selleks tuleb
nende esimesed literaalid unitseerida. Esimest disjunkti enam
kuidagi konkretiseerida ei saa, teise disjunkti saame aga
konkretiseerida vajalikule kujule: isa(Jaan,Martin)
isa(Martin,z) vanaisa(Jaan,z). Selleks asendasime
muutuja x konstandiga Jaan ning muutuja y konstandiga Martin.
Taolisi muutujate asendusi nimetatakse substitutsioonideks,
ning neid pannakse kirja jrgmisel viisil: {x
1
/t
1
, . . . , x
n
/t
n
}, kus
312 17. Automaatne teoreemitestamine
iga x
i
on muutuja ning iga t
i
on nimetatud x
i
asemele substituee-
ritav objekt.
Oma nites rakendasime disjunktile substitutsiooni {x/Jaan,
y/Martin}. Prast substitutsiooni rakendamist saame kasu-
tada muutujateta resolutsioonireeglit, mis annab uue disjunkti
isa(Martin,z) vanaisa(Jaan,z). Unitseerivat substi-
tutsiooni (meie nites {x/Jaan, y/Martin}) nimetatakse unit-
seerijaks.
Sooviksime jrgnevalt rakendada resolutsioonireeglit, vt-
tes heks eelduseks viimati tuletatud disjunkti ja teiseks eel-
duseks disjunkti 3: isa(Martin,Veiko). Selleks, et lite-
raalid isa(Martin,z) ja isa(Martin,Veiko) unitsee-
rida, rakendame esimesele eeldusele substitutsiooni {z/Veiko},
mis annab disjunkti isa(Martin,Veiko) vana-
isa(Jaan,Veiko). Resolutsioonireegliga tuletame nd disjunkti
vanaisa(Jaan,Veiko), millest leiame disjunkti 9 abil jrgmisel
sammul vastuolu. Tuletuskik oli kokkuvtlikult jrgmine:
(2 ja 7 annavad disjunkti 10) isa(Martin,z)
vanaisa(Jaan,z),
(10 ja 3 annavad disjunkti 11) vanaisa(Jaan,Veiko),
(11 ja 9 annavad thja disjunkti) vastuolu.
Siiani ji lahtiseks ksimus, kuidas leida vajalikku unit-
seerivat substitutsiooni ja milline see peaks tpselt olema. Eriti
keeruliseks muutub olukord siis, kui mlemad unitseeritavad
literaalid sisaldavad muutujaid. Olgu meil tegu kahe niisuguse
disjunktiga, kus x, y, u ja v on muutujad:
P(a,x,y) S(x,y) ja P(u,v,b) R(u,v).
Esimest kaht aatomit P(a,x,y) ja P(u,v,b) saab unifitseerida
mitmel viisil, niteks konkretiseerides mlemad kas literaaliks
P(a,a,b) vi literaaliks P(a,b,b). Resolutsioonimeetodi idee on
rakendada minimaalseid substitutsioone, jttes alles kik muutujad,
millesse otseselt substitueerida vaja pole. Resolutsioonimeetod
17.2. Sissejuhatus resolutsioonimeetodisse 313
rakendab seega substitutsiooni {u/a, y/b, x/v}, kus komponent
{x/v} lihtsalt nimetab muutuja mber. Mainitud substitutsiooni
{u/a, y/b, x/v} rakendamine annab disjunktid
P(a,v,b) S(v,b) ja P(a,v,b) R(a,v),
millest resolutsioonireegel tuletab uue disjunkti S(v,b)
R(a,v).
Minimaalset unitseerivat substitutsiooni nimetatakse kige
ldisemaks unitseerijaks. Nimi on phjendatud, kuna selline uni-
tseerija konkretiseerib literaale nii vhe kui vimalik. Saab tes-
tada, et mistahes kahel unitseeritaval literaalil on ksainus kige
ldisem unitseerija (muutujate mbernimetamist arvestamata).
Minimaalse unitseerija leidmise juures tekitab lisakeerukust
asjaolu, et literaalis vivad peale muutujate ja konstantide olla ka
keerukamad objektid, funktsionaalsed termid, mis on funktsiooni
rakendused argumentidele. Niteks vime arvu x ruutu vtmise te-
het vljendada funktsionaalse termiga ruut(x), kahe arvu x ja y
korrutamise tehet termiga *(x,y). Arvu x korrutist omaenda ruu-
duga saab siis vljendada funktsionaalse termiga *(x,ruut(x))
ning literaali, mis tleb, et x x = ruut (x), saame kirjutada
vrdub(*(x,x),ruut(x)).
Defineerime miste term.
Definitsioon 17.7.
1. Iga muutuja ning konstant on term.
2. Iga konstruktsioon f (t
1
, . . . , t
n
), kus 0 n, f on funktsio-
naalsmbol ja iga t
i
on term, konkreetsemalt, funktsionaal-
term.
3. Termi saab konstrueerida ainult laltoodud reeglite 1 ja 2
abil.
Mainitud lisakeerukuseks on asjaolu, et ei saa olla substi-
tutsiooni, mis muudaks samaseks mingi muutuja x ja sedasama
muutujat x sisaldava funktsionaaltermi t . Pame niteks unit-
seerida literaale P(x,x) ja P(y,f(y)). Esimeste argumentide x
314 17. Automaatne teoreemitestamine
ja y unitseerimise jrel saadud substitutsiooni {y/x} rakendades
muutub term f(y) termiks f(x) ning meil tuleb jrgmisena uni-
tseerida muutuja x funktsionaalse termiga f(x). Viimane on aga
vimatu!
Defineerime unifitseeritavuse ja kige ldisema unifitseerija.
Definitsioon 17.8. tleme, et termid t
1
ja t
2
on unifitseeritavad,
kui leidub substitutsioon , nii et
t
1
= t
2
.
Termide t
1
ja t
2
kige ldisem unifitseerija on substitutsioon ,
mis rahuldab tingimusi:
1. on termide t
1
ja t
2
unifitseerija.
2. t
1
ja t
2
iga unifitseerija korral leidub substitutsioon , nii
et
= ,
s.t. iga termi t korral (t ) = ((t )).
Literaalide unitseeritavus ja kige ldisem unitseerija de-
neeritakse samamoodi.
Joonisel 17.1 toodud algoritm mgu arvutab literaalide vi
termide x ja y kige ldisema unitseerija. Edaspidi kasutamegi
kahe literaali vi termi x ja y kige ldisema unitseerija t-
histamiseks kirjaviisi (x, y). Lhend mgu tuleb ingliskeelsest
vljendist most general unier ja on resolutsioonialases kirjanduses
standardne. Algoritmi lahtikirjutamata osad thendavad jrgmist.
term ja substitution thistavad termi ja substitutsiooni tpi.
Konstant EMPTYSUBST thistab thja substitutsiooni {}, konstant
NOSUBST thistab, et antud termidel ei saagi olla unitseerivat
substitutsiooni. Funktsioonid variable ja constant kontrol-
livad, kas argument on muutuja vi konstant. Funktsioon length
vtab argumendiks funktsionaalse termi ja annab selle argumen-
tide arvu. Niteks on termi ruut(x) argumentide arv ks, termi
*(x,x) argumentide arv kaks, termi *(x,ruut(x)) argumentide
arv samuti kaks. part(x,i) annab termi x i-nda argumendi,
17.2. Sissejuhatus resolutsioonimeetodisse 315
substitution mgu(x,y)
term x,y;
{
int i;
substitution g;
if x==y return EMPTYSUBST;
else if variable(x) return mguvar(x,y);
else if variable(y) return mguvar(y,x);
else if (constant(x) || constant(y)) return NOSUBST;
else if (length(x) != length(y)) return NOSUBST;
i=0;
g=EMPTYSUBST;
while (i<=length(x)) {
s=mgu(part(x,i),part(y,i));
if s==NOSUBST return s;
g=compose(g,s);
x=substitute(x,g);
y=substitute(y,g);
i=i+1;
}
return g;
}
substitution mguvar(x,y)
term x,y;
{
if occurs_in(x,y) return NOSUBST;
else return makesubstitution(x,y);
}
Joonis 17.1. Unifitseerimisalgoritm.
kusjuures argumendiks 0 loetakse funktsionaalsmbolit. Niteks
on termi *(x,ruut(x)) argumendiks 0 funktsionaalsmbol *,
argumendiks 1 muutuja x ja argumendiks 2 funktsionaalterm
316 17. Automaatne teoreemitestamine
ruut(x). Funktsioon compose annab kahe substitutsiooni hen-
damise resultaatsubstitutsiooni, substitute(x,g) rakendab x-le
substitutsiooni g ja annab tulemuseks saadud resultaattermi. make-
substitution(x,y) konstrueerib substitutsiooni {x/y}. Funkt-
sioon occurs_in kontrollib, kas esimene argument esineb kusagil
teise argumendi sees.
Mned unitseerimisnited (meenutame, et muutujaid thista-
vad meil smbolid x, y, z, u, v, w):
(P(a,x), P(y,b)) = {y/a,x/b}.
(P(x,f(x)), P(f(y),u)) = {x/f(y),u/f(f(y))}.
(L(g(x,x)), L(g(f(a),f(a)))) = {x/f(a)}.
(R(a,b), R(a,b)) = {}.
(P(a,x,x), P(y,b,y)) ei eksisteeri.
(P(f(x),f(x)), P(f(y),y)) ei eksisteeri.
(P(f(x),g(x)), P(f(y),f(y))) ei eksisteeri.
Esitame nd resolutsioonireegli ldkuju. Viimane erineb muu-
tujateta erijuhust selle poolest, et raligatavad literaalid ei pea
olema identsed, vaid unitseeritavad, ning allesjnud literaalidele
rakendatakse raligatud literaalide unitseerijat.
A
1
A
2
. . . A
n
B
1
B
2
. . . B
m
(A
2
. . . A
n
B
2
. . . B
m
)
= (A
1
, B
1
) .
Enne resolutsioonireegli rakendamist tuleb alati kontrollida, kas
disjunktid A
1
A
2
. . . A
n
ja B
1
B
2
. . . B
m
sisaldavad
hiseid muutujaid. Kui jah, siis tuleb hes disjunktis muutujad
mber nimetada, nii et hiseid muutujaid ei jks. Rakendame
niteks resolutsioonireeglit jrgmistele disjunktidele:
P(g(x),x,f(y)) R(x,y) ja P(x,a,z) S(x,z).
Kuna mlemad sisaldavad muutujat x, nimetame teises dis-
junktis x mber u-ks: P(u,a,z) S(u,z). Kom-
mentaariks: kui muutujat mber ei nimetata, pole mainitud
17.2. Sissejuhatus resolutsioonimeetodisse 317
kahe disjunkti esimesed literaalid unitseeritavad. Nd aga
(P(g(x),x,f(y)), P(u,a,z)) ={u/g(a),x/a,z/f(y)}
ja tuletame disjunkti R(a,y) S(a,f(y)).
Jrgnevalt meenutame muutujateta disjunktide faktoriseerimis-
reeglit, mis krvaldas disjunktist learused literaalide koopiad:
A
1
A
1
A
2
. . . A
n
A
1
A
2
. . . A
n
.
ldisel, muutujatega juhul sisaldab ka faktoriseerimisreegel unit-
seerimist:
A
1
A
2
A
3
. . . A
n
(A
2
A
3
. . . A
n
)
= (A
1
, A
2
) .
Faktoriseerimisreegli rakendamise niteid:
Disjunktist P(x,y,y) P(a,y,z) S(x,y,z) tuletame
disjunkti P(a,y,y) S(a,y,y).
Disjunktist R(x,y) R(y,x) R(a,a) tuletame kolm
disjunkti, faktoriseerides vastavalt literaale 1, 2 vi 1, 3 vi
2, 3: R(x,x) R(a,a) ja R(a,a) R(a,a) ja R(a,a)
R(a,a). Igahele saadud disjunktidest saab omakorda
rakendada faktoriseerimisreeglit, mis annab kikidel juhtudel
samasuguse hest literaalist koosneva disjunkti: R(a,a).
Resolutsioonimeetodi tielikkuse ks alus on Herbrandi teo-
reem, mille esitame siin testuseta. Viimane on suhteliselt lihtne:
jtame testuse leidmise harjutuseks lugejale.
Definitsioon 17.9. Disjunktide hulga S Herbrandi universumiks
nimetatakse kigi selliste muutujaid mittesisaldavate termide hulka,
mida saab moodustada hulgas S sisalduvatest konstantidest ja
funktsionaalsmbolitest. Kui hulgas S konstante pole, lubatakse
kasutada suvalist konstanti a.
Teoreem 17.10 (Herbrandi teoreem). Disjunktide hulk S on vas-
tuoluline parajasti siis, kui eksisteerib lplik vastuoluline muu-
tujaid mittesisaldavate disjunktide hulk S
1
. . . S
n
, kus iga
318 17. Automaatne teoreemitestamine
substitutsioon
i
asendab kik hulgas S esinevad muutujad termi-
dega hulga S Herbrandi universumist.
Testame nd resolutsioonimeetodi tielikkuse ldjuhul.
Testus kasutab muutujateta resolutsioonimeetodi tielikkuse tes-
tust koos jrgneva tstmislemmaga. Viimane tleb sisuliselt, et
kige ldisemat unitseerijat kasutav resolutsioonireegel katab
kikvimalikud muutujaid mittesisaldavate konkretisatsioonidega
tehtavad resolutsioonisammud.
Lemma 17.11 (tstmislemma). Olgu D
1
ja D
2
kaks ilma histe
muutujateta disjunkti. Olgu D
1
ja D
2
antud disjunktide konk-
retisatsioonid, mis ei sisalda muutujaid. Olgu disjunkt R tuletatud
disjunktidest D
1
ja D
2
resolutsioonireegli hekordse raken-
damisega. Siis saab disjunktidest D
1
ja D
2
resolutsioonireegli
hekordse rakendamisega tuletada sellise disjunkti R

, et mingi
substitutsiooni jaoks kehtib R = R

.
Testus. Kuna R on saadud disjunktidele D
1
ja D
2
reso-
lutsioonireeglit rakendades, siis sisaldab disjunkt D
1
literaali
L ja disjunkt D
2
literaali L

, nii et L = L

ja
R = (D
1
L) (D
2
L

), kus (D
i
L) thistab
literaali L eemaldamist disjunktist D
i
. Olgu L literaalile L
vastav literaal disjunktis D
1
ja L

literaalile L

vastav literaal
disjunktis D
2
. Kuna literaalidel L ja L

on lemma eelduse
kohaselt unitseerija , siis on neil ka kige ldisem unitseerija
= (L, L

). Jrelikult saab disjunktidele D


1
ja D
2
rakendada
resolutsioonireeglit, ligates ra literaalid L ja L

ning andes
tulemuseks disjunkti R

: (D
1
L) (D
2
L

). Kuna
kige ldisema unitseerija denitsiooni jrgi eksisteerib substi-
tutsioon , nii et = , siis kehtib R = R

, mida oligi vaja


testada.
Tstmislemmat saab lihtsalt laiendada, vttes lisaks faktorisee-
rimisreegli. Jrgnevas testuses eeldataksegi, et tstmisreegel on
faktoriseerimisele laiendatud.
17.2. Sissejuhatus resolutsioonimeetodisse 319
Teoreem 17.12 (resolutsioonimeetodi tielikkus). Kui disjunk-
tide hulgal S ei ole htegi mudelit (s.t. S on vastuoluline ehk
loogiliselt vr), siis on thi disjunkt hulgast S resolutsioonimee-
todiga tuletatav.
Testus. Olgu disjunktide hulk S vastuoluline. Herbrandi teo-
reemi jrgi eksisteerib siis lplik vastuoluline muutujaid mittesi-
saldavate disjunktide hulk S

: S
1
. . .S
n
, kus iga substitutsioon

i
asendab kik hulgas S esinevad muutujad termidega hulga S
Herbrandi universumist. Muutujateta resolutsioonimeetodi tielik-
kuse teoreemist jreldub, et resolutsioonimeetodiga saab hulgast
S

tuletada thja disjunkti. Olgu T nimetatud tuletus. Asendame


tuletuses T iga algdisjunkti D
i
vastava disjunktiga D hulgast S.
Tstmislemma jrgi saab siis he muutujateta resolutsioonisammu
resultaadid asendada unitseerimist sisaldava resolutsioonisammu
resultaatidega jne., kuni terve T on teisendatud thja disjunkti
tuletuseks hulgast S.
Teatavasti testasid Turing ja Church 1930. aastatel predi-
kaatarvutuse mittelahenduvuse. Resolutsioonimeetodi puhul aval-
dub mittelahenduvus asjaolus, et erinevalt muutujateta disjunktide
juhust ei peatu suvalisele mittevastuolulisele disjunktihulgale ra-
kendatud resolutsioonimeetod alati, vaid vib jda lpmatuseni
tuletama uusi disjunkte. Selliselt kitub resolutsioonimeetod ni-
teks disjunktihulgale
{ P(x) P(f(x)), P(y) P(f(y))}
rakendatuna.
lesanded
3. Kontrollige termide unitseeritavust ning leidke nende kige ldi-
semad unitseerijad:
(a) p(f (y), w, g(z)) ja p(u, u, v);
(b) p(f (y), w, g(z)) ja p(v, u, v);
(c) p(a, x, f (g(y))) ja p(z, h(z, w), f (w)).
320 17. Automaatne teoreemitestamine
4. *Leidke unifitseerimisprobleemi
(f (x
2
, x
3
, . . . , x
n
), f (g(x
1
, x
1
), g(x
2
, x
2
), . . . , g(x
n1
, x
n1
)))
lahend. Nidake, et see kasvab arvu n suurenedes eksponentsiaal-
selt.
17.2.3. Lahenduste otsimine
Siiani oleme resolutsioonimeetodit rakendanud ainult ei/ja-
ksimustele vastamiseks: teoreemi saab kas testada vi ei.
Resolutsioonimeetodit saab aga rakendada ka sellistele k-
simustele vastamiseks: Leia niisugune t , et teoreem kehtiks
objekti t jaoks.
Toome niteks jrgmise andmebaasi:
(1) isa(Jaan,Peeter),
(2) isa(Jaan,Martin),
(3) isa(Martin,Veiko),
(4) isa(Riivo,Leo),
(5) isa(x,y) isa(y,z) vanaisa(x,z).
Ksime nd: Kes on Veiko vanaisa?. Lahenduse leidmiseks
lisame andmebaasile Veiko vanaisaks olemise vite eituse, jt-
tes vanaisa positsioonile muutuja ning lisades vitele spetsiaalse
lahendusliteraali:
(6) vanaisa(x,Veiko) lahendus(x).
Modifitseerime resolutsioonimeetodit pisut: laseme tl peatuda,
kui on tuletatud kas thi disjunkt vi ainult lahendusliteraale
sisaldav disjunkt. Viimasel juhul on tuletatud lahendusliteraali
argument otsitav lahendus.
(2 ja 5 annavad disjunkti 7) isa(Martin,z)
vanaisa(Jaan,z),
17.2. Sissejuhatus resolutsioonimeetodisse 321
(7 ja 3 annavad disjunkti 8) vanaisa(Jaan,Veiko),
(8 ja 6 annavad disjunkti) lahendus(Jaan).
Ksimustel vivad olla ka mittehesed lahendused. Sellisel
juhul tuletab meetod disjunkti, mis sisaldab mitu erinevat, mitte-
unifitseeritavat lahendusliteraali. Lihtne nide: disjunktide
(1) p(a) p(b),
(2) p(x) lahendus(x)
hulgast saab tuletada disjunkti p(b) lahendus(a) ning viima-
sest omakorda lahendus(b) lahendus(a). hest lahendust
ei ole antud juhul vimalik tuletada.
17.2.4. Vrduspredikaat
ks olulisemaid nii loogikas kui rakendustes ettetulevaid pre-
dikaate on vrdus. Vrdusega on phimtteliselt vimalik for-
maliseerida kike, mida loogikavahenditega formaliseerida saab.
Vrduse kasulikkus matemaatikateoreemide, elektroonikaskeemide
ja arvutiprogrammide formaliseerimisel motiveerib spetsiaalsete
meetodite vljattamist vrduse kasutamisel tuletustes.
Kasutame vrduspredikaadiks edaspidi harilikku vrdussm-
bolit =. Literaal = (t
1
, t
2
) thistab siis termide t
1
ja t
2
vrdsust.
Kuna smbolil = puuduvad maagilised omadused, mis ta
iseenesest vrdust vljendama panevad, tuleb vrduspredikaat de-
neerida jrgmiste disjunktidega:
D
refleksiivsus
: =(x,x),
D
smmeetria
: =(x,y) =(y,x),
D
transitiivsus
: =(x,y) =(y,z) =(x,z),
asendus literaali: =(x
i
,y
i
) P(u
1
, . . . , x
i
, . . . , u
n
)
P(u
1
, . . . , y
i
, . . . , u
n
),
322 17. Automaatne teoreemitestamine
asendus termi: =(x
i
,y
i
) f (u
1
, . . . , x
i
, . . . , u
n
) =
f (u
1
, . . . , y
i
, . . . , u
n
),
kus viimased kaks disjunkti, asendus literaali ja asendus termi, on
vrdsete termide asendatavust formaliseerivad disjunktiskeemid.
Vrduse defineerimisel mingi konkreetse disjunktide hulga jaoks
tuleb iga predikaatsmboli ja funktsionaalsmboli jaoks kirjutada
eraldi vlja n konkreetset asendust formaliseerivat disjunkti, kus n
on antud smboli argumentide arv.
Nide: koosnegu S kolmest heliteraalilisest disjunktist:
(1) p(f(x)),
(2) p(b),
(3) =(f(a),b).
Thja disjunkti tuletamiseks hulgast S on tarvis deneerida vr-
duspredikaat, s.o. lisada disjunktid D
refleksiivsus
, D
smmeetria
,
D
transitiivsus
ja jrgmised kaks asendust deneerivat disjunkti:
(4) =(x,y) p(x) p(y),
(5) =(x,y) =(f(x),f(y)).
Vastuolu tuletus:
(3 ja D
smmeetria
annavad disjunkti 6) =(b,f(a)),
(6 ja 4 annavad disjunkti 7) p(b) p(f(a)),
(2 ja 7 annavad disjunkti 8) p(f(a)),
(1 ja 8 annavad thja disjunkti) vastuolu.
Vrduspredikaati deneerivate disjunktide kasutamine on reso-
lutsioonimeetodi jaoks kohmakas ja ebaefektiivne meetod. Niteks
vimaldab D
transitiivsus
ksi tuletada lpmatu arvu uusi dis-
junkte, mida tegelikult vastuolu leidmiseks kunagi tarvis ei lhe.
17.2. Sissejuhatus resolutsioonimeetodisse 323
Vrduspredikaadi aksiomatiseerimise asemel kasutatakse resolut-
sioonimeetodi juures enamasti spetsiaalset lisareeglit, nn. paramo-
dulatsioonireeglit
A[t ] A
1
. . . A
n
= (t
1
, t
2
) B
1
. . . B
m
(A[t
2
] A
1
. . . A
n
B
1
. . . B
m
)
= (t, t
1
)
kus A[t ] thistab positiivset vi negatiivset literaali, mis sisaldab
termi t , mis ei ole muutuja, ning A[t
2
] thistab sedasama literaali,
kus term t on asendatud termiga t
2
. Lisaks reegli sjatoodud kujule
kasutame vrduspredikaadi smmeetria tttu veel teist kuju, kus
literaal = (t
1
, t
2
) on asendatud literaaliga = (t
2
, t
1
).
Paramodulatsioonireegli abil saab sooritada termide asendusi
otse, s.t. asendada he literaalis leiduva termi t temaga vrdse
termiga t
2
, sltumatult termi t asukohast literaalis. Nue, et t
ei oleks muutuja, on kasutusel ainult efektiivsuse huvides
paramodulatsioonireegel on korrektne ka ilma sellise piiranguta.
Paramodulatsiooni kasutades saame eelmisest nitest tule-
tada vastuolu, kasutamata vrduspredikaati aksiomatiseerivaid dis-
junkte:
(3 ja 1 annavad paramodulatsiooni abil disjunkti 4) p(b),
(2 ja 4 annavad thja disjunkti) vastuolu.
Esitame jrgmise teoreemi ilma testuseta.
Teoreem 17.13 (paramodulatsiooni tielikkus). Thistagu
S
asendus
asendust deneerivate disjunktide hulka disjunktihulga
S jaoks. Kui disjunktide hulk
S {D
refleksiivsus
, D
smmeetria
, D
transitiivsus
} S
asendus
on vastuoluline, siis on thi disjunkt hulgast S {D
refleksiivsus
}
paramodulatsioonireegliga tiendatud resolutsioonimeetodi abil tu-
letatav.
17.2.5. Loogikavalemi teisendamine disjunktide hulgaks
Kasutamaks resolutsioonimeetodit esimest jrku predikaatarvutuse
valemi testamisel, on tarvis uuritav valem kigepealt disjunktide
324 17. Automaatne teoreemitestamine
hulgaks teisendada. Selle teisenduse jaoks eksisteerib mitmeid
algoritme, kusjuures mned algoritmid annavad teatud juhtudel
viksemaid ja resolutsioonimeetodi jaoks sobivamaid disjunktide
hulki kui teised. On olemas ka selliseid algoritme, kus resolut-
sioonimeetod kombineeritakse disjunktideks teisendusega dnaa-
miliselt, s.t. resolutsioonimeetodit hakatakse rakendama juba enne,
kui kogu valem on disjunktide hulgaks teisendatud.
Esitame siinkohal he suhteliselt lihtsa disjunktideks teisenda-
mise algoritmi. Olgu meil antud esimest jrku predikaatarvutuse
valem F.
1. Teisendame valemi F ekvivalentseks valemiks F
1
, asendades
valemis F kik seostega ja konstrueeritud alamva-
lemid ekvivalentsete alamvalemitega, mis sisaldavad ainult
seoseid , ja &:
A B asendame valemiga A B,
A B asendame valemiga (A B) & (B A).
2. Teisendame valemi F
1
ekvivalentseks valemiks F
2
, nihuta-
des eitusseosed sissepoole, elementaarvalemite ette. Selleks
kasutame jrgmisi asendusi:
A asendame valemiga A,
(A& B) asendame valemiga A B,
(A B) asendame valemiga A& B,
xA asendame valemiga xA,
xA asendame valemiga xA.
3. Teisendame valemi F
2
ekvivalentseks valemiks F
3
, nime-
tades kik muutujad selliselt mber, et kahel eri muutujal
oleksid alati erinevad nimed, s.t. kski muutuja valemis ei
oleks seotud rohkem kui he kvantoriga. Nide: teisendame
valemi xP(x, x) &xQ(x) valemiks xP(x, x) &yQ(y).
4. Teisendame valemi F
3
valemiks F
4
, kaotades kik ole-
masolukvantorid . See samm, skolemiseerimine, on teisen-
dusalgoritmi juures kige keerulisem ja selle korrektsus ei
17.2. Sissejuhatus resolutsioonimeetodisse 325
ole elementaarne. Meetodi nimi tuleb leiutaja, Norra loogiku
Thoralf Skolemi (18871963) nimest.
Kui olemasolukvantori abil ehitatud alamvalem xA ei
ole hegi ldisuskvantori mjupiirkonnas, siis asen-
dame alamvalemi xA valemiga A

, kus A

on saadud
valemist A, asendades seal muutuja x uue konstan-
diga a. Uue konstandi all mtleme suvalist konstanti,
mida ei ole teisendatavas valemis. Toome nite. Va-
lemis xP(x, a) & yQ(y, y) ei asu yQ(y, y) hegi
ldisuskvantori mjupiirkonnas, seega kaotame ole-
masolukvantori ja asendame muutuja y konstandiga b:
xP(x, a)&Q(b, b). NB! konstanti a ei vi asenduseks
kasutada, kuna ta juba on teisendatavas valemis.
Asugu nd alamvalem xA mingi hulga ldisuskvan-
torite y
1
, y
2
, . . . , y
n
mjupiirkonnas. Asendame
alamvalemi xA valemiga A

, kus A

on saadud
valemist A, asendades muutuja x uue funktsionaal-
termiga f (y
1
, y
2
, . . . , y
n
), kusjuures funktsionaalsm-
bol f on uus, s.t. f ei esine teisendatavas va-
lemis. Nide: valemis xyzP(f (z), x, y, z) asen-
dame muutuja z termiga g(x, y), mis annab valemi
xyP(f (g(x, y)), x, y, g(x, y)).
5. Teisendame valemi F
4
ekvivalentseks valemiks F
5
, eemalda-
des kik ldisuskvantorid . Muutujad valemis F
5
on nd
nn. vabad muutujad.
6. Teisendame valemi F
5
ekvivalentseks konjunktiivsel nor-
maalkujul olevaks valemiks F
6
. Selleks teisendame kik
alamvalemid kujul A (B & C) ekvivalentsele kujule
(A B) & (A C).
7. Valem F
6
on nd kujul C
1
& C
2
& . . . & C
n
, kus iga
C
i
on disjunkt. Teisendame valemi F
6
disjunktide hulgaks
{C
1
, C
2
, . . . , C
n
}.
326 17. Automaatne teoreemitestamine
Nitena toome valemi
x((yP(x, y)) y(Q(x, y) R(x, y)))
sammsammulise teisenduse disjunktide hulgaks:
1. x((yP(x, y)) y(Q(x, y) R(x, y)))
2. x((yP(x, y)) (yQ(x, y) & R(x, y)))
3. x((yP(x, y)) (zQ(x, z) & R(x, z)))
4. x(P(x, f (x)) (Q(x, g(x)) & R(x, g(x))))
5. P(x, f (x)) (Q(x, g(x)) & R(x, g(x)))
6. (P(x, f (x)) Q(x, g(x))) &(P(x, f (x)) R(x, g(x)))
7. {P(x, f (x)) Q(x, g(x)), P(x, f (x)) R(x, g(x))}
Enamik laltoodud teisendussammudest annab tulemuseks lh-
tevalemiga ekvivalentse valemi. Ainsa erandina ei anna lhtevale-
miga ekvivalentset tulemust skolemiseerimine ning seetttu ei ole
ka kogu teisenduse lpptulemus lhtevalemiga loogiliselt ekviva-
lentne. Automaatse teoreemitestamise tarvis piisab aga jrgmisest
Skolemi testatud teoreemist.
Teoreem 17.14. Olgu F esimest jrku predikaatarvutuse valem ja
(F) selle valemi skolemiseeritud kuju. F on vastuoluline siis ja
ainult siis, kui (F) on vastuoluline.
Peamisi ebameeldivusi disjunktideks teisendamisel valmis-
tab eelviimane samm, mis asendab kik alamvalemid kujul
A (B & C) ekvivalentse, kuid suurema kujuga (AB)&(AC).
Viimase asenduse tttu vib alguses suhteliselt vike loogikavalem
teiseneda vga suureks disjunktihulgaks.
17.3. Resolutsioonimeetodi strateegiad ja rakendused 327
17.3. Resolutsioonimeetodi strateegiad ja
rakendused
Resolutsioonimeetodi ks ebameeldivamaid klgi on suure hulga
mittevajalike disjunktide (niteks korduvate disjunktide) tuleta-
mine. Meetodi efektiivsuse suurendamise peamine vahend on
selliste variantide ehk strateegiate vljattamine, mis tuletaksid
vimalikult vhe disjunkte, kaotamata samas tielikkust.
Esitame siin resolutsioonimeetodi mne kasutatavama stratee-
gia.
17.3.1. Neelamisstrateegia ja tautoloogia krvaldamine
Neelamisstrateegia on pea kige universaalsem resolutsioonimee-
todi strateegiatest, seda saab kombineerida enamiku teiste stra-
teegiatega ning ta on realiseeritud praktiliselt kigis automaatse
teoreemitestamise programmides.
Definitsioon 17.15. Disjunkt D

neelab disjunkti D, kui mingi


substitutsiooni ja disjunkti jaoks kehtib D = (D

).
Sisuliselt thendab disjunkti D neelamine disjunkti D

poolt,
et D

on ldisem vi sama ldine (viimasel juhul D

= D)
kui D: kik, mis tuleneb loogiliselt D-st, tuleneb ka D

-st. Kui
D

neelab D, siis kehtib alati D

D.
Nide: disjunkt p(x) r(y) neelab disjunkti p(a) r(v)
s(z).
Neelamisstrateegia seisneb jrgmises kahes piirangus:
1. Kui viimati tuletatud disjunkti D neelab kas mni va-
remtuletatud vi lhtedisjunkt, siis krvaldatakse D kohe,
s.t. edasises tuletamises teda ei kasutata.
2. Kui viimati tuletatud disjunkt D ise neelab kas mne varem
tuletatud vi lhtedisjunkti R, siis krvaldatakse R kohe.
328 17. Automaatne teoreemitestamine
Teoreem 17.16. Neelamisstrateegia silitab resolutsioonimeetodi
tielikkuse.
Testus. Induktsioon sammude arvu jrgi vastuolu tuletuses. In-
duktsiooni baas on triviaalne. Induktsiooni samm: olgu disjunkt D
tuletatud resolutsioonireegli rakendamisega disjunktidele D
1
ja D
2
.
Kui asendada disjunkt D
1
teda neelava disjunktiga D

1
, siis kehtib
ks kahest: muudetud tuletussammu resultaat D

neelab dis-
junkti D vi D

1
neelab ise disjunkti D. Analoogiline vide kehtib
faktoriseerimisreegli kohta.
Tautoloogia krvaldamise strateegia on sarnane neelamisstra-
teegiaga.
Definitsioon 17.17. Tautoloogiliseks nimetame disjunkte
L L , kus on mingi disjunkt.
Antud strateegia seisneb tautoloogiliste disjunktide koheses
krvaldamises. Strateegia silitab resolutsioonimeetodi tielikkuse:
testuseks piisab, kui mrgata, et disjunktidest L L ja D
resolutsioonireegliga saadud disjunkt D

neelab eelduseks oleva


disjunkti L L.
17.3.2. Toetushulga strateegia
Testuse otsimisel on tihti tegu olukorraga, kus on ette antud
suur hulk suhteid ja omadusi deneerivaid valemeid, mingi mate-
maatikavaldkonna formalisatsioon vi faktide/reeglite andmebaas.
Sellise denitsioonide kogu vi andmebaasi puhul on enamasti
teada, et antud valemite hulk ei ole vastuoluline.
Taolisest valemite hulgast K mingi jrelduse J tegemine
thendab valemi K J testamist, s.t. K & J vastuolulisuse
nitamist. Teisendame valemi K disjunktide hulgaks K

ja valemi
J disjunktide hulgaks J

. Eesmrgiks on hulgast K

tuletada
vastuolu.
Kui K

sisaldab palju disjunkte, siis tekib sageli olukord, kus


resolutsioonimeetod juba esimestel tasemetel tuletab ainuksi K

-s
17.3. Resolutsioonimeetodi strateegiad ja rakendused 329
leiduvatest disjunktidest tohutu hulga uusi disjunkte, millest ena-
mikku vastuolu tuletamiseks kasutada ei saa. Kll aga phjustab
nende disjunktide tuletamine ajakulu ja muudab vastuolu leidmise
rmiselt raskeks. Resolutsioonimeetod n. ei hooli asjaolust, et
on tarvis nidata nimelt valemi J jreldatavust.
Toetushulga strateegia eesmrgiks on suunata resolutsiooni-
meetodit vastuolu otsimisel alustama nimelt valemist J, liikudes
otsitavast jreldusest tagasisuunas faktide poole.
Olukorras, kus otsitakse K

vastuolu, ning on teada,


et K

ei ole vastuoluline, nimetatakse hulka J

hulga K

toetushulgaks.
Toetushulga strateegia piirab resolutsioonireegli rakendamist,
nudes, et vhemalt ks reegli kahest eeldusest peab kas kuuluma
toetushulka vi olema toetushulga strateegiaga tuletatud. Pole raske
testada, et toetushulga strateegia silitab resolutsioonimeetodi
tielikkuse.
Vaatame nitena jrgmist disjunktide hulka, vttes disjunkti 4
toetushulga ainsaks elemendiks ja kasutades toetushulga stratee-
giat.
(1) p(x) q(x);
(2) p(a) r(x);
(3) q(x) r(a);
(4) r(a).
Esimesel tasemel saab tuletada kaks disjunkti:
(4 ja 2 annavad disjunkti 5) p(a), mis neelab disjunkti 2;
(4 ja 3 annavad disjunkti 6) q(x), mis neelab disjunkti 3.
Teisel tasemel saab tuletada kaks disjunkti:
(5 ja 1 annavad disjunkti 7) q(a);
(6 ja 1 annavad disjunkti 8) p(x), mis neelab disjunkti 1.
Kolmandal tasemel annavad disjunktid 7 ja 6 vastuolu.
330 17. Automaatne teoreemitestamine
17.3.3. Jrjestatud resolutsioon
Jrjestatud resolutsioon on ks sellistest testuse otsimise stratee-
giatest, mille juures keelatakse osa resolutsioonireegli vimalikke
rakendusi. Jrjestatud resolutsioon ei ole ks konkreetne strateegia,
vaid pigem terve strateegiate perekond, mille iga liige realiseerib
ht kindlat literaalide jrjestamise viisi disjunktis.
Jrjestatud resolutsiooni strateegia on jrgmine:
Defineeritakse literaalide jrjestus disjunktis, s.t. meetod,
mille alusel saab iga kahe literaali A ja B jaoks kontrollida,
kas A B.
Resolutsioonireeglil keelatakse disjunktis selliste literaalide
ralikamine, millest suuremaid (jrjestuse mttes) lite-
raale disjunkt sisaldab. Niisiis, reeglit
A
1
A
2
. . . A
n
B
1
B
2
. . . B
m
(A
2
. . . A
n
B
2
. . . B
m
)
= (A
1
, B
1
)
vib rakendada ainult juhul, kui hegi literaali A
i
korral
ei kehti A
i
A
1
ning hegi literaali B
i
korral ei kehti
B
i
B
1
.
Nide. Defineerime jrjestuse
1
, kasutades jrjestamiseks
literaalis esinevaid predikaatsmboleid:
p
1
q
1
q
1
p
1
r
1
r.
Vaatame, milliseid disjunkte jrgmisest
1
abil jrjestatud dis-
junktihulgast tuletada saab. Paneme thele, et
1
lubab nendest
disjunktidest ra ligata ainult kige esimesi disjunkte:
(1) p(x) q(x);
(2) p(a) r(x);
(3) q(x) r(a);
(4) r(a).
17.3. Resolutsioonimeetodi strateegiad ja rakendused 331
Esimesel tasemel saab tuletada heainsa disjunkti:
(1 ja 2 annavad disjunkti 5) q(a) r(x).
Teisel tasemel saab tuletada kaks disjunkti:
(5 ja 3 annavad disjunkti 6) r(a) r(x);
(6 annab faktoriseerimisel disjunkti 7) r(a).
Disjunkt 7 neelab disjunktid 3 ja 6 ning annab kolmandal tasemel
koos disjunktiga 4 vastuolu.
Vrdluseks: piiranguteta resolutsioonimeetodiga saame sjasest
disjunktihulgast tuletada enam kui kakskmmend uut disjunkti.
Jrjestatud resolutsiooni tielikkuse testamiseks pole leitud
universaalset meetodit ning testus sltub sageli jrjestuse de-
nitsioonist. ldjuhul ei saa jrjestusstrateegiaid kombineerida
toetusstrateegiaga ning mitut eriti tugevat jrjestusstrateegiat ei
saa kombineerida ka neelamisstrateegiaga. Ksimusele, kas kik
sellised jrjestused, mis on sltumatud muutujate mbernimeta-
misest, silitavad resolutsioonimeetodi tielikkuse, pole raamatu
kirjutamise hetkeks vastust veel leitud.
ks lihtsamaid, samas aga vga praktiline jrjestamismeetod
on jrjestada literaale polaarsuse jrgi, niteks lugedes negatiivseid
literaale suuremaks kui positiivseid.
Olgu meil jllegi tegemist reeglite/faktide andmebaasiga K,
millest pame tuletada disjunkti J. Teatavasti saab iga disjunkti
esitada implikatsioonina: kehtib valem
(N
1
. . .N
n
P
1
. . .P
m
) (N
1
&. . .&N
n
P
1
. . .P
m
).
Jrgmises nites kuuluvad disjunktid 12 andmebaasi K, mil-
lest ptakse tuletada disjunkti 3 eitus. Illustratiivsuse huvides
esitame disjunktid krvuti oma implikatsioonikujuga.
(1) M(x) P(x) M(x) P(x)
(2) M(a) M(a)
(3) P(z) P(z)
332 17. Automaatne teoreemitestamine
Kasutame kigepealt jrjestust, kus negatiivsed literaalid tulevad
enne positiivseid. Sel juhul saab esimesel tasemel tuletada vaid
he disjunkti: disjunktid 1 ja 2 annavad P(a), ning viimane an-
nab teisel tasemel vastuolu disjunktiga 3. Testuse otsimine algas
seega faktidest andmebaasis K, judes lpuks soovitud jrelduse
tuletamiseni.
Jrgmisena kasutame vastupidist jrjestust: positiivsed literaa-
lid tulevad enne negatiivseid. Esimesel tasemel annavad nd
disjunktid 3 ja 1 disjunkti M(x), millest teisel tasemel tule-
tame koos disjunktiga 2 vastuolu. Testuse otsimine algas seega
soovitud jreldusest ning judis lpuks faktideni andmebaasis K.
Vga keeruline on vastata ksimusele, milline jrjestus millisel
juhul paremini sobib, s.t. phjustab viksema arvu disjunktide
tuletamise. Vaatame kahte nidet, kus esimeses on eelistatav suund
faktidest jrelduseni, teises aga jreldusest faktideni. Esitame
andmebaasis olevad disjunktid implikatsioonidena.
Esimene nide. Olgu meil jrgmine andmebaas:
putukas(x) elusolend(x)
imetaja(x) elusolend(x)
sipelgas(x) putukas(x)
mesilane(x) putukas(x)
mblik(x) putukas(x)
lvi(x) imetaja(x)
tiiger(x) imetaja(x)
sebra(x) imetaja(x)
Oletame, et Zeke on sebra. Ksime: kas Zeke on elusolend?
Kasutame jrjestatud resolutsiooni, kus negatiivsed literaalid tule-
vad enne positiivseid, s.t. otsingu suund on faktidest jrelduseni.
Kirjutame vlja kik tuletatavad disjunktid, eraldades tasemed
horisontaaljoonega. Disjunktid 1 ja 2 on meie ksimuse eitusele
vastavad lhtedisjunktid.
17.3. Resolutsioonimeetodi strateegiad ja rakendused 333
(1) sebra(Zeke)
(2) elusolend(Zeke)
(3) imetaja(Zeke)
(4) elusolend(Zeke)
(5) vastuolu.
Jrgmisena kasutame vastupidiselt jrjestatud resolutsiooni: po-
sitiivsed literaalid tulevad enne negatiivseid, s.t. otsingu suund
on jreldusest faktideni. Kirjutame jllegi vlja kik tuletatavad
disjunktid.
(1) sebra(Zeke)
(2) elusolend(Zeke)
(3) putukas(Zeke)
(4) imetaja(Zeke)
(5) sipelgas(Zeke)
(6) mesilane(Zeke)
(7) mblik(Zeke)
(8) lvi(Zeke)
(9) tiiger(Zeke)
(10) sebra(Zeke)
(11) vastuolu.
Nagu nha, tuletatakse viimase jrjestuse kasutamise korral palju
rohkem disjunkte kui esimese jrjestuse korral.
Teine nide. Olgu meil jrgmine sebrade andmebaas:
sebra(x) imetaja(x)
sebra(x) triibuline(x)
sebra(x) keskmiselt_suur(x)
imetaja(x) elusolend(x)
334 17. Automaatne teoreemitestamine
elusolend(x) soe(x)
triibuline(x) mittehevrviline(x)
triibuline(x) mittetpiline(x)
keskmiselt_suur(x) mittevike(x)
keskmiselt_suur(x) mittesuur(x)
Uurime, kas asjaolust, et Zeke on sebra, jreldub, et Zeke
on mittesuur. Kasutame kigepealt otsingut suunaga faktidest
jrelduseni. Disjunktid 1 ja 2 on meie ksimuse eitusele vastavad
lhtedisjunktid.
(1) sebra(Zeke)
(2) mittesuur(Zeke)
(3) imetaja(Zeke)
(4) triibuline(Zeke)
(5) keskmiselt_suur(Zeke)
(6) elusolend(Zeke)
(7) mittehevrviline(Zeke)
(8) mittetpiline(Zeke)
(9) mittevike(Zeke)
(10) mittesuur(Zeke)
(11) vastuolu.
Jrgmiseks kasutame otsingut suunaga jreldusest faktideni, mis
vastupidi esimesele nitele on praeguse andmebaasi jaoks tunduvalt
efektiivsem.
(1) sebra(Zeke)
(2) mittesuur(Zeke)
(3) keskmiselt_suur(Zeke)
(4) sebra(Zeke)
(5) vastuolu.
17.4. Niteid ja rakendusi 335
17.4. Niteid ja rakendusi
Ndisaegsed resolutsioonimeetodil phinevad automaatse teoree-
mitestamise programmid tuletavad sekundis mitu tuhat disjunkti.
Seejuures tehakse iga tuletatud disjunktiga tavaliselt veel hulk
mitmesuguseid operatsioone, nagu neelamiskontroll, disjunkti liht-
sustamine jne., mis vivad kulutada tunduvalt rohkem aega kui
disjunkti tuletamine ise.
Kuitahes kiiresti testajad ka disjunkte ei tuletaks, ei pse
keegi mda asjaolust, et tuletatavate disjunktide hulk kasvab ta-
semete likes kiiremini kui eksponentsiaalselt. Sgavate, paljusid
samme sisaldavate testuste tisautomaatne leidmine ei nnestu
kaugeltki alati pigem vastupidi. Keeruliste testuste automaatse
leidmise nimel ttatakse pidevalt vlja uusi strateegiaid ja heuris-
tikaid viimaste efekt on palju suurem kui arvutikiiruste paari-
vi kmnekordsel kasvamisel.
Vaatame nd mningaid mittetriviaalseid, samas aga mitte ka
lemra keerulisi niteid mitmest sfrist.
17.4.1. Algebra
Esimene nide on suhteliselt lihtne teoreem rhmateooriast. Olgu
meil kahekohaline assotsiatiivne tehe * koos prdelemendi vt-
mise funktsiooniga i. Testame, et kui sellisel tehtel on pa-
rempoolne hikelement e, siis on seesama e ka vasakpoolne
hikelement.
Disjunktid 13 formaliseerivad prd- ja hikelemendi ning
tehte * assotsiatiivsuse. Disjunkt 4 on teoreemi x((e, x) = x)
skolemiseeritud eitus.
(1) =(*(x,i(x)),e)
(2) =(*(x,e),x)
(3) =(*(x,*(y,z)),*(*(x,y),z))
(4) =(*(e,c),c)
(5) =(x,x)
336 17. Automaatne teoreemitestamine
Testuse otsimisel kasutame paramodulatsiooni. Automaatne
teoreemitestaja leiab vastuolu sekundi murdosa vltel, prast ligi
poolteise tuhande disjunkti tuletamist. Jrgnevas testuses on kik
sammud peale viimase paramodulatsioonireegli rakendused.
(2 ja 3 annavad 8) =(*(x,*(e,y)),*(x,y))
(1 ja 3 annavad 10) =(*(x,e),*(*(x,y),i(y)))
(8 ja 1 annavad 46) =(*(x,*(e,i(x))),e)
(2 ja 10 annavad 145) =(x,*(*(x,y),i(y)))
(1 ja 145 annavad 175) =(x,*(e,i(i(x))))
(175 ja 46 annavad 206) =(*(i(x),x),e)
(206 ja 145 annavad 233) =(i(x),*(e,i(x)))
(233 ja 175 annavad 560) =(x,i(i(x)))
(560 ja 175 annavad 569) =(x,*(e,x))
(569 ja 4 annavad 1421) =(c,c)
(5 ja 1421 annavad thja disjunkti) vastuolu.
17.4.2. Metaloogika
Teise nite vtame loogika vallast. Uurime selliseid klassika-
lise lausearvutuse valemeid, mis sisaldavad ainult lausemuutujaid
ja implikatsiooni. !ukasiewicz testas, et taoliselt piiratud klas-
sikalise lausearvutuse aksiomatiseerimiseks piisab lisaks modus
ponensi reeglile hestainsast aksioomiskeemist:
((x y) z) ((z x) (u x)).
Tielikkuse testamiseks tuleb nimetatud aksioomist modus po-
nensiga tuletada kik harilikud implikatsiooni formaliseerivad
aksioomiskeemid. Siinses nites tuletame neist ainult he, Peircei
reegli:
(((x y) x) x).
17.4. Niteid ja rakendusi 337
Implikatsiooni x y esitame termi kujul: i(x,y). Literaal
p(t ) tleb, et t on tuletatav lausearvutusvalem. Disjunkt 1 forma-
liseerib modus ponensi reeglit, disjunkt 3 !ukasiewiczi aksioomi
ja disjunkt 2 Peircei reegli ldkehtivuse eitust.
(1) p(x) p(i(x,y)) p(y)
(2) p(i(i(i(a,b),a),a))
(3) p(i(i(i(x,y),z),i(i(z,x),i(u,x))))
Tuletusreeglina kasutame hperresolutsioonireeglit, mis teeb
korraga mitu harilikku resolutsioonisammu. Antud nites vastab
ks hperresolutsioonisamm tpselt hele modus ponensi reegli
rakendusele ja koosneb seega kahest jrjestikusest hariliku re-
solutsiooni sammust. Testuse leidmiseks kulub mitu sekundit,
mille jooksul testaja tuletab ca 20 000 disjunkti, millest 90%
neelatakse.
(3, 1, 3 annavad 4)
p(i(i(i(i(x,y),i(z,y)),i(y,u)),i(v,i(y,u))))
(4, 1, 4 annavad 5) p(i(x,i(i(y,z),i(z,i(y,z)))))
(4, 1, 3 annavad 6) p(i(i(i(x,i(y,z)),i(i(u,y),i(v,y))),
i(w,i(i(u,y),i(v,y)))))
(5, 1, 5 annavad 7) p(i(i(x,y),i(y,i(x,y))))
(7, 1, 3 annavad 12) p(i(i(i(x,i(y,x)),y),i(z,y)))
(6, 1, 12 annavad 15) p(i(x,i(i(y,z),i(z,z))))
(15, 1, 15 annavad 20) p(i(i(x,y),i(y,y)))
(20, 1, 12 annavad 23) p(i(i(x,y),i(x,y)))
(23, 1, 3 annavad 26) p(i(i(i(x,y),x),i(z,x)))
(26, 1, 3 annavad 50) p(i(i(i(x,y),i(y,z)),i(u,i(y,z))))
(50, 1, 3 annavad 94)
p(i(i(i(x,i(y,z)),i(u,y)),i(v,i(u,y))))
(94, 1, 3 annavad 490) p(i(x,i(i(i(i(y,z),u),z),i(y,z))))
338 17. Automaatne teoreemitestamine
(490, 1, 490 annavad 498) p(i(i(i(i(x,y),z),y),i(x,y)))
(498, 1, 3 annavad 507)
p(i(i(i(x,y),i(i(x,y),z)),i(u,i(i(x,y),z))))
(507, 1, 26 annavad 1143) p(i(x,i(i(i(y,z),y),y)))
(1143, 1, 1143 annavad 1162) p(i(i(i(x,y),x),x))
(1162, 2 annavad thja disjunkti) vastuolu.
17.4.3. Programmide verifitseerimine
Kolmanda nitena vaatame arvutiprogrammi korrektsuse testa-
mist.
Kirjutame funktsionaalse programmi inter, mis arvutab kahe
loendi hisosa.
Definitsioon 17.18. Loend on andmestruktuur, mis ehitatakse in-
duktiivselt thjast loendist nil ja suvalistest termidest loendi
elementidest paarikonstruktori c abil. Loendile x elemendi h
lisamisel saadud uus loend on c(h,x).
Niteid: arvuloend 1, 2, 5, 15 kirjutatakse c(1,c(2,c(5,
c(15,nil)))), konstantide loend e,e,d kui c(e,c(e,
c(d,nil))).
Defineerime kigepealt funktsionaalse programmi , mil-
lega saab kontrollida, kas loend sisaldab teatud elementi:
(x, ) =
(x, c(y, z)) = x = y
(x, z)
Avaldis (x, y) annab tese resultaadi siis ja
ainult siis, kui loend y sisaldab elementi x; vastasel korral on
resultaadiks .
17.4. Niteid ja rakendusi 339
Nd saame kirjutada kahe loendi hisosa arvutava programmi
int er, mis kasutab funktsiooni :
( , y) =
(c(x, y), z) = (x, z) c(x, (y, z))
(y, z)
Jrgnevas eeldame, et programmi korrektsus on juba
testatud fakt.
Meie eesmrgiks on testada, et on korrektne, s.t.
arvutab alati ige resultaadi. Enne kui saame hakata otsima
testust, peab olema tpselt defineeritud, milline on hisosa
arvutamise ige resultaat: peame defineerima ehk spetsifitseerima
hisosa miste. On lihtne veenduda, et jrgmine valem sobib
hisosa olemasolu spetsifikatsiooniks:
xyzu(( (u, x) & (u, y)) (u, z)).
Valem tleb, et suvalise kahe objekti x ja y jaoks on selline
objekt z, et mingi objekt u on korraga nii x kui y element
parajasti siis, kui ta on z element.
hisosa olemasolu valemit modifitseerides saame kergesti
valemi, mis vidab, et (x, y) annab alati loendite x ja y
korrektse hisosa:
xyu(( (u, x) & (u, y)) (u, (x, y))).
Viimati toodud valemi testamine ongi meie eesmrk.
Jrgmise sammuna teisendame funktsionaalsed programmid
ja neile ekvivalentseteks loogikavalemiteks. Parema
loetavuse mttes kirjutame edaspidi literaali =(t
1
, t
2
) kujul t
1
= t
2
.
Programm annab:
x( (x, ))) & (x, y, z( (x, c(y, z))
(x = y (x, z))).
Programmi teisendame valemiteks
y( ( , y) = ),
x, y, z( (x, y) (c(x, z), y) = c(x, (z, y)))
340 17. Automaatne teoreemitestamine
ja
x, y, z( (x, y) (c(x, z), y) = (z, y)).
Arve, loendeid ja muid potentsiaalselt lpmatuid objekte k-
sitlevate teoreemide testamiseks ei piisa enamasti puhtast esimest
jrku predikaatarvutusest. Phjuseks asjaolu, et lpmatu struktuur
deneeritakse induktsiooniprintsiibiga ning testuste juures on see-
tttu samuti vaja rakendada induktsiooni. Harilikuks induktsiooni
kasutamise valdkonnaks on aritmeetika ning analoogiliselt vii-
masega kasutatakse induktsiooni teoreemide testamisel loendite
kohta.
Vimalikke induktsiooniskeeme on lpmatu arv, ning kui in-
duktsiooni testamise juures tarvis lheb, siis lheb sageli tarvis ka
mitmesuguseid eraldi testatavaid lisalemmasid. Metamatemaatika
positsioonilt vib selle asjaolu kohta elda lihtsalt, et aritmeetika
ja loendite teooria pole normaliseeritavad. Praktikas thendab see
puhta esimest jrku predikaatarvutusega vrreldes suuri lisaras-
kusi testuse otsimisel: tarvis on leida sobiv induktsiooniskeem
ning vajalikud lisalemmad. On mitu automaatset teoreemitesta-
jat, mis pavad vajalikke induktsiooniskeeme ja lisalemmasid
leida, kuid keerukamatel juhtudel on see tisautomaatssteemi
jaoks vga raske, s.t. otsimine vtab lootusetult kaua aega. Sel
puhul kasutatakse interaktiivseid ssteeme, kus kasutaja suunab
ssteemi sobiva induktsiooniskeemi ning lisalemmade juurde ja
laseb ssteemil alles seejrel automaatselt tegutseda.
Kesoleva teoreemi testamiseks piisab siiski kige lihtsamat
tpi induktsiooniskeemi, struktuurse induktsiooni kasutamisest,
samuti ei lhe vaja lisalemmasid, mida peaksime eraldi tes-
tama hakkama. Seesuguse juhuga saavad automaatsed induktsiooni
kasutavad ssteemid kergesti hakkama.
Jrgmine reegliskeem on selline struktuurse induktsiooni va-
riant loendite jaoks, mis kasutab induktsiooni jaoks muutujat x
1
.
x
2
. . . x
n
.A{x
1
/ }
x((x
2
. . . x
n
.A{x
1
/x})
(hx
2
. . . x
n
.A{x
1
/c(h, x)}))
x
1
. . . x
n
.A
A kohale tuleb paigutada testatav valem. Eeldatakse, et muutuja
17.4. Niteid ja rakendusi 341
x
1
asemele vib substitueerida ainult loendeid, s.t. x
1
on loendi
tpi. Esimene eeldus reegliskeemis on induktsiooni baas: valem A
kehtib, kui muutuja x
1
asendada thja loendiga . Teine eeldus
reegliskeemis on induktsiooni samm: eeldame, et A kehtib suvalise
loendi x jaoks ning jreldame sellest, et A kehtib, kui loendile x
lisada suvaline element h.
17.4.4. Induktsiooni baas
Induktsiooni baasjuht on valem
yu(( (u, ) & (u, y)) (u, ( , y))),
mis tuleb testada, kasutades programmide ja teisen-
dust loogikavalemiteks.
Esitame probleemi teisenduse disjunktihulgaks:
(1) (x = x)
(2) (inter(nil,y) = nil)
(3) mem(u,y) (inter(c(u,x),y) = c(u,inter(x,y)))
(4) mem(u,y) (inter(c(u,x),y) = inter(x,y))
(5) mem(x,nil)
(6) mem(x,c(y,z)) (x = y) mem(x,z)
(7) (x = y) mem(x,c(y,z))
(8) mem(x,z) mem(x,c(y,z))
(9) mem(su,nil) mem(su,sy)
mem(su,inter(nil,sy))
(10) mem(su,nil) mem(su,inter(nil,sy))
(11) mem(su,sy) mem(su,inter(nil,sy))
Disjunktid 2, 3 ja 4 saame programmi teisendusest,
disjunktid 5, 6, 7 ja 8 programmi teisendusest ning disjunktid
9, 10 ja 11 baasjuhu valemi teisendusest. Konstandid su ja sy
saame muutujate u ja y skolemiseerimisel.
Vastuolu tuletame vga lihtsalt:
342 17. Automaatne teoreemitestamine
(2 ja 5, paramodulatsioon: 14) mem(x,inter(nil,y))
(10 ja 5, resolutsioon: 46) mem(su,inter(nil,sy))
(46 ja 14 annavad thja disjunkti) vastuolu.
17.4.5. Induktsiooni samm
Induktsiooni sammuks on valem
x((yu(( (u, x) & (u, y)) (u, (x, y))))
(hy
1
u
1
(( (u
1
, c(h, x)) & (u
1
, y
1
))
(u
1
, (c(h, x), y
1
))))),
mis tuleb testada, kasutades programmide ja teisen-
dust loogikavalemiteks.
Probleemi teisendus disjunktihulgaks:
(11) (x = x)
(10) (inter(nil,y) = nil)
(1) mem(u,y) (inter(c(u,x),y) = c(u,inter(x,y)))
(14) mem(u,y) (inter(c(u,x),y) = inter(x,y))
(2) mem(x,nil)
(3) mem(x,c(y,z)) (x = y) mem(x,z)
(4) (x = y) mem(x,c(y,z))
(5) mem(x,z) mem(x,c(y,z))
(6) mem(u,sx) mem(u,y) mem(u,inter(sx,y))
(7) mem(u,sx) mem(u,inter(sx,y))
(8) mem(u,y) mem(u,inter(sx,y))
(15) mem(su1,c(sh,sx)) mem(su1,inter(c(sh,sx),sy1))
(16) mem(su1,sy1) mem(su1,inter(c(sh,sx),sy1))
(9) mem(su1,c(sh,sx)) mem(su1,sy1)
mem(su1,inter(c(sh,sx),sy1))
17.4. Niteid ja rakendusi 343
Esimesed disjunktid saame jllegi programmide ja
teisendusest. Viimased kuus disjunkti saame sammuvalemi teisen-
dusest. Konstandid sx, sh, sy1 ja su1 saame muutujate x, h,
y
1
ja u
1
skolemiseerimisel.
Saadud disjunktihulgast vastuolu tuletamine on juba kllalt
raske lesanne. Sobiva otsimisstrateegia kasutamisel leiavad n-
disaegsed testajad vastuolu paari minuti jooksul, tuletades le
kmne tuhande disjunkti. Meie kasutatud testaja leitud tuletus
sisaldab le kolmekmne hper- ja paramodulatsioonisammu, tes-
tuse sgavus on 20 taset. Sellise sgavusega testuste leidmiseks ei
ole enam praktiliselt vimalik kasutada strateegiat, kus enne jrg-
mise tasemeni liikumist tuletatakse kik disjunktid antud tasemel.
Selle asemel kasutatakse heuristikaid, mis kontsentreerivad tule-
tuse ssteemile perspektiivsemana nivate disjunktide suunas. Mitu
jrgneva tuletuse sammu sisaldab mitme reegli jrjest rakendamist.
Jtame reeglite leidmise lugeja hooleks.
(11, 4 annavad: 17) mem(x,c(x,y))
(14, 9 annavad: 50) mem(su1,c(sh,sx)) mem(su1,sy1)
mem(su1,inter(sx,sy1)) mem(sh,sy1)
(16, 14 annavad: 67) mem(su1,sy1) mem(su1,inter(sx,sy1))
mem(sh,sy1)
(16, 1 annavad: 69) mem(su1,sy1)
mem(su1,c(sh,inter(sx,sy1))) mem(sh,sy1)
(15, 3 annavad: 118) mem(su1,inter(c(sh,sx),sy1)) su1=sh
mem(su1,sx)
(15, 14 annavad 139) mem(su1,c(sh,sx))
mem(su1,inter(sx,sy1)) mem(sh,sy1)
(67, 8 annavad: 160) mem(su1,sy1) mem(sh,sy1)
(160, 3 annavad: 175) mem(su1,sy1) mem(x,sy1)
mem(sh,c(x,y)) mem(sh,y)
(175 annab: 181) mem(su1,sy1) mem(sh,c(su1,x))
mem(sh,x)
344 17. Automaatne teoreemitestamine
(69, 160 annavad: 500) mem(su1,sy1)
mem(su1,c(sh,inter(sx,sy1)))
(500, 3 annavad: 508) mem(su1,sy1) su1=sh
mem(su1,inter(sx,sy1))
(508, 8 annavad: 534) mem(su1,sy1) su1=sh
(534, 181, 17 annavad: 560) mem(su1,sy1) mem(sh,x)
(560, 2 annavad: 568) mem(su1,sy1)
(568, 3 annavad: 576) mem(x,sy1) mem(su1,c(x,y))
mem(su1,y)
(139, 576 annavad: 798) mem(su1,inter(sx,sy1))
mem(sh,sy1) mem(su1,sx)
(798, 7 annavad: 835) mem(sh,sy1) mem(su1,sx)
(798, 6, 568 annavad: 846) mem(su1,inter(sx,sy1))
mem(sh,sy1)
(835, 5 annavad: 864) mem(sh,sy1) mem(su1,c(x,sx))
(450, 864, 568, 846 annavad: 736) mem(sh,sy1)
(4736, 1 annavad: 4740, 4739) inter(c(sh,x),sy1)=
c(sh,inter(x,sy1))
(118, 4740 annavad: 4748) mem(su1,c(sh,inter(sx,sy1)))
su1=sh mem(su1,sx)
(9, 4740, 568 annavad: 4751) mem(su1,c(sh,sx))
mem(su1,c(sh,inter(sx,sy1)))
(4748, 3 annavad: 4789) su1=sh mem(su1,sx)
mem(su1,inter(sx,sy1))
(4789, 7 annavad: 4793) su1=sh mem(su1,sx)
(4793, 4751, 17 annavad: 4813) mem(su1,c(sh,sx))
mem(su1,sx)
(4813, 4793, 17 annavad: 4876) mem(su1,sx)
(4876, 6, 568 annavad: 4891) mem(su1,inter(sx,sy1))
17.4. Niteid ja rakendusi 345
(4876, 5 annavad: 4899) mem(su1,c(x,sx))
(4891, 5 annavad: 4922) mem(su1,c(x,inter(sx,sy1)))
(4922, 4751, 4899 annavad thja disjunkti) vastuolu.
18. Loogiline
programmeerimine ja
Horni disjunktid
Programmeerimiskeeli ja -meetodeid saab klassitseerida mitmel
moel. Meie raamatu kontekstis sobib jaotada programmeerimis-
keeled kigepealt kahte gruppi.
Imperatiivsed keeled sobivad samm-sammult, kindlas jrjekorras
tidetavate algoritmide esitamiseks. Programmid kujutavad
endast arvutile antavate kskude jada. Tuntumad imperatiiv-
sed keeled on C, Basic, Pascal, Java, objektorienteeritud
keeled ja assemblerkeeled. Teoorias kasutatav Turingi masin
sobib puhtalt imperatiivse keele niteks.
Imperatiivsete keelte peamiseks eeliseks on arvuti tege-
vuse tpse kontrollimise ja suunamise vimaldamine, mis
enamasti tagab maksimaalse tkiiruse.
Miinusteks on programmeerimise suur tmahukus la-
henduskigu kik detailid tuleb ssteemile esitada ning
suured raskused programmide analsimisel, niteks opti-
meerimise, veritseerimise vi paralleliseerimise tarvis.
Deklaratiivsed keeled sobivad algoritmi esitamiseks kskude ja-
dast abstraktsemal viisil. Programmeerija ei pruugi alati
347
kiki algoritmi detaile kirja panna, vaid vib esitada ot-
sitava lahenduse kirjelduse ning juba programmi titmise
kigus otsustab ssteem automaatselt, mis viisil tpselt
lahendust otsida. Deklaratiivseteks keelteks vib arvata loo-
gilise programmeerimise keeled (niteks Prolog) ja mitu
funktsionaalset keelt (niteks Haskell). Teoorias kasutatav
lambda-arvutus on puhtalt funktsionaalse deklaratiivse keele
nide.
Deklaratiivsed keeled vimaldavad kirjutada enamikku prog-
ramme kiiremini ja mugavamalt kui imperatiivsed keeled
programmeerija ei pea kigi detailide eest hoolt kandma.
Tunduvalt lihtsam on ka programmide anals, niteks
programmi automaatsel kohandamisel paralleelarvutile, kus
programmi titmise juures ttab samaaegselt hulk protses-
soreid.
Peamiseks miinuseks on programmide viksem tkiirus
deklaratiivne programm ei pruugi kll alati aeglasem olla
kui imperatiivne, kuid on seda harilikult siiski. Phjuseks
on siin keele automaattranslaatori viksem intelligentsus
kogenud programmeerijaga vrreldes.
Mitte iga lesannet ei ole deklaratiivselt mugavam esitada
kui imperatiivselt mni lesanne sobib oma iseloomu poolest
imperatiivse paradigmaga, mni deklaratiivsega.
Reaalsed programmeerimiskeeled ei ole peaaegu kunagi puhtalt
imperatiivsed vi deklaratiivsed. Imperatiivset ja deklaratiivset
programmeerimisviisi tuleb ksitleda kui programmeerimise para-
digmasid. Konkreetsed programmeerimiskeeled kalduvad rohkem
kas hte vi teise paradigmasse, kuid puhtpragmaatilistel kaalut-
lustel ptakse konkreetsete keelte sisse ehitada vimalusi mitmest
paradigmast.
Ndisaegsed imperatiivsed keeled, niteks C, sisaldavad palju
deklaratiivse keele elemente, ning vastupidi: deklaratiivne keel
Prolog vimaldab soovi korral pris imperatiivse programmeeri-
misstiili kasutamist. Traditsioonilised funktsionaalsed keeled Lisp,
348 18. Loogiline programmeerimine ja Horni disjunktid
Scheme ja ML sisaldavad nii imperatiivseid kui deklaratiivseid
konstruktsioone.
Imperatiivsed keeled jaotatakse edasi protseduraalseteks (C,
Pascal jms.) ja objektorienteeritud keelteks (SmallTalk, Java jms.).
Pikemalt me imperatiivsetel keeltel ei peatu.
Deklaratiivsed keeled jaotatakse loogilise programmeerimise
keelteks (nide: Prolog), kus otsitavat lahendust kirjeldatakse loo-
gika keeles, ja funktsionaalse programmeerimise keelteks (nide:
Haskell), kus lahendust kirjeldatakse funktsioonide koguga ka
viimast saab tegelikult ksitleda kui teatud tpi loogikassteemi.
Peatki lejnud osas tutvustame pgusalt 1970. aastate algu-
ses leiutatud loogilise programmeerimise keelt Prolog, mille nimi
on lhend ingliskeelsest vljendist Programming in logic. Pro-
logi aluseks on inglise arvutiteadlase Robert Kowalski thelepanek,
et Horni reeglit
p q
1
, . . . , q
n
saab lugeda nii protseduraalselt:
Programmi p arvutamiseks tuleb arvutada tema alamprog-
rammid q
1
, . . . , q
n
,
kui ka deklaratiivselt:
Kui q
1
, . . . , q
n
on tesed, siis on ka p tene.
Siiski tuleb mrkida, et ei ole mtet samastada loogilist program-
meerimist ja Prologi. Resolutsiooni asemel vib programmeerimis-
keele aluseks olla ka mni teine loogika tuletusssteem. Ksimus
on ainult programmide kirjutamise mugavuses ning titmise efek-
tiivsuses.
Jrgneva materjali esituse juures eeldatakse varasemat tutvu-
mist automaatse teoreemitestamise peatkiga.
18.1. Prolog
Prolog on esimene ja kasutatavaim loogilise programmeerimise
keel. Prologile lisaks on vlja ttatud mitu uuemat loogilise
18.1. Prolog 349
programmeerimise keelt ja ssteemi, ning nende arendamine on
ulatuslik ja levinud uurimisteema. Siin piirdume ainult standardse
Prologi phimtete esitamisega. Tuleb arvestada, et Prologis pro-
grammeerimise ppimiseks kesoleva peatki mahust ei piisa.
Prologi phiidee on nuda otsitava lahenduse kirjeldamist esi-
mest jrku predikaatarvutuse keeles, kusjuures Prologi ssteem
sisaldab teatud tpi automaatset teoreemitestajat, mis on vime-
line automaatselt otsima ja tuletama lahendust.
Sellegipoolest ei ole Prolog siiski automaatse teoreemitesta-
mise ssteem: viimast realiseeriv mehhanism on Prologis vga
piiratud, spetsiiline ja loogiliselt mittetielik, s.t. loogika mttes
eksisteerivad lahendused vivad vahel leidmata jda.
Prolog on esmajoones programmeerimisssteem ning sobib
eriti hsti ekspertssteemide programmeerimiseks. Programmeeri-
jale antakse vimalus suunata Prologi automaatset teoreemites-
tajat nimetame seda edaspidi Prologi otsingumootoriks
nii, nagu programmist soovib. Prologi mootor otsib lahendust
lihtsa ning kindlalt mratud otsimismeetodiga mingisugust
programmeerijale ennustamatut omaloomingut Prologi mootorile
ei lubata.
Konkreetsemalt on Prologi mootori aluseks resolutsioonimee-
todi teatud mittetielik strateegia.
18.1.1. Horni disjunktid ja otsingumootor
Prologi programm on Horni disjunktide kogu. Horni disjunkt on
selline disjunkt, mis ei sisalda rohkem kui hte positiivset literaali.
Prologi kirjaviisi jrgi on kik suure algusthega snad dis-
junktides muutujad ning vikese algusthega snad kas konstandid,
predikaadid vi funktsioonismbolid. Prolog sisaldab konstantidena
ka numbreid ja snesid.
Prologi kontekstis jaotatakse kik programmi moodustavad
disjunktid ehk laused jrgmiselt.
Faktid on hestainsast positiivsest literaalist koosnevad disjunktid.
Niteks: isa(jaan,peeter).
350 18. Loogiline programmeerimine ja Horni disjunktid
Reeglid on hest positiivsest literaalist ja hest vi mitmest
negatiivsest literaalist koosnevad disjunktid.
Traditsiooniliselt kirjutatakse positiivne literaal disjunkti al-
gusesse, seejrel tuleb eraldussmbol :- ning lpuks ko-
madega eraldatud negatiivsed literaalid, mille eest eituse
smbol on ra jetud. Nagu fakti nii ka reegli lpetab
alati punkt. Eraldussmbolit :- vib lugeda kui vasakule
suunatud implikatsiooni: . Nitena toome isapoolse vana-
isareegli:
vanaisa(X,Z) :- isa(X,Y), isa(Y,Z).
Pringud on hest vi mitmest negatiivsest literaalist koosnevad
disjunktid.
Pring ei ole niivrd Prologi programmi osa kui otsingu
kivitamise ksk. Prologi ssteemi t sisuks on esitatud
pringule vastuse leidmine, kasutades varem antud faktide ja
reeglite andmebaasi. Korraga vib esitada vaid he pringu.
Kuna Prologis kirjutatud andmebaas ise puhtalt negatiivseid
disjunkte ei sisalda, siis ei saa Prologi keeles esitada otse
negatiivset informatsiooni, niteks, et keegi Mihkel ei ole
Peetri isa. Prologis programmeerimisel ksitletakse mitte-
tuletatavust kui eitust, kuigi loogika seisukohalt on need
kaks asjaolu tiesti erinevad. Prologi eituse-kontseptsiooni
nimetatakse suletud maailma eelduseks, s.t. tene on ainult
see, mida antud Prologi programmist (kui suletud maailmast)
tuletada saab.
Vaatleme esimese nitena jllegi sugulussidemete andmebaasi,
konkreetselt niisugust Prologi programmi:
isa(jaan,peeter).
isa(jaan,martin).
isa(martin,veiko).
isa(riivo,leo).
ema(leena,leo).
18.1. Prolog 351
vanaisa(X,Z) :- isa(X,Y), isa(Y,Z).
vanaisa(X,Z) :- isa(X,Y), ema(Y,Z).
Pringule, kas isa(riivo,martin) on antud andmebaasist
tuletatav, vastab otsingumootor eitavalt (?- alustab pringuid,
jrgmisel real trkitu on Prologi vastus):
?- isa(riivo,martin).
no
Lahendust otsib Prologi mootor jrgmiselt: kik andmebaasis
olevad laused vaadatakse jrjest lbi (esimesega alustades ja
viimasega lpetades) ning iga lause esimest literaali ptakse
pringuliteraaliga unifitseerida. Kui see ei nnestu, vastatakse
pringule eitavalt.
Pringule, kas isa(riivo,leo) on antud andmebaasist tule-
tatav, vastab otsingumootor jaatavalt:
?- isa(riivo,leo).
yes
Saime jaatava vastuse, kuna otsingumootor unitseeris pringuli-
teraali andmebaasis oleva faktiga isa(riivo,leo).
Pringud vivad sisaldada muutujaid: sellisel juhul leiab Pro-
logi mootor lahenduse, s.t. muutuja asemele substitueeritava termi:
?- isa(jaan,X).
X=peeter
Kui me ei ole rahul esimese leitud lahendusega, vime instrueerida
otsingumootorit uusi lahendusi otsima, s.t. pdma unifitseerida
pringut jrgmiste andmebaasis olevate lausetega. Selleks trkime
lahenduse jrele semikooloni, ning Prolog esitab kas jrgmise
lahenduse vi kui lahendusi enam pole vastab eitavalt.
?- isa(jaan,X).
X=peeter;
X=martin;
no
352 18. Loogiline programmeerimine ja Horni disjunktid
Mistagi pakub programmeerimise juures peamist huvi reeglite
rakendamine. Vaatame, kuidas reageerib otsingumootor pringule,
kas Jaan on kellegi vanaisa:
?- vanaisa(jaan,X).
Esimene andmebaasi lause, millega pringuliteraal unitseerub,
on reegel vanaisa(X,Z) :- isa(X,Y), isa(Y,Z). Kuna enne
unitseerimist on tarvis muutujad mber nimetada, nimetatakse
pringuliteraalis muutuja X mber muutujaks X1. Substitutsioo-
niks saame siis {X=jaan, Z=X1}. Reegel annab meile kaks
alamlesannet ehk alampringut
isa(jaan,Y), isa(Y,X1),
mis tuleb rahuldada. Otsingumootor asub jrjekorras esimesele
alampringule lahendusi otsima, vaadates selleks andmebaasi al-
gusest lpuni lbi samamoodi, kui oleks reageeritud kasutaja
antud pringule.
Esimene alampringuga isa(jaan,Y) unitseeritav lause on
fakt isa(jaan,peeter) ning substitutsiooniks saame Y=peeter.
Kuna tegu oli faktiga, siis uusi alampringuid ei teki ja jb le
lahendada saadud substitutsiooni rakendamise jrel konkretiseeri-
tud teine alampring isa(peeter,X1). See alampring aga ei
unitseeru hegi lausega meie andmebaasis.
Niisuguses olukorras prdub otsingumootor tagasi viimati
leitud lahenduse juurde, heidab selle krvale ja otsib andmebaasist
edasisi lahendusi. Viimase lahenduse saime esimese alampringu
isa(jaan,Y) unitseerimisel faktiga isa(jaan,peeter): nii-
siis heidab otsingumootor selle lahenduse krvale ning leiab
jrgmise lause, millega saab alampringut unitseerida. Sel-
leks on isa(jaan,martin), mis annab uueks substitutsiooniks
Y=martin. Jllegi, uusi alampringuid ei tekkinud ja jb le la-
hendada saadud substitutsiooni rakendamise jrel konkretiseeritud
teine alampring isa(martin,X1). See pringuliteraal unit-
seerub andmebaasis oleva faktiga isa(martin,veiko), andes
substitutsiooniks X1=veiko. Kuna rohkem lahendamist vajavaid
alampringuid ei ole, siis on esialgsele pringule vastus leitud ja
Prolog trkib:
18.1. Prolog 353
X=veiko
Vaatame edasi, mis juhtub, kui vastame lahendusele semi-
kooloni trkkimisega, s.t. uue lahenduse nudmisega. Prolog
reageerib viimase alampringu viimati leitud lahenduse kr-
valeheitmisega. Kuna viimast pringuliteraali isa(martin,X1)
ei saa unitseerida enam hegi fakti ega reegliga prast fakti
isa(martin,veiko), heidab otsingumootor krvale ka eelmisele
alampringule isa(jaan,Y) leitud lahenduse ning hakkab ot-
sima jrgmist. Kuna kski faktile isa(jaan,martin) jrgnev
lause pringuliteraaliga ei unitseeru, heidetakse taas krvale
jrjekorras viimane leitud lahendus, s.o. meie esialgse prin-
guga vanaisa(jaan,X) unitseeritud reegel vanaisa(X,Z)
:- isa(X,Y), isa(Y,Z). Jrgmisena saab pringuliteraa-
liga vanaisa(jaan,X) unitseerida emapoolse vanaisareeglit
vanaisa(X,Z) :- isa(X,Y), ema(Y,Z), mispeale saame kaks
alampringut isa(jaan,Y), ema(Y,X1). Kumbki esimese alam-
pringu lahendus (s.o. Y=peeter ja Y=martin) ei vimalda leida
lahendusi teisele alampringule. Kigi vimaluste ammendumise
jrel trkib ssteem meile eitava vastuse: no.
18.1.2. Lahenduste hesus
Resolutsioonimeetodit ksitlevas peatkis vaatlesime spetsiaalse la-
hendusliteraaliga lahenduste otsimise meetodit. Prologis kasutatav
meetod on sisuliselt lahendusliteraali kasutamisega ekvivalentne,
erinevus on vaid tehnilises teostuses. Lahendusi ksitledes juhti-
sime thelepanu asjaolule, et klassikalise loogika kasutamisel on
teatud pringutel ainult mittehesed lahendused. Niteks disjunk-
tide hulgast
(1) p(a) p(b)
(2) p(x) lahendus(x)
saab tuletada ainult mittehese lahenduse: lahendus(b) la-
hendus(a).
354 18. Loogiline programmeerimine ja Horni disjunktid
Erinevalt klassikalise loogika ldjuhust on kigil Prologis
esitatud pringutel alati hene lahendus, kuigi selliseid heseid
lahendusi vib pringul olla palju: phjuseks on Horni disjunktide
kasutamine. Prologis ei ole vimalik esitada niteks disjunkti
p(a) p(b), kuna see ei ole Horni disjunkt.
Suhteliselt lihtsalt saab nidata, et Horni disjunktidega piirdu-
mise korral langevad klassikaline ja intuitsionistlik loogika kokku.
Niisiis on iga Prologi otsingumootori leitud tuletus nii klassikali-
selt kui intuitsionistlikult korrektne.
lesanded
1. *Nidake, et lausearvutuse korral saab Horni disjunktide hulga
mittevasturkivust kontrollida polnomiaalse ajaga.
18.1.3. Loendid
Prolog lubab loendite ehitamiseks kasutada thja loendit [] ja
loendile elemendi lisamist ehk paarikonstruktorit, mida thistab
punkt. Loendile x elemendi h lisamisel saadud uus loend on
term .(h,x). heelemendiline, konstanti a sisaldav loend on
.(a,[]). Arvudest 1, 2 ja 3 koosnev loend esitatakse termina
.(1,.(2,.(3,[]))).
Mugavuse mttes lubab Prolog kasutada loendite jaoks ka
teistsugust kirjaviisi, mis otsingumootori kivitamise eel tlgitakse
programmeerija jaoks nhtamatult sisemiseks, paarikonstruktorit
kasutavaks kirjaviisiks.
Mugavamas kirjaviisis kirjutatakse loendi elemendid nurksul-
gude vahele: [a,b,c,c] on neljast konstandist koosnev loend.
[X|Y] thistab loendit, mille esimene element on X ja esimese
elemendi eemaldamise jrel allesjv loendi saba on Y.
Kirjutame nd programmi member, mis kontrollib, kas esi-
mene argument kuulub teiseks argumendiks olevasse loendisse:
member(X,[X|Z]).
member(X,[Y|Z]) :- member(X,Z).
Predikaati member defineerivad ks fakt ja ks reegel. Fakt tleb,
et kui X on loendi esimene element, siis on X loendi element.
18.1. Prolog 355
Reegel tleb, et kui X on loendi saba element, siis on ta loendi
element.
Vaatame, kuidas ksitleb Prolog pringut
?- member(10,[20,30,10,40]).
Pringuliteraal antud faktiga ei unitseeru, kll aga unitseerub
ta antud reegliga, andes alampringu member(10,[30,10,40]).
Viimane unitseerub jllegi ainult reegliga, andes alampringu
member(10,[10,40]), mis unitseerub faktiga. Rohkem alam-
pringuid ei olnud ja ssteem trkib positiivse vastuse: yes.
Teise nitena kirjutame programmi append, mis liidab kaks
loendit kokku. Predikaadi esimene ja teine argument on liidetavad
loendid ning kolmas argument on kokkuliitmise resultaat. Niteks
kehtib: append([a,b],[1,2,3],[a,b,1,2,3]).
append([],Z,Z).
append([X|Y],Z,[X|R]) :- append(Y,Z,R).
Jrgmine pring annab tpselt he lahenduse:
?- append([a,b],[c,d],L).
L=[a,b,c,d];
no
Predikaati append saab kasutada ka tagurpidisuunas: anname
ette juba kokkuliidetud loendi ja otsingumootor genereerib kik
vimalikud lhteloendid:
?- append(X,Y,[a,b,c,d]).
X=[], Y=[a,b,c,d];
X=[a], Y=[b,c,d];
X=[a,b], Y=[c,d];
X=[a,b,c], Y=[d];
X=[a,b,c,d], Y=[];
no
Predikaadi append tagurpidist funktsioneerimist saab kasutada
loendi kiki permutatsioone genereeriva predikaadi deneeri-
miseks:
356 18. Loogiline programmeerimine ja Horni disjunktid
permutation(L,[H|T]) :-
append(V,[H|U],L),
append(V,U,W),
permutation(W,T).
permutation([],[]).
?- permutation([a,b,c],X).
X=[a,b,c];
X=[a,c,b];
X=[b,a,c];
X=[b,c,a];
X=[c,a,b];
X=[c,b,a];
no
Viimase nitena deneerime efektiivset sorteerimisalgoritmi,
quicksorti realiseeriva predikaadi. Eeldame, et meil on antud
sorteerimisel kasutatavat jrjestust deneeriv predikaat suurem-
vordne(X,Y).
qsort([H|T],S) :-
split(H,T,A,B),
qsort(A,A1),
qsort(B,B1),
append(A1,[H|B1],S).
qsort([],[]).
split(H,[A|X],[A|Y],Z) :-
suuremvordne(A,H), split(H,X,Y,Z).
split(H,[A|X],Y,[A|Z]) :-
suuremvordne(H,A), split(H,X,Y,Z).
?- qsort([5,6,1,7,5,3,4,9,0],X).
X=[9,7,6,5,5,4,3,1,0]
18.1. Prolog 357
lesanded
2. Defineerige predikaat slowsort, mis genereerib loendi jrjesta-
miseks selle kikvimalikud permutatsioonid. Kuidas saab seda
programmi efektiivsemaks muuta?
3. Konstrueerige predikaat reverse, mis prab loendi elementide
jrjestuse ringi:
?- reverse([1,3,2],[2,3,1]).
18.1.4. Aritmeetika
Harilik tisarvude ja ujupunktarvudega aritmeetika on Prologi
sisse ehitatud. Arvutuste tegemiseks kasutatakse spetsiaalset pre-
dikaati is, mis analoogiliselt harilike programmeerimiskeeltega
leiab aritmeetikaavaldise vrtuse ja omistab selle muutujale:
?- X is 3+2.
X=5
?- X is 4*2, Y is X+X.
X=8, Y=16
Predikaadil is ei ole pris selget loogilist thendust, tegu on pigem
programmeerimise hlbustamiseks kasutatava spetsiaalmeetodiga.
Kui parempoolne argument on arvutatav aritmeetikaavaldis, on
is loogika mttes siiski korrektne: is realiseerib standardseid
aritmeetikareegleid, mis tkiiruse huvides ei ole Prologis avalikult
aksiomatiseeritud, vaid ssteemi sisse ehitatud.
Aritmeetikatehteid kasutame niteks faktoriaali arvutamiseks:
fact(0,1).
fact(N,R) :-
N > 1, N1 is N-1, fact(N1,R1), R is N*R1.
Selline programmeerimisstiil sarnaneb traditsioonilise imperatiivse
programmeerimisega. Prologi aritmeetikaoperaatorite spetsiifilise
iseloomu tttu saab faktoriaalipredikaati kasutada ainult hes
suunas: esimene argument peab olema arv.
358 18. Loogiline programmeerimine ja Horni disjunktid
?- fact(4,X).
X=24.
Prolog ei luba kirjutada faktoriaaliprogrammi loogika mttes
loomulikumal viisil:
fact(0,1).
fact(N,N*R1) :- N > 1, fact(N-1,R1).
Viimane reegel on kll sntaktiliselt korrektne, kuid Prolog ei ar-
vuta automaatselt aritmeetikaavaldiste vrtust: tarvis on kasutada
spetsiaalpredikaati is.
Nagu nidetest paistab, lubab Prolog aritmeetikaavaldiste juu-
res kasutada harilikku inkskuju, mis sisemiselt teisendatakse
standardseteks prekskujul termideks ja predikaatideks: 2+3 on
sisemises esituses +(2,3) ning X > 1 on seesama, mis >(X,1).
Prolog sisaldab predikaadile is sarnast predikaati =, mis
unifitseerib oma vasakpoolse argumendi parempoolsega, pdmata
seejuures arvutada parempoolse argumendi aritmeetilist vrtust.
Tuleb thele panna, et Prologi = ei ole teline vrduspredikaat.
Sisuliselt on ta aksiomatiseeritud ainult faktiga X=X ning ei
smmeetria, transitiivsus ega asendusreeglid pole selle predikaadi
jaoks aksiomatiseeritud.
18.1.5. Sisend/vljund
Peale aritmeetikaoperaatorite sisaldab Prolog veel muidki spet-
siaalsete loogikavliste omadustega operaatoreid ja predikaate.
Sisend/vljund-predikaadid vimaldavad kasutada Prologi teksti
trkkimisel, arvutigraaka, mngude jms. tpiliste programmee-
rimislesannete juures. Niteks trkib predikaat write vlja talle
argumendiks antud termi ja on seejrel kohe rahuldatud. Jrgmine
mittepeatuv programm trkib vlja tisarvude lputu rea:
arvurida(X) :-
write(X), X1 is X+1, arvurida(X1).
?- arvurida(1).
18.1. Prolog 359
18.1.6. Prologi mittetielikkus ja piiratud korrektsus
Nagu eldud, on Prologi otsimismootor ks resolutsioonimeetodi
mittetielik strateegia. Vaatame nidet, kus Prologi otsingumootor
tskeldub ja loogika mttes eksisteerivat lahendit ei leia. De-
neerime triviaalse predikaadi sama, mis kontrollib, kas esimene
argument on seesama, mis teine. Lisame deneerivale faktile veel
kommutatiivsusreegli:
sama(X,Y) :- sama(Y,X).
sama(X,X).
Kui nd esitada pring ?- sama(a,a), siis unitseerib ot-
singumootor pringu kigepealt reegliga, tekitades alampringu
sama(a,a), mille lahendamiseks kasutatakse jllegi reeglit, mis
tekitab taas sellesama alampringu jne. lpmatuseni. Erinevalt
tielikest resolutsioonimeetodi strateegiatest ei jua Prolog kunagi
faktini sama(X,X), mis annaks kohese positiivse lahenduse.
Lisaks mittetielikkusele ei ole hulk Prologi realisatsioone
ka loogika mttes korrektsed. Phjuseks on unitseerimisalgo-
ritmi lihtsustamine programmi tkiiruse huvides. Teatavasti ei
ole vimalik unitseerida muutujat sedasama muutujat sisaldava
funktsioonaaltermiga, niteks y ja f (y). Kuna muutuja sisaldu-
mise kontroll vtab aega, jtab mitu Prologi realisatsiooni selle
lihtsalt ra ning kitub jrgmiselt:
seesama(X,X).
katse :- seesama(Y,f(Y)).
?- katse.
yes
Programmeerijalt eeldatakse, et ta niisuguste olukordade tekkimist
lihtsalt ei vimalda. Sageli sisaldavad Prologi realisatsioonid llitit,
millega saab valida, kas ssteem kontrollib muutuja sisaldumist
vi ei.
Praktilise programmeerimise seisukohalt pole ei Prologi mitte-
tielikkus ega piiratud korrektsus oluliseks puuduseks.
360 18. Loogiline programmeerimine ja Horni disjunktid
18.1.7. Otsingu blokeerimine: likepredikaat
Prolog sisaldab spetsiaalset loogikavlist likepredikaati, millega
programmeerija saab otsingumootorit juhtida, blokeerides uute
lahenduste otsimist. Likepredikaati (inglise keeles cut) thistab
humrk ! ning seda kasutatakse jrgmistel juhtudel:
Programmeerija teab, et pringul saab olla vaid ks lahendus
ning uute lahenduste otsimine on mttetu: sel juhul suu-
rendab edasise otsingu blokeerimine programmi tkiirust,
kuid ei muuda saadavat tulemust.
Programmeerijale piisab hestainsast lahendusest.
Ainult esimene lahendus on korrektne, teised tuleb eli-
mineerida: sellisel juhul muudab likepredikaat programmi
sisu.
Esimese juhu niteks kasutame predikaati append.
append([],Z,Z).
append([X|Y],Z,[X|R]) :- append(Y,Z,R).
Oletame, et soovime appendi kasutada ainult sel juhul,
kui esimesed kaks kokkuliidetavat loendit on antud ja meid
huvitab nimelt kokkuliitmise resultaadi leidmine. Pringule
append([],[a,b,c],[a,b,c]) vastamisel kasutab otsingumoo-
tor esialgu fakti. Kui aga hiljem nutakse uute lahenduste otsimist,
pab otsingumootor kasutada reeglit, kuigi see alati ebannestub.
Lisame denitsiooni likepredikaadi:
append([],Z,Z) :- !.
append([X|Y],Z,[X|R]) :- append(Y,Z,R).
Esimese lahenduse leidmise juures lahendatakse nd likepredi-
kaat, mis keelab antud pringule uute lahenduste otsimise, teki-
tades olukorra, nagu poleks jrgmisi deneerivaid lauseid enam
olemas.
Likepredikaadiga moditseeritud append ei ole enam ka-
hesuunalise toimega. Pringule append(X,Y,[a,b,c]) leitakse
ainult esimene lahendus, kik edasised on blokeeritud:
18.1. Prolog 361
?- append(X,Y,[a,b,c]).
X=[], Y=[a,b,c];
no
Jrgmiseks vaatame programmi, mis arvutab kigi arvude
summa, alates hest kuni etteantud esimese argumendini:
summa(1,1) :- !.
summa(X,R) :- X1 is X-1, summa(X1,R1), R is R1+X.
Siin takistab likepredikaat definitsiooni teise lause ldjuhu
reegli ekslikku kasutamist baasjuhu jaoks. Tepoolest, kui
siin likepredikaati poleks, siis uute lahendite otsimisel pringule
summa(1,Y) kasutataks ldreeglit ja programm tskelduks!
Konkreetselt keelab likepredikaat uute lahenduste otsimist
talle eelnenud lauseosa jaoks, esimene, s.o. defineeritav literaal
kaasa arvatud. Nide:
p1(X,Y) :- p2(X), !, p3(Y).
p1(X,Y) :- p4(X).
p2(a).
p2(b).
p3(b).
p4(a).
p5(a).
p5(b).
?- p1(a,a).
no
?- p5(X), p1(X,X).
X=b;
no
?- p1(U,V).
U=a, V=b;
no
Esimese pringu puhul leitakse alampringu p2(X) jaoks lahendus
p2(a), kuid p3(a) jaoks lahendust pole. Likepredikaat keelab
uute lahenduste otsimise nii p2(X) kui ka p1(a,a) jaoks.
362 18. Loogiline programmeerimine ja Horni disjunktid
Teise pringu juures blokeeritakse samamoodi p2(X) ja
p1(a,a) teise lahenduse otsimine, kuid p5(X) teine lahendus
X=b annab uue alampringu p1(b,b), mille jaoks nnestub la-
hendada esimese reegli alampring p3(b).
Kolmanda pringu juures blokeeritakse prast esimese lahen-
duse leidmist edasiste lahenduste otsimine nii p2(X) kui ka
p1(U,V) jaoks.
Likepredikaadiga sarnane spetsiaaloperaator on not. Pring
not(P) on rahuldatud siis ja ainult siis, kui otsingumootor ei
suuda rahuldada pringut P. Vaatamata nilisele sarnasusele loogi-
lise eitusega on siin tegu hoopis millegi muuga, suletud maailma
eelduse kasutamisega. Harilikku loogilist eitust Prologi program-
mid sisaldada ei saa. Operaatorit not saab Prologis deneerida
selliste loogikavliste spetsiaalvahenditega:
not(P) :- call(P), !, fail.
not(P).
Esimeses lauses phjustab call(P) termi P esitamise pringuna,
ning fail on pring, mida rahuldada ei saa.
Kokkuvtteks. Likepredikaadi kasutamist saab soovi kor-
ral alati vltida, kuid enamasti muudab see programmeerimise
tunduvalt tmahukamaks tuleb lisada palju erijuhtude kont-
rolle ja programmid vhem efektiivseks. Likereegli sstemaa-
tilise rakendamisega on aga vimalik otsingumootor pea tielikult
blokeerida ning kasutada Prologi sisuliselt funktsionaalse program-
meerimiskeelena, milles lisaks on olemas ka mned imperatiivse
programmeerimise vahendid.
18.1.8. Smbolaritmeetika
Pisut suurema nitena kirjutame programmi, mis leiab avaldise
tuletise ja seejrel lihtsustab resultaati. Seejuures ei tegelda numb-
riliste avaldistega, vaid smbolkujul antud matemaatikavalemitega.
Tuletise leidmiseks kasutame jrgmisi tuntud reegleid:
dc/dx 0
18.1. Prolog 363
dx/dx 1
d(U)/dx (dU/dx)
d(U +V)/dx dU/dx +dV/dx
d(U V)/dx dU/dx dV/dx
d(c U)/dx c dU/dx
d(U V)/dx U dV/dx +V dU/dx
d(U
c
)/dx c U
c1
dU/dx
d(log
e
U)/dx U
1
dU/dx
Defineerime predikaadi d; esimesest argumendist vetakse tuletis
teise argumendi jrgi ning kolmas argument on resultaadiks olev
avaldis.
d(X,X,1) :- !.
d(C,X,0) :- atomic(C).
d(~(U),X,~(A)) :- d(U,X,A).
d(U+V,X,A+B) :- d(U,X,A), d(V,X,B).
d(U-V,X,A-B) :- d(U,X,A), d(V,X,B).
d(C*U,X,C*A) :-
atomic(C), not(C = X), d(U,X,A), !.
d(U*V,X,B*U+A*V) :- d(U,X,A), d(V,X,B).
d(U/V,X,A) :- d(U* ^(V,-1),X,A).
d(^(U,V),X,V*W* ^(U,V-1)) :-
atomic(V), not(C = X), d(U,X,W).
d(log(U),X,A* ^(U,-1)) :- d(U,X,A).
Kasutasime siin Prologi sisseehitatud spetsiaalpredikaati atomic,
mis on rahuldatud siis ja ainult siis, kui tema argumendiks on
konstant ehk atomaarne term, mitte aga funktsionaalterm. Nd
niteks:
364 18. Loogiline programmeerimine ja Horni disjunktid
?- d(x+1,x,X).
X=1+0
?- d(x*x-2,x,X).
X=x*1+1*x-0
Tuletise programmi resultaadid on lihtsustamata avaldised. Kir-
jutame predikaadi simp avaldiste lihtsustamiseks, mis kasutab
predikaadiga s moodustatud lihtsustamisreeglite andmebaasi:
simp(E,E) :- atomic(E), !.
simp(E,F) :-
E =.. [Op,La,Ra],
simp(La,X), simp(Ra,Y), s(Op,X,Y,F), !.
simp(E,F) :-
E =.. [Op,La,Ra],
simp(La,X), simp(Ra,Y), F =.. [Op,X,Y], !.
simp(E,E).
s(+,X,0,X).
s(+,0,X,X).
s(+,X,Y,Z) :- integer(X), integer(Y), Z is X+Y.
s(+,X,Y,X+Y).
s(*,X,0,0).
s(*,0,X,0).
s(*,1,X,X).
s(*,X,1,X).
s(*,X,Y,Z) :- integer(X), integer(Y), Z is X*Y.
s(*,X,Y,X*Y).
Prologi sisseehitatud spetsiaalpredikaat =.. lammutab suvalise
termi koostisosadeks, alustades funktsionaalsmbolist ja jtkates
argumentidega. Antud juhul lammutatakse ainult kahe argumendiga
terme. Spetsiaalpredikaat integer on rahuldatud ainult juhul, kui
argumendiks on arv. Defineerime lihtsustava tuletise-predikaadi ja
esitame talle uuesti lalesitatud pringud:
dsimp(X,Y,Z) :- d(X,Y,Z1), simp(Z1,Z).
18.1. Prolog 365
?- dsimp(x+1,x,X).
X=1
?- dsimp(x*x-2,x,X).
X=x+x-0
Lihtsustamispredikaadi tiustamiseks (niteks lahutamistehte jaoks)
tuleb lihtsalt lisada lauseid predikaati s defineerivasse andmebaasi.
lesanded
4. Kirjutage programm, mis koostab ja kontrollib jrgmise gramma-
tika lauseid:
<Sentence> ::= <Subject><Verbphrase>
<Subject> ::= John | Mary
<Verbphrase> ::= <Verb><Object>
<Verb> ::= eats | drinks | likes
<Object> ::= wine | cheese | soup | chips | beer | fruits | sh | juice
Niteks lausele Mary eats cheese vastab sntaksipuu
Sentence
Subject
Verbphrase
Verb Object
eats cheese Mary
5. Erinevad numbrid on asendatud erinevate thtedega. Lahendage
Prologi abil vrrand
SEND
+ MORE
MONEY
19. Funktsionaalne
programmeerimine ja
vrdusssteemid
Funktsionaalses keeles kirjutatakse programme (matemaatiliste)
funktsioonide defineerimise teel, mramata seejuures tpselt, mis
strateegia jrgi funktsiooni resultaati tuleb arvutada. Funktsioonile
vib anda argumendiks teisi funktsioone ja funktsiooni arvutamise
resultaadiks vib samuti olla funktsioon.
Defineerime niteks faktoriaali funktsiooni fakt ja funkt-
siooni map, mis rakendab oma esimest, funktsionaalset argumenti
teiseks argumendiks oleva loendi igale elemendile. Loend [h|t]
esitatakse sisemiselt kui harilik esimest jrku term .(h, t ).
fakt(x) = if x=0 then 1 else x*fakt(x-1).
map(f,[]) = [].
map(f,[h|t]) = [f(h) | map(f,t)].
Avaldise map(fakt,[3,5,0]) vrtuseks on [6,120,1].
Funktsionaalne programmeerimine on ajalooliselt esimene dek-
laratiivse programmeerimise viis ning enamik ndisaegseid pro-
grammeerimiskeeli C, Pascal, Ada jne. on funktsionaalse
programmeerimise meetoditest mjustatud.
Funktsionaalseid keeli saab jmedalt jagada kahte liiki: puhtad
ja ebapuhtad. Puhtas keeles Haskell, Hope, Miranda, FP
19.1. Deduktsioon ja reduktsioon: termiteisendusssteemid 367
ei ole programmeerijal peale funktsioonide deneerimise ja sis-
seehitatud baasfunktsioonide (aritmeetika, loendid jms.) mingeid
lisavahendeid kik krvalefektid on keelatud. Erinevalt im-
peratiivsetest keeltest, nagu C, Basic ja Pascal, ei luba puhas
funktsionaalne keel muutujatele vrtusi omistada. Ainus efekt,
mida funktsiooni rakendamine argumentidele annab, on resul-
taadi leidmine. Ebapuhtad funktsionaalsed keeled ML, Lisp,
Scheme kombineerivad puhaste funktsionaalsete keelte mehha-
nisme imperatiivsete mehhanismidega.
Jrgnevas ei tegele me konkreetsete funktsionaalsete keelte
ega neis programmeerimise meetoditega. Vaatleme hoopis funkt-
sionaalse programmeerimise teooria vundamendiks olevaid loogi-
kassteeme, nende phiprintsiipe ja -omadusi.
19.1. Deduktsioon ja reduktsioon:
termiteisendusssteemid
Funktsionaalseid programme saab ksitleda kui vga piiratud
loogikakeeles esitatud valemeid. Konkreetsemalt, funktsionaalne
programm on vaadeldav hulga ksikute vrdusliteraalide konjunkt-
sioonina. Nimetame sellist valemiklassi edaspidi vrdusssteemide
klassiks.
ks tpiline probleem, millest me oleme huvitatud, on
ksimus, kas mingist hikvrduste hulgast E jreldub kahe termi
t
1
ja t
2
vrdsus. ldjuhul saame niisuguse probleemi lahendada
ainult deduktsiooni teel, s.o. otsides termide vrduse tuletust.
Vaatame uuesti teoreemitestamise peatkis antud nidet rh-
mateooriast. Olgu R
=
rhma deneerivate vrduste hulk:
(1) 1 x = x
(2) x
1
x = 1
(3) (x y) z = x (y z)
Paremaks loetavuseks esitame vrdused harilikus matemaatilises
kirjaviisis. Predikaatarvutuse standardses kirjaviisis neb niteks
368 19. Funktsionaalne programmeerimine ja vrdusssteemid
vrdusreegel (2) vlja kui literaal =((inv(x), x), 1). Testame
taas, et R
=
(x x
1
= 1). Selleks teisendame vasakpoolse
termi x x
1
parempoolseks termiks 1. Teisenduse juures tuleb
vrdusreegleid 13 kasutada nii suunas vasakult paremale kui
paremalt vasakule.
Kirjutame teisendussammude vahele, millist reeglit ja mis
suunas rakendasime:
x x
1
1
=
1 (x x
1
)
2
=
((x
1
)
1
x
1
) (x x
1
)
3
=
(x
1
)
1
(x
1
(x x
1
))
3
=
(x
1
)
1
((x
1
x) x
1
)
2
=
(x
1
)
1
(1 x
1
)
1
=
(x
1
)
1
x
1
2
=
1.
Kuna vrdusreegleid tuleb rakendada mlemas suunas ja helgi
hetkel pole a priori selge, millist reeglit ja millisele alamtermile
just rakendada tuleb, on teisendusahela leidmine kllalt vaeva-
nudev ritus. Kui teisendusahelat ei eksisteeri (s.t. termid ei
ole vrdsed) siis ahela otsing ldjuhul ka ei peatu, s.t. meil ei
ole algoritmi, millega saaks alati lahendada ksimuse kahe termi
vrdsusest.
Ideaalis sooviksime vaevarikka deduktsiooni asemel ssteemis
R
=
kasutada meetodit, mis oleks kiire, lihtne ja alati peatuks,
s.o. lahendaks suvalise kahe termi vrdsuse ksimuse. Jrgne-
vas nitame, et ssteemi R
=
jaoks taoline meetod tepoolest
eksisteerib. Veel enam, analoogiline efektiivne lahendusalgoritm
eksisteerib mitte ainult ssteemi R
=
, vaid mitme teisegi (kuid
mitte kigi) vrdusssteemi jaoks.
Modifitseerime prooviks ssteemi R
=
, lubades teha teisendusi
ainult vasakult paremale. Saame hesuunaliste teisendusreeglitega
ssteemi R

:
19.1. Deduktsioon ja reduktsioon: termiteisendusssteemid 369
(1) 1 x x
(2) x
1
x 1
(3) (x y) z x (y z)
Definitsioon 19.1. Termiteisendusssteemiks, lhendatult TTS, ni-
metame vasakult paremale orienteeritud vrdusssteemi, kus iga
teisendusreegli jaoks kehtib: reegli vasakpoolne term sisaldab iga
muutujat reegli parempoolses termis.
Ssteem R

on termiteisendusssteem. Ka sel juhul saaksime


termiteisendusssteemi, kui reeglite 1 ja 3 vasakud pooled pare-
mate pooltega ra vahetada ainsana ei saa vahetada reegli 2
pooli (konstant 1 ei sisalda muutujat x).
Reegli l r rakendamiseks termile t unitseerime reegli
vasakpoolse termi l teisendatava termi t mingi alamtermiga g,
tingimusel, et g on termi l konkretisatsioon, s.t. unikaatori
jaoks g = l. Seejrel asendame termis t alamtermi g reegli
parempoolse termiga substitutsiooni all, s.o. r. Reegli raken-
damise samm on automaatse teoreemitestamise peatkis vaadel-
dud paramodulatsioonisammu erijuht: lubatakse ainult hepoolset
unitseerimist.
Nide. Reegliga (2) x
1
x 1 saab teisendada termi
(1
1
1) u kujule 1u, kuid termi (1
1
u) u teisendada ei saa:
ei leidu substitutsiooni , nii et (x
1
x) annaks termi (1
1
u).
Definitsioon 19.2. TTS on peatuv, kui ta ei luba hegi termi
jaoks ehitada lpmatut teisendusahelat.
On lihtne kontrollida, et ssteem R

on peatuv. Reeglid 1
ja 2 vhendavad termi suurust, reegel 3 jtab suuruse samaks,
kuid nihutab sulgusid alati paremale. Kontranide: kski reeglit
f (x) f (f (x)) sisaldav TTS ei ole peatuv.
Definitsioon 19.3. Term on normaalkujul, kui talle ei saa enam
rakendada htegi teisendust.
370 19. Funktsionaalne programmeerimine ja vrdusssteemid
Niteid ssteemi R

jaoks: termid x x
1
ja 1 on normaalku-
jul, term x (y
1
y) aga mitte, kuna reegliga 2 saab ta teisendada
(normaal)kujule x 1.
Intuitiivselt on selge, et otsitav termide t
1
ja t
2
vrdsuse la-
hendusmeetod viks vlja nha jrgmine: teisendame termid nor-
maalkujule (t
1
) ja (t
2
) ning kontrollime, kas (t
1
)
ja (t
2
) on sntaktiliselt samased. Kui jah, siis on termid
vrdsed, kui ei, siis nad ei ole vrdsed. Paraku ei vimalda
ssteemi R

poolt deneeritud normaalkuju sellist algoritmi ka-


sutada. Nimelt vib ssteemis R

hel termil olla mitu erinevat


normaalkuju: termi (y
1
y) x saab reeglitega 2 ja 1 teisen-
dada normaalkujule x, ning reegliga 3 teistsugusele normaalkujule
y
1
(y x).
Jrgnevas thistab x y asjaolu, et leidub teisendusahel
termist x termini y.
Definitsioon 19.4. TTS on kokkuvoolav, kui iga termi u jaoks
kehtib: kui eksisteerivad kaks termi x ja y, nii et u x ja u y,
siis eksisteerib term z, nii et x z ja y z. Teisisnu, kui termi
u saab teisendada lahku mitmele eri kujule, siis saab kik need
erikujud hekssamaks termiks kokku teisendada.
u
x y
z
Definitsioon 19.5. Olgu E vrdusssteem ja olgu S TTS. tleme,
et S on E suhtes korrektne, kui iga ssteemi S jaoks vimaliku
teisendussammu t
1
t
2
korral on vrdusssteemist E tuletatav
vrdus t
1
= t
2
.
Definitsioon 19.6. Olgu E vrdusssteem ja olgu S TTS. tleme,
et S on E suhtes tielik, kui iga ssteemist E tuletatava vrduse
19.1. Deduktsioon ja reduktsioon: termiteisendusssteemid 371
t
1
= t
2
jaoks eksisteerib selline term c, et ssteemis S kehtivad
t
1
c ja t
2
c.
Jrgmist kolme suhteliselt lihtsat, aga olulist lemmat peatuva
ja kokkuvoolava TTS kohta soovitame lugejal harjutamiseks ise
testada.
Lemma 19.7. Peatuva ja kokkuvoolava TTS jaoks on igal termil
a ks ja ainult ks normaalkuju, (a).
Lemma 19.8. Termi t normaalkuju leidmiseks peatuva ja kok-
kuvoolava TTS jaoks vib teisendusreegleid rakendada mistahes
jrjekorras ja mistahes alamtermidele: lpuks juame igal juhul
sellesama normaalkujuni.
Lemma 19.9. Olgu E

peatuv ja kokkuvoolav TTS. Olgu E


=
vrdusssteem, mis on saadud E

teisendusreeglite muutmisega
harilikeks vrdusteks. Siis on TTS E

vrdusssteemi E
=
jaoks
tielik.
Tielik, peatuv ja kokkuvoolav TTS E

annabki otsitava
lahendusalgoritmi vrduste jaoks:
1. Leiame ssteemi E

abil norm(a) ja norm(b).


2. Kui norm(a) on sntaktiliselt samane termiga norm(b), siis
ssteemis E
=
tuletub a = b, vastasel korral ei tuletu a = b.
Sooviksime saada sellist ssteemi R

modifikatsiooni R+

,
mis oleks R
=
jaoks korrektne ja oleks nii peatuv (seda on ka R

)
kui ka kokkuvoolav.
Esimene ksimus: kuidas testada, et mingi TTS R

on
kokkuvoolav? Ei ole ju vimalik kontrollida lpmatu hulga termide
kigi teisendatud kujude kokkuvoolavust. Peatuvate TTS-de jaoks
annab vastuse jrgmine Donald Knuthi ja Bendixi 1970. aastal
testatud fundamentaalne teoreem, mille esitame siin testuseta.
Enne teoreemi esitamist defineerime kriitilise paari miste.
372 19. Funktsionaalne programmeerimine ja vrdusssteemid
Definitsioon 19.10. Sisaldagu TTS R reegleid
1

1
ja

2

2
. Olgu
2
unitseeritav termi
1
mingi alamtermiga g.
Olgu unitseerimise tulemuseks substitutsioon . Termi
1
saab
siis teise reegliga teisendada, olgu resultaadiks term

1
. Selge,
et termi
1
saab ka esimese reegliga teisendada, olgu resultaa-
diks term

1
. Konstrueerime vrduse

1
=

1
. Viimast vrdust
nimetatakse kriitiliseks paariks.
Toome nite ssteemist R

. Kolmanda reegli (x y) z
x (y z) vasaku poole alamtermi (x y) saab unifitseerida teise
reegli v
1
v 1 vasakpoolse termiga. Saadud unifikaator on
{x/v
1
, y/v} ning ((x y) z) on (v
1
v) z. Konstrueeritud
termile (v
1
v) z saab rakendada teist reeglit, mis annab termi
1z. Term (v
1
v)z on ka kolmanda reegliga teisendatav, nimelt
termiks v
1
(v z). Kriitiline paar on seega v
1
(v z) = 1 z.
Kokkuvtteks: kriitilise paari saame juhul, kui he reegli
vasak pool on unifitseeritav teise reegli vasakus pooles sisalduva
alamtermiga. Niimoodi saame termi, mida on vimalik teisendada
kahe erineva reegliga, s.o. kahel viisil. Kui TTS on kokkuvoolav,
siis peab olema vimalik neid kahte teisendustulemust uuesti
heks termiks kokku teisendada. Selge, et igal lpliku arvu
reeglitega TTS-l on lplik arv kriitilisi paare. Knuthi-Bendixi
teoreem tleb, et peatuva TTS-i kokkuvoolavuse testamiseks pole
vaja kontrollida kiki vimalikke terme, piisab vaid kriitiliste
paaride kokkuvoolavuse kontrollimisest.
Teoreem 19.11 (Knuth-Bendix). Olgu S peatuv TTS. Kui ss-
teemi S iga kriitilise paari t

= t

jaoks eksisteerib term c, nii


et ssteemis S kehtib nii t

c kui t

c, siis on ssteem S
kokkuvoolav.
Kuna iga peatuva TTS-i kigi kriitiliste paaride kokkuvoolavust
saab algoritmiliselt kontrollida, annab Knuthi-Bendixi teoreem
efektiivse vahendi kokkuvoolavuse probleemi lahendamiseks.
Varasemas kontrollisime, et meie poolt nitena vaadeldav ss-
teem R

ei ole kokkuvoolav, ning pstitasime lesande leida


19.1. Deduktsioon ja reduktsioon: termiteisendusssteemid 373
kokkuvoolav R+

, mis oleks R
=
jaoks korrektne, seega tielik.
Knuthi-Bendixi teoreem annab Knuthi-Bendixi tielikustamisalgo-
ritmi, millega on esialgu mittetielikku TTS-i sageli vimalik
tiendada uute reeglitega, nii et kokkuvttes saadakse tielik TTS.
Knuthi-Bendixi algoritm:
1. Olgu S peatuv TTS. Olgu S

uus TTS, ning olgu ta esialgu


samane TTS-ga S.
2. Genereerime jrjest kik ssteemi S

kriitilised paarid
t

= t

. Iga paari jaoks leiame normaalkujud norm(t

)
ja norm(t

). Kui ssteemi S

jaoks ei ole norm(t

) ja
norm(t

) sntaktiliselt samased, siis pole paar kokkuvoolav,


mispuhul teeme jrgmist: kui t

on termiteisendusree-
gel ning S

{t

} on peatuv, siis lisame reegli t

ssteemi S

ja lheme tagasi sammu 2 algusse. Vastasel


korral kontrollime, kas t

on termiteisendusreegel ning
kas S

{t

} on peatuv. Kui jah, siis lisame reegli


t

ssteemi S

ja lheme tagasi sammu 2 algusse. Kui


kumbki juhtum ei kehti, peatub algoritm ebannestumisega.
3. Kui kik kriitilised paarid uues ssteemis S

on kokku-
voolavad, siis on S

tielik ja algoritm lpetab t, andes


resultaadiks ssteemi S

.
Peamine raskus Knuthi-Bendixi tielikustamisalgoritmi juures
on uue reegli lisamisel saadava ssteemi peatuvuse kontrollimine.
Oluline on ka kriitilisest paarist saadava reegli sobival viisil
orienteerimine (kui mlemad suunad on lubatavad). On vimalik,
et ebasobiva valiku korral peatub algoritm ebannestumisega,
samas, kui sobiva valiku korral oleks vimalik leida tielik
ssteem.
Tielikustamisalgoritmi saab mitmel moel optimeerida. Ni-
teks on lihtne veenduda, et iga teisendusreegli l r parempoolse
termi r saab asendada normaliseeritud termiga norm(r), kaota-
mata seejuures korrektsust vi tielikkust. Samuti vib kasutada
resolutsioonimeetodi juurest tuttavat neelamisstrateegiat: kui TTS
374 19. Funktsionaalne programmeerimine ja vrdusssteemid
sisaldab reegleid l r ning l

, nii et mingi substitutsiooni


jaoks reegel l

on samane reegliga (l r), vib reegli


l

midagi kaotamata krvaldada.


Vaatame kigepealt triviaalset nidet, kahest reeglist koosnevat
TTS-i:
{g(f (x)) x, f (a) b}.
On lihtne nha, et antud TTS on peatuv ning tal on ksainus
kriitiline paar, g(b) = a, mis on saadud termi g(f (a)) kahel viisil
teisendades. Leitud kriitilise paari mlemad pooled, g(b) ja a, on
normaalkujul ja ksteisest erinevad, seega ei ole kriitiline paar
kokkuvoolav. Lisame ssteemile reegli g(b) a. Uus kolmest
reeglist koosnev ssteem on samuti peatuv. Kuna kolmanda reegli
lisamine uusi kriitilisi paare juurde ei andnud, algoritm peatub ja
annab resultaadiks tieliku ssteemi
{g(f (x)) x, f (a) b, g(b) a}.
Jrgmiseks anname otsitud ssteemi R+

, mis on peatuv,
kokkuvoolav ja rhmateooria aksiomaatika R
=
jaoks tielik. Esi-
mesed kolm reeglit prinevad ssteemist R

, lejnud on lisatud
Knuthi-Bendixi tielikustamisalgoritmiga.
(1) 1 x x
(2) x
1
x 1
(3) (x y) z x (y z)
(4) x
1
(x z) z
(5) y 1 y
(6) (y
1
)
1
y
(7) 1
1
1
(8) y y
1
1
(9) y (y
1
x) x
19.1. Deduktsioon ja reduktsioon: termiteisendusssteemid 375
(10) (x y)
1
y
1
x
1
Niisiis on rhmateooria aksiomaatikast tuletatavate vrduste
jaoks deduktsioon asendatud reduktsiooniga ning kahe termi vrd-
suse ksimuse saab alati lahendada.
Tielikud TTS-d ei eksisteeri kaugeltki mitte kigi vrdus-
ssteemide jaoks. Piisab niteks vrduse x x = 1 lisamisest
rhmateooria aksiomaatikale R
=
ning lplikku ja tielikku TTS-i
enam ehitada ei saa. Ka hestainsast kommutatiivsest vrdusest
x y = y x koosneva ssteemi jaoks ei leidu tielikku TTS-i (ei
leidu ka peatuvat TTS-i). Spetsiilistel juhtudel, nagu kommuta-
tiivsuse ja assotsiatiivsuse esinemisel aksiomaatikas, saavutatakse
TTS-i peatuvus erivahenditega: aksioomidena esitamise asemel
saab kommutatiivsuse ja assotsiatiivsuse ehitada otse unitseeri-
misalgoritmi sisse.
Siiani uurisime peatuvate termiteisendusssteemide omadusi.
Samas on mitu programmeerimises ja arvutamise teoorias kasu-
tatavat TTS-i mittepeatuvad. Ka mittepeatuv TTS vib olla kok-
kuvoolav, nitena toome hest reeglist koosneva ssteemi a a
ning kahest reeglist ssteemi x a, a f (a).
Mittepeatuva TTS-i jaoks Knuthi-Bendixi teoreem ei kehti.
Kontraniteks toome konstante teisendava mittepeatuva ssteemi:
{a b, b a, a c, b d}.
Mlemad kriitilised paarid b = c ja a = d on kokkuvoolavad, vas-
tavalt termideks c ja d. Ssteem tervikuna ei ole aga kokkuvoolav:
a c ja a d, kuid c ja d on mlemad normaalkujul.
Lpetuseks tasub meenutada loogilise programmeerimise pea-
tkki, kus mainisime, et Horni lausetena antud valemite jaoks
langevad klassikaline ja intuitsionistlik loogika kokku. Kuivrd
harilik vrduse aksiomaatika koosneb Horni lausetest, siis lan-
gevad ka vrdusssteemide jaoks klassikaline ja intuitsionistlik
loogika kokku.
376 19. Funktsionaalne programmeerimine ja vrdusssteemid
19.2. Lambda-arvutus
Lambda-arvutuse keel on 1930. aastatel Alonzo Churchi leiuta-
tud lihtne ja universaalne meetod funktsioonide kirjapanekuks.
Lambda-arvutuse teooria tegeleb arvutatavuse ja arvutatavate
funktsioonide uurimisega, kasutades selleks lambda-arvutuse keelt
kui universaalset programmeerimiskeelt. Churchi tees vidab, et
iga algoritmi saab lambda-arvutuse keeles kirja panna. On vima-
lik nidata, et lambda-arvutus, nagu ka Prolog, C ja Basic on ks
paljudest universaalsetest programmeerimiskeeltest. Konkreetselt
on lambda-arvutuse keel ja teooria funktsionaalsete programmee-
rimiskeelte aluseks.
Esitame kigepealt informaalse sissejuhatuse.
ks harilikumaid praktikas kasutatavaid funktsioonide kirjapa-
neku viise on selline:
f (x) = x x + 1.
Funktsioon esitatakse, andes talle samas nime, konkreetses ni-
tes f . Lambda-arvutuses esitatakse funktsioone, vastupidi, kui
anonmseid, nimeta terme. sjatoodud nide on lambdakirjavii-
sis
x.x x + 1.
Lambdasmboli jrele kirjutatakse funktsiooni formaalseks pa-
rameetriks olev muutuja, seejrel punkt ja funktsiooni keha.
Parameetrit nimetatakse seotud muutujaks, analoogiliselt muutuja
sidumisele kvantoriga. Mitme formaalse parameetriga funktsioone
esitatakse mitme ksteise sees oleva heparameetrilise funktsioo-
nina: x.y.x x +y y.
Funktsiooni rakendamiseks kirjutatakse traditsioonilise f (3)
asemel (x.x x + 1)3 viimase vrtuseks on 10. Analoo-
giliselt annab ((x.y.x x + y y)2)3 vrtuseks 13. Lamb-
datermi rakendamisel asendatakse seotud muutuja termi kehas
termile antud argumendiga. Seotud muutujate asendamine ongi
lambda-arvutuse phiidee. Pisut keerukam termi rakendamise
ehk redutseerimise nide: ((f.f(f 2))(x.x x + 1)) annab
(x.x x + 1)((x.x x + 1)2) annab (x.x x + 1)(2 2 + 1)
19.2. Lambda-arvutus 377
annab (x.x x +1)5 annab 55+1 annab 26. Resultaat seejuures
asenduste tegemise jrjekorrast ei sltu.
Siirdume nd lambda-arvutuse formaalse esituse juurde.
Definitsioon 19.12. Lambdaterm on kas muutuja, konstant, raken-
dusterm (F, A) vi abstraktsiooniterm x.M, kus F, A ja M on
lambdatermid.
Edaspidises kirjutame rakendustermi (F, A) lihtsamalt: FA.
Definitsioon 19.13. Lambda-arvutuse annab ksainus fundamen-
taalne aksioomiskeem, -reduktsioon ehk lihtsalt reduktsioon:
(x.M)N = M[x := N],
kus M[x := N] thistab termi M prast muutuja x asendamist
termiga N.
Muutuja x olemasolu termis M ei ole kohustuslik. Muutuja x vib
aksioomiskeemis asendada mistahes muutujaga. Mingis termis
sisalduv lambdasmboliga seotud muutuja on vabalt mberni-
metatav. Muutuja mbernimetamine formuleeritakse vahel eraldi
-reduktsiooni reeglina.
Tuleb thele panna, et -reduktsioon ei ole otseselt esita-
tav esimest jrku vrdusena: tegu on nimelt aksioomiskeemiga.
Reduktsioonile lisaks kasutatakse standardset aksiomaatikat vr-
duspredikaadi aksiomatiseerimiseks (vaata niteks automaatse teo-
reemitestamise peatkki). Kui orienteerida reduktsioonireeglis
vrdus, saab lambda-arvutust vaadelda erilist tpi termiteisendus-
ssteemina.
Vahel lisatakse lambda-arvutusele teisigi reduktsioonireegleid,
kuid nende olemasolu vi puudumine ei muuda arvutuse phi-
omadusi.
Reduktsiooni rakendamisel tuleb prata thelepanu seotud ja
vabadele muutujatele: asendatakse ainult vabu muutujaid. Niteks
yx(x.x)[x := N] = yN(x.x), kuna alamtermis (x.x) on
muutuja x seotud. ldjuhul tuleb muutujanimede sassimineku
378 19. Funktsionaalne programmeerimine ja vrdusssteemid
vltimiseks seotud muutujad enne asendussammu tegemist mber
nimetada.
Vaadeldes lambda-arvutust termiteisendusssteemina, mrkame
kigepealt, et lambda-arvutus ei ole peatuv. Thistame rakendus-
termi (x.xx)(x.xx) thega . Term redutseerub he sam-
muga uuesti iseendaks, vimaldades seega ehitada lputu redukt-
siooniahela. Vaatame nd rakendustermi ((x.y.x)(x.x)) ja
pame seda redutseerida normaalkujule. Alustades redutseerimist
argumentidest (seestpoolt vljapoole) nagu harilikes programmeeri-
miskeeltes tavaks, peame kigepealt normaalkujule viima termi ,
kuid sel termil normaalkuju puudub, seega satume lpmatule
reduktsiooniahelale. Alustades redutseerimist, vastupidi, tervest
termist, s.o. vljastpoolt sissepoole ehk vasakult paremale, saame
termi ((y.(x.x)) ning jrgmisena (x.x), mis on normaal-
kujul. Meie nites ei viinud seestpoolt vljapoole redutseerimine
normaalkujule, kll aga leidsime normaalkuju vljastpoolt sis-
sepoole redutseerides. Nide illustreeris jrgmist Haskell Curry
testatud teoreemi.
Definitsioon 19.14. Redeks on rakendusterm, mille vasakpoolne
argument on abstraktsiooniterm.
Redeks on niteks ((x.x)y), aga mitte (xx) vi (((x.x)y)y).
Teoreem 19.15 (normaliseerimine). Kui lambdatermil M on nor-
maalkuju, siis alati kige vasakpoolsemat redeksit eelistav redut-
seerimisstrateegia juab normaalkujuni.
Esitame he suhteliselt lihtsama teoreemi koos testusega:
Teoreem 19.16 (psipunktiteoreem).
1. Iga lambdatermi F jaoks eksisteerib lambdaterm X, nii et
FX = X.
2. Psipunktifunktsioonil f.(x.f (xx))(x.f (xx)) nimega Y
on jrgmine omadus: iga lambdatermi F jaoks kehtib
F(YF) = YF, s.t. Y arvutab termi psipunkti.
19.2. Lambda-arvutus 379
Testus.
1. Olgu W term x.F(xx). Termiks X vtame WW. Tepoo-
lest, WW = (x.F(xx))W = F(WW).
2. Kasutame eelmist punkti, pannes thele, et YF =
(x.F(xx))(x.F(xx)), mis on samane termiga X.
Lambda-arvutuse kige fundamentaalsem teoreem on Alonzo
Churchi ning Barkley Rosseri testatud kokkuvoolavuse teoreem:
Teoreem 19.17 (Church-Rosser). Lambda-arvutus on kokkuvoo-
lav TTS, s.t. iga lambdatermi M jaoks kehtib: kui eksisteerivad
kaks termi A ja B, nii et M A ja M B, siis eksisteerib term
C, nii et A C ja B C.
Kokkuvoolavuse teoreemist jreldub muu hulgas, et igal nor-
maalkujuga lambdatermil on ksainus normaalkuju. Kuna lambda-
arvutus ei ole peatuv, siis ei jreldu kokkuvoolavusest termide
vrdsuse probleemi lahenduvus. Saab nidata, et ei eksisteeri uni-
versaalset lahendavat algoritmi ksimuse jaoks, kas mingi vrdus
t = t

on lambda-arvutuses tuletatav.
Jrgmiseks nitame, kuidas esitada lambda-arvutuses mitte-
triviaalseid programme. Kigepealt tuleb rhutada, et puhta, li-
sanditeta lambda-arvutuse selline kasutamine ei ole praktilise
programmeerimise seisukohalt ratsionaalne. Lambda-arvutusel ba-
seeruvad funktsionaalse programmeerimise keeled sisaldavad peale
puhta lambda-arvutuse veel muid konstruktsioone ja vahendeid,
niteks arve, aritmeetikat, loendeid jms., mis muudavad program-
mid efektiivseteks ja mugavalt kirjapandavateks. Meie eesmrk
on demonstreerida, et selliseid praktilisi lisakonstruktsioone on
teoreetiliselt vimalik esitada puhta lambda-arvutuse vahenditega.
Terviklikku formaalset tielikkuse testust me siinkohal ei esita.
Tisarvude esitamise skeem Churchi jrgi:
0: f.x.x
1: f.x.f x
380 19. Funktsionaalne programmeerimine ja vrdusssteemid
2: f.x.f (f x)
3: f.x.f (f (f x))
ldiselt n: f.x.f
n
x
Rosseri esitatud peamised aritmeetikafunktsioonid, meldud
Churchi jrgi kodeeritud arvudele rakendamiseks:
+: x.y.p.q.(xp)((yp)q)
*: x.y.z.x(yz)
: x.y.yx
Toodud aritmeetikafunktsioonide esimesed kaks parameetrit on
sisulised: neid kasutatakse arvutamise juures redutseerimisel. le-
jnud parameetrid jvad resultaadi komponentideks.
Niteks: ( 2)2 = ((x.y.yx)2)2 = (y.y2)2 = 2 2 =
(f

.x

.f

(f

))2 = (x

.2(2 x

)) = (x

.x.(2 x

)((2 x

)x)) =
(x

.x.x

(x

((2 x

)x)) = (x

.x.x

(x

(x

(x

x)))) = 4.
Loogilised tevrtused tsi ja vr, harilik programmeeri-
miskonstruktsioon if B then P else Q ning predikaat null
thendusega x vrdub arvuga 0 on suhteliselt lihtsalt esitatavad:
tsi: x.y.x
vr: x.y.y
if B then P else Q: (BP)Q
null: x.((x (y.z.vr)) (x.x)) tsi
Harilikes programmeerimiskeeltes kasutatakse rekursiivsete
funktsioonide deneerimise juures funktsiooni nime. Niteks fak-
toriaali denitsiooni
fakt(x) = if x=0 then 1 else x*fakt(x-1)
kehas kasutatakse defineeritavat nime fakt. Lambda-arvutuses aga
funktsioonidel nime ei ole. Kuidas sellises olukorras rekursiivseid
funktsioone defineerida?
19.2. Lambda-arvutus 381
Lahenduseks on psipunktiteoreemi testuses toodud psi-
punktifunktsiooni Y kasutamine. Meenutame, et funktsioonil Y on
jrgmine omadus: iga termi F jaoks kehtib F(YF) = YF. Psi-
punktifunktsiooni kasutamise skeem on jrgmine. Olgu rekursiivne
funktsioon f deneeritud kui f (x) = M, kus M vib sisaldada
nime f . Asendame denitsiooni lambdatermiga (Y f.x.M),
muutes funktsiooni nime seotud muutujaks ja rakendades termile
psipunktifunktsiooni.
Thistame thega F faktoriaali definitsioonist saadud termi
fakt.x.if x = 0 then 1 else x (x 1).
Faktoriaali funktsiooni defineerime kui rakendustermi (YF).
Saadud faktoriaalifunktsiooni (YF) niteks arvule 4 rakenda-
des saame seestpoolt vljapoole redutseerides ehitada mittepeatuva
teisendusahela
(YF)4 = (F(YF))4 = (F(F(YF)))4 = . . .
Normaalkujuga termide jaoks garanteeritult peatuvat vljast-
sissepoole-, vasakult-paremale-reduktsioonistrateegiat kasutades
aga teisendusahel peatub, andes normaalkuju, mis ongi fakto-
riaali arvutamise resultaadiks:
(YF)4 =
F(YF)4 =
( .x.if x = 0 then 1 else x (x 1))(YF)4 =
(x.if x = 0 then 1 else x (YF)(x 1))4 =
if 4 = 0 then 1 else 4 (YF)(4 1) =
4 (YF)3 =
4 F(YF)3 =
. . .
4 3 (YF)2 =
. . .
4 3 2 (YF)1 =
. . .
382 19. Funktsionaalne programmeerimine ja vrdusssteemid
4 3 2 (YF)0 =
4 3 2 1 =
24.
19.3. Kombinatoorne loogika
Lambda-arvutuse reduktsioonimehhanismil on puudusi:
-reduktsiooni aksioom ei ole esimest jrku vrdus.
-reduktsiooni sammu alustades peab seotud muutujad m-
ber nimetama, vltimaks muutujate omavahel sassiminekut.
Mainitud puudustest on vaba lambda-arvutusega analoogi-
line, peamiselt teoorias kasutatav programmeerimiskeel, kombina-
toorne loogika, mille 1920. ja 1930. aastatel leiutasid Curry ja
Schnfinkel.
Kombinatoorne loogika on kahe vi kolme rmiselt lihtsa
vrdusega esitatav esimest jrku aksiomaatika, mis sisaldab kons-
tante K, S ja I ning kahekohalist rakendusfunktsiooni (F, M),
mida edaspidi kirjutame parema loetavuse huvides kujul F M.
(1) ((S x) y) z = (x z) (y z)
(2) (K x) y = x
(3) I x = x
Konstant I on deneeritav kui term (S K) K ning kolmas
vrdus on seepeale tuletatav kahest esimesest. Kombinatoorse loo-
gika esitamiseks piisab seega kahest esimesest vrdusest, kolmas
vetakse aksiomaatikasse mugavuse mttes.
Kui orienteerida kombinatoorse loogika aksiomaatika vrdused
13 termiteisendusreegliteks, saame mittepeatuva, kuid kokkuvoo-
lava ja tieliku TTS-i. Analoogiliselt lambda-arvutusega ei eksis-
teeri universaalset lahendavat algoritmi ksimuse jaoks, kas vrdus
t = t

on kombinatoorse loogika aksioomidest tuletatav.


19.3. Kombinatoorne loogika 383
Kombinatoorne loogika ei piirdu ainult sja toodud kolme
konstandi defineerimisega. Sageli on kasulik tuua lisaks teisigi
kombinaatoreid.
Definitsioon 19.18. Kombinaatoriks nimetame konstanti c, mille
jaoks on antud termiteisendusreegel kujul
(. . . ((c x
1
) x
2
) . . .) x
n
M,
kus M on term, mis vib sisaldada ainult konstante, muutujaid
x
1
, . . . , x
n
ja rakendusfunktsiooni .
Iga lambda-arvutuse termi saab teisendada kombinatoorse loo-
gika termiks. Esitame teisendusalgoritmi, deneerides selleks tei-
sendusfunktsioonid C ja A. Teisendusfunktsioonide argumendid
on antud nurksulgudes, e thistab suvalist lambdatermi, x ja
v thistavad muutujaid ning c thistab konstante. A esitab nn.
abstraktsioonialgoritmi, mis on otseselt esitatud substitutsiooni-
mehhanismiga analoog lambda-arvutuse -reduktsioonile.
C[(e
1
e
2
)] = C[e
1
] C[e
2
]
C[(x.e)] = A[x, C[e]]
C[v] = v
C[c] = c
A[x, (e
1
e
2
)] = (S A[x, e
1
]) A[x, e
2
]
A[x, x] = I
A[x, v] = (K v), kui x = v
A[x, c] = (K c)
Jrgmise fundamentaalse teoreemi soovitame lugejal ise tes-
tada:
384 19. Funktsionaalne programmeerimine ja vrdusssteemid
Teoreem 19.19 (substitutsioon). Kombinatoorse loogika TTS-i
jaoks kehtib
(A[x, M] N) M[x := N],
kus A[x, M] on abstraktsioonialgoritmi rakendamise resultaat
muutujale x ja termile M. N ja M on esimest jrku termid
ja M[x := N] thistab termi M prast muutuja x asendamist
termiga N.
Seega saab prast lambdatermi teisendust kombinatoorsesse
loogikasse kasutada -reduktsiooni asemel kombinatoorse loogika
esimest jrku termiteisendusreegleid. Viimaste rakendamise juures
pole vaja pidevalt muutujaid mber nimetada.
Nide. Teisendame lambdatermi ((x.(+ x)x) 3) kombinatoor-
sesse loogikasse:
C[((x.(+ x)x)3)] annab
C[(x.(+ x)x)] C[3] annab
C[(x.(+ x)x)] 3 annab
A[x, C[(+ x)x]] 3 annab
A[x, C[(+ x)] C[x]] 3 annab
A[x, (C[+] C[x]) C[x]] 3 annab kolme sammuga
A[x, (+ x) x] 3 annab
((S A[x, (+ x)]) A[x, x]) 3 annab
((S A[x, (+ x)]) I) 3 annab
((S ((S A[x, +]) A[x, x])) I) 3 annab
((S ((S A[x, +]) I)) I) 3 annab
((S ((S (K +)) I)) I) 3.
Saadud termi ((S ((S (K +)) I)) I) 3 teisendame
kombinatoorse loogika reeglitega normaalkujule:
((S ((S (K +)) I)) I) 3 annab
(((S (K +)) I) 3) (I 3) annab
(((S (K +)) I) 3) 3 annab
(((K +) 3) (I 3)) 3 annab
(((K +) 3) 3) 3 annab
(+ 3) 3.
Lpuks saime sama termi, mille oleksime saanud esialg-
set lambdatermi normaalkujule viies. Harjutuseks soovitame otsida
19.3. Kombinatoorne loogika 385
termi, millel normaalkuju puudub ning deneerida lambda-arvutuse
psipunktifunktsiooni Y vaste kombinatoorses loogikas.
Kombinatoorse loogika jaoks kehtivad kik varem esitatud
teoreemid lambda-arvutuse kohta: psipunktiteoreem, normalisee-
rimisteoreem ja Churchi-Rosseri teoreem.
Pnevatele teoreetilistele vimalustele vaatamata vib kombi-
natoorne loogika nida praktiliseks kasutamiseks liiga kohmakas
ja ebaefektiivne. See ei ole priselt nii: niteks on praktikas
kasutatava funktsionaalse programmeerimiskeele Miranda jaoks
realiseeritud optimeeriv kompilaator, mis teisendab programmid
laiendatud kombinatoorsesse loogikasse, s.o. laltoodud konstan-
did ja reeglid pluss ca kmme lisakombinaatorit viimaste
ainus eesmrk on arvutamiskiiruse suurendamine. Uuemad puhtalt
funktsionaalsete keelte niteks Haskell kompilaatorid tei-
sendavad programmi superkombinaatoriteks, s.o. mitte etteantud,
kseeritud hulgaks kombinaatoriteks, vaid uute, antud programmi
jaoks sobivate kombinaatorite hulgaks. Kompileeritud programmi
titmine thendab termi normaalkujule teisendamist.
lesannete vastused
2.4.1. Teise kehtivuse denitsiooni tesusest jreldub esimese denit-
siooni tesus (sest tene jreldus ei saa olla vr). Seeprast vib pi-
dada esimest kehtivuse denitsiooni teisest ldisemaks. (Kahjuks muu-
dab vimalikkuse modaalsuse kasutamine sellest arusaamise raskeks.)
3.2.5. Videt p q loetakse p siis ja ainult siis, kui q. Me
saame selle lause jagada kaheks osaks: p siis, kui q ja p ainult
siis, kui q, ning avaldada nad implikatsiooni ja eituse kaudu:
q p p siis, kui q q p
kui q, siis p
q on p jaoks piisav
p q p ainult siis, kui q q p
q on p jaoks tarvilik
kui p kehtib, siis peab kehtima ka q p q
3.3.1. Eesti keele lause on kas lihtlause vi liitlause. Lihtlaused jagu-
nevad laiendamata lihtlauseteks ja laiendatud lihtlauseteks. Laiendamata
lihtlause koosneb alusest ja eldisest. Laiendatud lihtlause koosneb ni-
teks alusest, eldisest ja sihitisest. Liitlaused on pimlaused ja kiillau-
sed jne. jne.
3.3.3. c) Vrtustustel A = B = C = v ja A = C = v, B = t on
valemite (A B) C ja A (B C) tevrtused erinevad.
3.6.4. Asendades kehtivas arutluses lausemuutujad metamuutujatega,
388 lesannete vastused
saame kehtiva arutlusvormi, kusjuures esialgne arutlus on saadud arut-
lusvormi erikuju.
3.8.2. b) (B G) (G B); c) ((E
1
E
2
E
3
) B & C)
(D A).
4.2.1. a) x (Vx Mx); d) xy Axy; g) xy Axy Ajj.
4.4.1. Vihje: kasutage vrduspredikaati.
4.7.2. a) xy (Ix & Ky Vxy); e) x (Ix & y (Ky & Vxy)).
4.11.3. a) xy (x +y = y +x); b) xyz (x +y = z (zx = y)&
(zy = x)); d) xyz (xy = z (x = 1 z = y)&(y = 1 z = x)).
5.1.1. X & Y & Z X & Y & Z.
6.4.1. Valemite hulga
{xy Pxy, x Pxx, xy (Pxy Pyx)}
tesuspuu on avatud, kuid selles ei ole lplikku avatud lpetatud haru.
Selle lausete hulga mudeliks on niteks interpretatsioon ; <.
7.2.1. Vide kehtib atomaarsete valemite korral, sest nad on iseen-
daga identsed. Ta kehtib ka induktsiooni sammu korral, sest konjunkt-
sioon ja disjunktsioon on tesed, kui nende argumendid on tesed. J-
relikult kehtib vide selle baasi kigi valemite korral.
9.2.3. Vihje: kasutage smbolite ASCII-tabelit.
11.3.1. Vihje: teooria, millel pole mudelit, on vasturkiv; vasturki-
vas teoorias saab aga tuletada vastuolu.
11.5.1. Niteks Px
def
= x on termin ja Qx
def
= x on magus.
12.2.1. Vihje: vtke viteks p suvaline kontingentne lause.
12.3.2. |=
S5
(p p), sest p peab olema paratamatult kas tene vi
vr; |=
S5
p p aga ei kehti, sest p ei tarvitse olla kas paratama-
tult tene vi paratamatult vr. Ta vib niteks olla kontingentne.
12.5.1. Vihje: deneerige interpretatsioonid I ja I

nii, et U
I
=
I
= {w
1
, . . . , w
n
}, w
i
[A] = t w
i
[A] ja vabad muutujad asenda-
takse tegeliku maailmaga w

I

I
.
lesannete vastused 389
12.5.2. Vihje: jagage predikaatide ekstensioonid ekvivalentsiklassi-
desse.
14.2.2. Olgu [A] = [A B] = 1. Implikatsiooni semantika phjal
saame vrduse 1 (1 [B]) = 1. Jrelikult [B] = 1.
15.7.1. Kirjeldame vaikimisiteooria
W =

Tartu_tnav(x) tee(x)
Tartu_tnav(x) viib_Rooma(x)
Tartu_tnav(likooli_tnav)
D =

tee(x) : viib_Rooma(x)
viib_Rooma(x)
Selles teoorias saab modus ponensiga tuletada vite
viib_Rooma(likooli_tnav).
16.6.3. Lihtsustamis- ja idempotentsusreeglid
A B A,
A A A
ei kehti keemiliste reaktsioonide korral, sest aatomite hulgad peavad
enne ja prast reaktsiooni olema samad.
17.2.1. Minu kass sb mind.
17.2.2. Kui draakon on nljane, siis ta ktib. Kui draakon on vsinud,
siis ta magab. Draakon ei saa olla korraga nljane ja vsinud.
17.2.4.
x
2
= g(x
1
, x
1
),
x
3
= g(g(x
1
, x
1
), g(x
1
, x
1
)),
x
4
= g(g(g(x
1
, x
1
), g(x
1
, x
1
)), g(g(x
1
, x
1
), g(x
1
, x
1
))),
. . .
x
n
= g(g(. . . g(x
1
, x
1
) . . .), g(. . . g(x
1
, x
1
) . . .)).
18.1.1. Vihje: pdke igal jrgneval hulga lbimisel muuta teseks
vhemalt ks vaadeldava hulga disjunktidest.
Kirjandus
Sissejuhatus
Loogika ajalugu:
J. Bochenski. A history of formal logic. University of Notre Dame
Press, 1951.
J. van Heijenoort. From Frege to Gdel. Harvard University Press,
1967.
W. Kneale, M. Kneale. The development of logic. Clarendon Press,
1962.
Loogikafilosoofia:
M. A. Boden (toim.). The philosophy of articial intelligence. Oxford
University Press, 1990.
D. Gabbay, F. Guenthner (toim.). Handbook of philosophical logic.
Kluwer, 19831989.
S. Haack. Philosophy of logics. Cambridge University Press, 1978.
G. Polya. Kuidas lahendada lesannet. Tallinn, 1967.
W. V. O. Quine. Philosophy of logic. Prentice-Hall, 1970.
S. Read. Thinking about logic: an introduction to the philosophy of
logic. Oxford University Press, 1995.
B. Russell. Uurimus thendusest ja test. Tallinn, 1995.
G. H. von Wright. Minerva kull. Tallinn, 1996.
Kirjandus 391
I Klassikaline loogika
Eestikeelsetes formaalloogika pikutes ksitletakse philiselt
traditsioonilist sllogistlikku loogikat:
E. Grauberg. Loogika, keel ja mtlemine. Tallinn, 1996.
I. Meos. Loogika. Argumentatsioon. Mtlemiskultuur. Tallinn, 1996.
A. Prl. Otsustuspetus hes sissejuhatusega viteloogikasse ja
formaalloogilised mtlemisseadused. Tartu, 1970.
G. Vuks. Formaalse loogika ehk ige mtlemise alused. Tartu, 1992.
Ingliskeelsed pikud:
J. Allwood, L.-G. Andersson, . Dahl. Logic in linguistics. Cambridge
University Press, 1977.
M. Bergmann, J. Moor, J. Nelson. The logic book. McGraw-Hill,
1990.
G. Forbes. Modern Logic: a text in elementary symbolic logic. Oxford
University Press, 1994.
W. Hodges. Logic. Pelican, 1977 (Penguin, 1991).
J. Lyons. Linguistic semantics: an introduction. Cambridge University
Press, 1996.
T. J. McKay. Modern formal logic. Macmillan, 1989.
B. H. Partee, A. T. Meulen, R. E. Wall. Mathematical methods in
linguistics. Kluwer, 1990.
II Matemaatiline loogika
Eestikeelsed pikud:
I. Kull. Matemaatiline loogika. Tallinn, 1964.
J. Penjam. Loogika arvutiteaduses. Tallinn, 1995,
[greta.cs.ioc.ee/pub/CompLog/].
J. Penjam. Teoreetiline informaatika III. Tallinn, 19931995,
[greta.cs.ioc.ee/pub/TeorInf/].
392 Kirjandus
R. Prank. Matemaatiline loogika ja diskreetne matemaatika IIII.
Tartu, 19781983.
Ingliskeelsed pikud:
M. Ben-Ari. Mathematical logic for computer science. Prentice-Hall,
1993.
A. G. Hamilton. Logic for mathematicians. Cambridge University
Press, 1988.
S. C. Kleene. Introduction to metamathematics. Van Nostrand, 1952.
S. C. Kleene. Mathematical logic. John Wiley & Sons, 1967.
E. Mendelson. Introduction to mathematical logic. Van Nostrand,
1964.
A. Nerode, R. A. Shore. Logic for applications. Springer-Verlag, 1993.
C. H. Papadimitriou. Computational complexity. Addison Wesley, 1994.
W. V. Quine. Mathematical logic. Cambridge University Press, 1951.
J. R. Shoenfield. Mathematical logic. Addison Wesley, 1967.
Algoritmiteooria ja rekursiooniteooria pikud:
G. S. Boolos, R. C. Jeffrey. Computability and logic. Cambridge
University Press, 1989.
N. Cutland. Computability: an introduction to recursive function
theory. Cambridge University Press, 1980.
A. J. Kfoury, R. N. Moll, M. A. Arbib. A programming approach to
computability. Springer-Verlag, 1982.
Tnapeval saab loogikast parema levaate, lugedes
teatmeteoseid:
J. Barwise (toim.). Handbook of mathematical logic. North-Holland,
1977.
D. V. Gabbay, C. J. Hogger, J. A. Robinson (toim.). Handbook of
logic in articial intelligence and logic programming. 4 kd., Clarendon
Press, 19931995.
J. van Leeuwen (toim.). Handbook of theoretical computer science.
Volume B. Formal models and semantics. Elsevier, 1990.
Kirjandus 393
S. C. Shapiro (toim.). Encyclopedia of articial intelligence. 2 kd.,
John Wiley & Sons, 1992.
III Mitteklassikaline loogika
Universaalsed pikud lisaks eespool mainitud Susan Haacki ja
Graeme Forbese raamatutele:
L. Bolc, P. Borowik. Many-valued logics: 1 Theoretical foundations.
Springer-Verlag, 1992.
M. Ginsberg. Essentials of articial intelligence. Morgan Kaufmann,
1993.
S. Reeves, M. Clarke. Logic for computer science. Addison Wesley,
1990.
R. Turner. Logics for articial intelligence. Ellis Horwood Limited,
1984.
Modaalloogika:
B. F. Chellas. Modal logic. Cambridge University Press, 1975.
G. E. Hughes, M. J. Cresswell. A new introduction to modal logic.
Routledge, 1996.
Intuitsionistlik loogika:
M. Dummett. Elements of intuitionism. Clarendon Press, 1977.
Mittemonotoonne loogika:
D. W. Etherington. Reasoning with incomplete information. Pitman,
1988.
M. Ginsberg (toim.). Readings in nonmonotonic reasoning. Morgan
Kaufmann, 1987.
Lineaarloogika:
J.-Y. Girard. Linear logic: its syntax and semantics. Advances
in Linear Logic, Cambridge University Press, 1995, 142.
[lmd.univ-mrs.fr/pub/girard/Synsem.ps.Z].
394 Kirjandus
J.-Y. Girard. Linear logic. Theoretical Computer Science, 50 (1987),
1102.
IV Loogika rakendusi programmeerimises ja
tehisintellektis
Automaatne teoreemitestamine:
M. Koit. Resolutsioonimeetod. Tartu, 1989.
C.-L. Chang, R. C.-T. Lee. Symbolic logic and mechanical theorem
proving. Academic Press, 1973.
M. Fitting. First-order logic and automated theorem proving.
Springer-Verlag, 1996.
D. Loveland. Automated theorem proving: a logical basis.
North-Holland, 1978.
U. Schning. Logic for computer scientists. Birkhuser, 1989.
Loogiline programmeerimine:
R. Kowalski. Logic for problem solving. North-Holland, 1979.
J. W. Lloyd. Foundations of logic programming. Springer-Verlag, 1987.
L. Sterling, E. Shapiro. The art of Prolog. MIT Press, 1994.
Funktsionaalne programmeerimine:
H. P. Barendregt. The lambda calculus: its syntax and semantics.
North-Holland, 1984.
R. Bird, P. Wadler. Introduction to functional programming.
Prentice-Hall, 1988.
L. C. Paulson. ML for the working programmer. Cambridge University
Press, 1991.
Indeks

115, 214
+ 214
:- 350
; 353
? 288
?- 351
* 60
** 60
0 214, 291
1 291
! 288, 360
:= 377
= 63, 154, 321, 358
=.. 364
[] 354
w

239
& 68, 289
. 68, 354
145, 172, 201, 226, 255,
270, 290
377, 382
181
def
= 168
74
99
1 216
98, 221
205
206
72
155
LN 213
376, 377
370
74
288
290
290
289

179
132
H 169
|= 59, 62, 104, 106
|=I 259
Mn 205
57, 63, 73, 74, 76
72, 76
76
fn 205
235
69
70
p 69
m 215
p(n) 201
235
R= 367
R 368
e r A 261
72
69, 74
155
330
e 261
68
{x/t } 81, 104, 311
1-aksioom (1-axiom) 291
!-salvestus (!-storage) 292
396 Indeks
4 246
4 246
5 246
aatom (atom) 76, 97, 100
Abelard, P. 26
abstraktsioonialgoritm 383
abstraktsiooniterm 377
absurd 3, 24
Ackermann, W. 37
Add 134
aeg 10
agent 286
aju 2
aksiomaatika 3537, 120
aksiomatiseerima 18
aksiomatiseeritav
lplikult 222
aksioom (axiom) 11, 16, 40,
157, 159, 161
alamtuletus 141
alamvalem (subformula) 77
alamvalemi omadus (subformula
property) 178, 255
al-Farabi, A. N. 25
-reegel 179
algebra 35, 335
algebraline ssteem 162
al-Ghazali 25
algoritm (algorithm) 10, 12, 39,
4446, 118, 255
disjunktideks teisendamise
324
algoritmiteooria (computability
theory) 46, 165
alguspunkt 26
al-Kindi 25
-reduktsioon 377
Anaximenes 64
and 68
andmebaas (data base) 12, 227
sebrade 333
sugulussidemete 12
Anselm 26
antetsedent 174
antiikloogika 27
antismmeetriline 258
apooria 20
append 355, 360
Aquino, T. 26
araabia 25
argument 58, 96
Aristoteles 6, 2027, 56, 95,
235
aritmeetika (arithmetic) 15, 18,
34, 37, 133, 161, 178,
213, 218, 221, 225,
340
arutlemise 28
esimest jrku 222, 224
formaalne (formal) 45, 115
keel 213
mittestandardne mudel
(nonstandard model)
214, 222, 224
Presburgeri 18
standardinterpretatsioon 214,
222
smbol- 362
teist jrku 222, 225
aritmeetikas vljendatav
funktsioon 216
predikaat 215
aritmeetiline predikaat 215
Arnauld 27
arutlus (argument) 19, 58, 65
kehtiv (valid) 59, 60, 82,
85, 86, 88, 240, 387
korrektne (sound) 60
arutluse standardkuju 59
arutlusvorm (argument form) 82,
85
kehtiv (valid) 86, 88
arvutama (compute) 198
arvutatav funktsioon 197
arvutatavus (computability) 197,
249, 251
arvuti 198, 298
abstraktne 44
programmeeritav 44
universaalne 44
Indeks 397
arvutigraafika 358
arvutiteadus (computer science)
34, 46, 249
teoreetiline 34, 37, 297
arvutus (calculus) 12, 133
arvutusmasin 44
asendus (substitution) 104
literaali 321
termi 322
asendusreegel (replacement rule,
equivalence rule) 133,
135, 191
Assoc 135
assotsiatiivsus 79, 135
parempoolne 79
vasakpoolne 79
atomaarne valem 100
atomic 363
atomism 47
automaatne snteesimine 39
automaatne teoreemitestamine
297299
Averroes 25
Avicenna 25
baas 189
Babbage, C. 44
Barcani valem (Barcan formula)
248
-funktsioon 217
-reduktsioon 377
-reegel 179
Bendix 371
Bernays, P. 37
Bernoulli, J. 29
Bethi tabelimeetod (Beth
tableaux) 179
Bic 135
binaarne (binary) 96
Blake, W. 168
Bochenski, J. 50
Boethius 25, 26
Bolyai, J. 94, 218
Boole, G. 2832, 65
Boolei
algebra (Boolean algebra)
30, 32, 65, 120
funktsioon (Boolean
function) 66, 67, 71
interpretatsioon 117
konstant 227
loogika 65
Boyer, R. 307
Brouwer, L. E. J. 3839, 251
Buridan, J. 27
Burley, W. 27
call 362
Cantor, G. 29, 32, 34, 206, 218
Capella, M. 25
Carnap, R. 34, 40, 47, 48
CD 134
CE 135
Chomsky, A. N. 51
Chrysippus 24
Church, A. 33, 4446, 131,
197, 208, 319, 376,
379
Churchi tees (Churchs thesis)
45, 46, 197, 207, 251,
376
Cicero 25
Clark, K. L. 281
Cohen, P. J. 250
Comm 135
Conj 134
Contra 135
CP 140
Curry, H. 378, 382
Cut 176, 177
Davisi-Putnami meetod 299
Dedekind, R. 32, 213
deduktsioon 20, 375
definitsioon 51, 73
induktiivne 76, 187
matemaatiline 73
nominaalne 28
reaalne 28
deklaratiivne
keel 346, 347
programmeerimine 366
DeM 135
398 Indeks
De Morgan, A. 29, 31
De Morgani seadused 135, 290
diagonaliseerimismeetod 204
Diodorus Cronus 24
disjunkt (clause) 300
tautoloogiline 328
thi (empty) 305
disjunktide hulk 325
disjunktiivne sllogism 82, 132,
134
disjunktsioon 38, 69
hgus- 269
intuitsionistlik 38
vlistav (exclusive or) 70
Dist 135
distributiivsus 135
DN 135
DNK 137
259
DS 132, 134
duaalne 290
valem 189
duaalsusreeglid 108, 112
eeldus (premise) 22, 58
efektiivne 197
EG 151, 152
EI 151
Einstein, A. 41, 87, 218
eitus (negation) 69
hgus- 269
intuitsionistlik 38
eituse eitamise seadus 290
eksijreldus (fallacy) 240
eksistentsikvantori (existential
quantier) 99
eemaldamine (existential
instantiation) 152, 172
sissetoomine (existential
generalization) 152
eksperiment 158
ekspertssteem 349
eksponent (exponent) 288
eksponentsiaalne keerukus 130
ekstensionaalne 84
ekstensioon 103
ekvivalentne (equivalent) 197
ekvivalents (equivalence) 73, 74
ekvivalentsireegel (rule of
biconditional) 135
ekvivalentsiseos (equivalence
relation) 247
elementaardisjunktsioon 137
elementaarkonjunktsioon 137
elementaarselt ekvivalentne 118
elementaarteooria 118, 119, 219,
225
empirism 47
enamus (most) 129
episteemiline (epistemic) 236
erand 4
erijuht (instance) 81, 150
erikuju (instance) 14, 81, 86
esteetika 48
Eudemus 23
Eukleides 24, 133, 157, 213
Eukleidese geomeetria 217
Euler, L. 29
ex falso quodlibet 173
Exp 135
fact 357
fail 362
fakt 366, 380
fakt (fact) 301, 349
faktoriseerimisreegel 300, 302,
317
Fermat, P. de 16, 196
Fermat suur teoreem 16
figuur 22
filosoofia 47
analtiline 34, 47, 50
niitne (nite) 37
finitism 37
formaalne
aksiomaatika 43
aksiomaatiline
ssteem 133
teooria 161
ssteem (formal system)
40, 42
formaliseeritud aksiomaatiline
teooria 158
Indeks 399
formalism 33, 36, 38, 43
Frege, G. v, 2935, 41, 94
funktsionaalmuutuja 222
funktsionaalne
keel 347, 366
programm 367
programmeerimine 229, 366
funktsionaalsmbol 115
funktsionaalterm 313
funktsionalism 50
funktsioon 29, 66, 230
injektiivne (injective,
one-to-one) 224
intuitiivselt arvutatav 197
karakteristlik 205
psipunkti- 378
srjektiivne (surjective, onto)
224
Turingi mttes arvutatav
(Turing computable)
204
fsika 26, 51
Gen 171
Gentzen, G. 41, 172, 174, 178,
256
geomeetria 157, 213
Girard, J.-Y. 287
Goldbachi hpotees (Goldbachs
conjecture) 250
Gorgias 20
grammatika (grammar) 76
Gdel, K. 18, 19, 3234, 37,
4143, 48, 50, 133,
214, 217, 250, 251
Gdeli
mittetielikkuse teoreemid
(incompleteness
theorems) 229
numeratsioon (Gdel
numbering) 204, 219
teoreemid mittetielikkusest
(incompleteness
theorems) 236
hajuv 231
haru (branch) 179
avatud lpetatud (completed
open) 181
suletud (closed) 181
Hegel, G. W. F. 29, 47
Henkin, L. 224
Herbrand, J. 37, 170
Herbrandi
baas 280
universum 317
heuristika 335, 343
Heyting, A. 38, 39, 251
Heytingi arvutus 252
Hilbert, D. 3238, 41, 133, 187,
218, 251
Hilberti
probleemid 33, 36
programm 37, 43, 218, 229
tpi tuletusssteem 168
Hippias 20
Horni
disjunkt (Horn clause) 349,
354
reegel 348
HS 134
hulga element 154
hulgateooria 32, 33, 35, 39, 41,
156, 218
Cantori 32
intuitsionistlik 39
paradoksid 36, 38
hulk (set) 229
kigi hulkade 36
lplik 224
lpmatu (innite) 32, 39,
41, 187, 224
Hume, D. 47
hperresolutsioonireegel 337
hpoteetiline sllogism 134
Ibn Rushd 25
Ibn Sina 25
iff 74
if-then 72
imperatiivne keel 346, 347, 367
implikatsioon 38, 71, 238
400 Indeks
hgus- 270
intuitsionistlik 38
lineaarne 288
range (strict) 238
implikatsiooni
eeldus (antecedent) 72
jreldus (consequent) 72
implikatsiooni paradoksid
(paradoxes of
(material) implication)
238
implikatsioonireegel (conditional
exchange) 135
implikatsiooni sissetoomisreegel
(conditional proof )
140
indiviid 21
indiviidmuutuja 95
indiviidterm 100
induktiivne
struktuur 227
induktsioon 4, 5, 188, 340
matemaatiline 5
struktuurne 340
induktsiooni
baas 187, 188
eeldus 190
samm 187, 188
induktsiooniaksioom 214, 221
induktsiooniprintsiip 340
induktsioonireegel 178
induktsiooniskeem 340
infikskuju 97, 358
informatsioon 51
inimene 43, 198
injektiivne 214
integer 364
intensionaalne 51, 84
339
interaktiivne ssteem 340
interpretatsioon (interpretation,
structure) 103, 117,
239
hgus- 269
lplik 223
interpretatsiooni kandja 103, 117
introspektsioon 51
intuitsionism 33, 3739, 249,
251
intuitsionistlik
funktsiooniteooria 39
hulgateooria 39
loogika 39
matemaatika 39
mduteooria 39
IP 144
is 357
islami fundamentalism 26
isomorfism 118
isomorfne 214
Jevons, W. S. 30
Johannes XXI 26
jumalatestus 26
jreldama (conclude, imply) 5
jreldub loogiliselt 106, 162
jrelduma (imply) 90
jreldus (consequence, conclusion)
22, 58
nrk (weak) 271
tugev (strong) 271
jreldusreegel 7, 9
jreldustehe 31
K 246
kahekordse eituse reegel 135
kanooniline tlge 244
Kant, I. 29, 39
kaudse testuse reegel 144
kausaalne (causal) 288
keel (language) 40, 49
eesti 76, 81
formaalne 8, 10, 12, 40
lausearvutuse 9
loomulik (natural) 10, 49,
50, 76
lplik 41
predikaatarvutuse 10, 11
programmeerimis- 10
keelefilosoofia 48, 50
kehtestatav (satisable) 88, 106
kiirkontrolli meetod 89
Indeks 401
Kleene, S. C. 170, 255, 261
KNK 137
Knuth, D. 371
Knuthi-Bendixi tielikustamisalgo-
ritm 373
kognitiivsusteadus (cognitive
science) 51
kohtupraktika 57
kohustuslikkus (obligation) 246
Kolmogorov, A. 167
kombinaator 383
super- 385
kommutatiivsus 135
kompaktne 228
kompaktsus 133
kompilaator
optimeeriv 385
konditsionaalse testuse reegel
140
konfiguratsioon 199, 211
konjunktsioon (conjunction) 68,
72, 79
hgus- 269
konjunktsioonireegel 134
konkretiseerimine 310
konstantmuutuja 151
konstantsmbol 96
konstrueerima 38, 288
konstruktiivne (constructive) 229
dilemma 134
konstruktivism 37
kontiinum (continuum) 126, 221
kontiinumhpotees (continuum
hypothesis) 250
kontingentne (contingent) 61, 63,
88, 89, 106
kontingentne materialist 248
kontradiktsioon 88, 110
kontranide 90, 113
koolkond
Bagdadi 25
funktsionalistlik 50
intuitsionistlik 39
koondamine (contraction) 292
koonduv 231
koos (with) 289
koosklaline (consistent) 57
korda (times) 289
korrektne (sound) 160, 164
korrektsus (soundness) 15, 132,
192
Kowalski, R. 348
kriitiline paar 372
Kripke, S. A. 34, 50, 239
Kripke
mudel 259
semantika 261
kumer 230
kvantor (quantier) 29, 31
olemasolu- (existential) 38,
99
ldisus- (universal) 98
kvantorite
distributiivsusreeglid
(quantier distribution)
146
eemaldamisreeglid 151
eitamisreeglid (quantier
negation) 146
ettetoomisreeglid 148
jrjestusreeglid (quantier
(in)dependence) 147
liigutamisreeglid (quantier
movement) 147
sissetoomisreeglid 151
kllaldase aluse seadus 56
Laar, M. 84
lahendamatuse astmed (degrees on
unsolvability) 46
lahendus (solution) 351
mittehene 353
hene 354
lahendusliteraal (goal) 320, 353
lahenduv (decidable, solvable)
12, 23, 45, 120, 159,
162, 164
raskesti (hard, intractable)
130
lahenduvus (solvability) 46
lambda-arvutus (lambda calculus)
45, 46, 347, 376
402 Indeks
lambdaterm 377
Lambert, J. H. 29
lause (sentence) 65, 76, 101
atomaarne 97
osaeitav 109
osajaatav 109
ldeitav 109
ldjaatav 108
lausearvutus (propositional
calculus) 12, 23, 25,
29, 30, 65, 77
klassikaline 45
lausearvutuse
tehe (connective) 66
valem (formula, wff ) 76
lauseloogika (propositional
(sentential) logic) 65
lausemuutuja 6, 76
lausevorm (propositional
(sentential) form) 81,
90
Leibniz, G. W. 2830, 34, 44,
56, 222, 236
Leibnizi vrduse printsiip (Leibniz
principle of equality)
222
Lewis, C. I. 235, 238, 239, 245
ligipsetavuse seos (accessibility
relation) 246
lihtlause 387
laiendamata 387
laiendatud 387
lihtsustamisreegel 132, 134
liiasusreegel (redundancy) 135
liik (sort) 228
liikumine 20
liitlause 76, 387
Lindemann, C. L. F. von 197
lindithestik 198
lineaarne implikatsioon 288
lineaarsus 124
lingvistika (linguistics) 51
lingvistiline pre vi
lisalemma 340
lisamisreegel 134
literaal 137, 179, 300
negatiivne 300
positiivne 300
literaalide jrjestus 330
Lobat"evski, N. 218
loend (list) 338, 354, 366
thi ( ) 338
loendi
esimene element (head)
354
saba (tail) 354
loenduv (enumerable) 126
logitsism 3234, 36, 43, 47, 48,
50
logitsistika 50
loodusteadused 51
loogika 1, 6, 12, 19, 3941, 51,
228, 236
algebra 30
Aristotelese 22, 23, 31, 95,
131
autoepisteemiline (autoepiste-
mic) 286
deontiline (deontic) 235,
246
dialektiline 1
episteemiline (epistemic)
50, 235
esimest jrku (rst-order)
222, 228
filosoofiline 32
formaalne 1, 10
hgus- (fuzzy) 268
intuitsionistlik (intuitionistic)
38, 39, 50, 175, 226,
249, 261, 288, 293,
354, 375
kaasaegne 30
kahevalentne 56
keskaegne 27
klassikaline (classical) 9,
38, 39, 261, 268, 287,
293, 354, 375
kombinatoorne 382
konstruktiivne 229
krgemat jrku (higher-
order) 222
Indeks 403
lineaar- (linear) 50, 287,
288, 293
lplikku jrku (nite order)
227
matemaatiline 1, 10, 28
mitmeliigiline (many-sorted)
228
mitmevalentne (many-valued)
268
mitteklassikaline (non-
classical) 9, 34, 50,
65
mittemonotoonne (non-
monotonic) 50,
273
mittepredikatiivne (impre-
dicative) 227
modaal- (modal) 50, 235
monaadiline esimest jrku
(monadic rst-order)
229
monaadiline teist jrku
(monadic second-order)
229
naiste 167
Port-Royali 27
predikaat- 94
predikatiivne (predicative)
227
relevantne (relevance) 50
relevantsus- (relevance) 288
skolastiline 27
smbol- (symbolic) 2729
teadmiste (of knowledge)
246
teist jrku (second-order)
222, 224, 226, 228
temporaal- (temporal) 235
terminite 21
tnapeva 29
uskumiste (of belief ) 246
vaikimisi- (default) 284
loogikareegel 32
loogikaseadus 55
loogikateadus 19, 34
loogiline
jreldumine 60, 62, 63,
238
konstant 77
positivism 40, 47, 48, 50
programmeerimine (logic
programming) 300,
348
ruut (square of opposition)
111
seos (connective, relation)
66
smbol 102
tehe 76
loogiliselt (logically) 61
ekvivalentne (equivalent)
62, 63, 74, 80
mittevimalik (impossible)
236
samavrne (equivalent)
118
tene (true) 6163, 88, 91,
106, 240
vimalik (possible) 236
vr (false) 61, 63, 88,
106
loomuliku tuletuse ssteem 131,
172
!ukasiewicz, J. 34, 336
!ukasiewiczi aksioom 337
Lull, R. 28
Luther, M. 27
likepredikaat (cut) 360
likereegel (cut) 176, 257, 362
likereegli elimineerimine (cut
elimination) 178
likevaba (cut-free) 178
lplik (nite) 17
lpliku mudeli omadus (nite-
model property)
247
lpmatus 32, 36, 37
potentsiaalne 340
Lwenheim, L. 41, 46
MacColl, H. 238
mahajtmine (dereliction) 292
404 Indeks
male 293
map 366
Markovi printsiip 251
masin
Babbagei 44
Leibnizi 44
Pascali 44
Turingi (Turing machine)
44, 46
Maslov, S. 299
matemaatika 34, 43, 48, 157,
196, 218, 250
alused 33, 36, 37, 249
intuitsionistlik 39
kaasaegne 30
matemaatiline
anals 35, 158
induktsioon 5, 187
matemaatilise induktsiooni
meetod 189
printsiip 35, 41, 189, 214
reegel 17
McCarthy, J. 283
Melissus 64
338
member 354
metakeel 40, 80
metamuutuja 81
metateoreem 32
mgu 314
Mill, J. S. 213, 266
Minsky, M. L. 235
mitteekvivalents 70
mitteeukleidiline geomeetria 218
mittelahenduv (undecidable) 12,
45, 131
mittelahenduvus (unsolvability)
46
mitteloogiline smbol 102
mittepredikatiivne (impredicative)
229
mittetielik (incomplete) 133,
218, 349
mittetielikkus (incompleteness)
19
mittevastuoluline (consistent) 36,
37
mittevasturkiv (consistent) 57,
163
modaalne (modal) 23
modaalsus (modality) 23
modus ponens 7, 132, 134, 169,
271, 302
modus tollens 134
monaadiline predikaatarvutus
(monadic) 244
monotoonne (monotonic) 276
Montague, R. 50
Moore, G. E. 47
Moore, R. 286
moraal 20, 48
MP 132, 134
MT 134
mudel (model) 40, 41, 50, 104,
161, 223
muutuja (variable) 14, 21, 101
asendamine 147
seotud (bound) 101, 376
seotud esinemine 101
sisaldumise kontroll (occur
check) 359
vaba esinemine 101
vaba (free) 101
muutujate mbernimetamine
(standardising apart)
313, 316, 324, 352
miste 21, 222
defineerimine 73
mistekiri v
misteloogika 21, 23, 25
mte 3, 65
mtlemine 26, 19, 47, 49
selge 47
mng (game) 49, 160, 358
116, 187, 213, 246
214
Naeris, V. 273
naturaalarv (natural number)
187
naturaalarvud (natural numbers)
206, 213
Indeks 405
naturaalarvude hulk 187
neelama 327
neelamisstrateegia 327, 373
negatiivne
informatsioon 280, 350
tulemus 196
Neumann, J. von 37, 196
Newton, I. 87, 218
Nicole, P. 27
nil 338
nimede unikaalsuse aksioomid
281
nimi 21
Nixoni romb (Nixon diamond)
278
Nobeli auhind 34
(a) 371
normaalkuju
disjunktiivne 137
konjunktiivne 137, 325
preeneks- (prenex) 146
Skolemi 150
tielik
disjunktiivne 137, 138
konjunktiivne 137, 138
not 362
not 69
null (nil) 290
nullfunktsioon 216
nrgendamine (weakening) 292
objektkeel 40, 80
objektorienteeritud keel 348
Ockham, W. 27
Ockhami habemenuga 27
olemasolukvantor 324
omaaksioom 162
omadus (property) 35, 46, 222
or 70
osahulk 155
osaline jrjestus (partial order)
258
osavalem (subformula) 77
otsingu suund
faktidest jrelduseni
(bottom-up) 332, 334
jreldusest faktideni
(top-down) 332334
otsustus 65
P 201
paarikonstruktor 354
palju (many) 129
paradoks (paradox) 24, 33, 36
Cantori 33, 35, 206, 218
habemeajaja 35
hletamisea (voting age)
268
inimeksistentsi (of human
existence) 268
kiilaspea (of the bald man)
268
kuhja- (of the heap) 267
Russelli 35, 218, 227
soriitide (sorites, of
vagueness) 267
Zenoni 20
valetaja (liar) 24, 35, 41,
42, 214
unte rivi 266
parajasti siis, kui 63
paralleelide aksioom (parallel
postulate) 128, 217
paramodulatsioon 323, 336, 369
paramodulatsiooni
tielikkus 323
paramodulatsioonireegel 323
paratamatu (necessary) 2, 6, 16
paratamatult tene 236
paratamatus (necessity) 10, 50,
235, 238, 246
paratamatuse sissetoomine
(necessitation) 238,
246
Parmenides 19
Pascal, B. 28, 44, 94, 213, 249
patsifism (pacism) 34
Peano, G. 34, 35
Peano
aksiomaatika (Peanos
axioms, Peanos
postulates) 162, 164,
213
406 Indeks
aritmeetika 42
postulaadid 35, 37
peatehe (main connective) 77
peatumisprobleem (halting
problem) 204, 205,
208
Peirce, C. S. 3032
Peircei reegel 38, 336
permutation 355
permutatsioon 137
Petrus Hispanus 26
Philon 24
pidevusaksioom 221
piiramine (circumscription) 283
predikaadi 283
universumi (domain) 283
piisav (sufcient) 76, 387
Platon 20
platonism 43, 250
Ploucquet, G. 29
pluss (plus) 290
Porphyrios 25, 26
positivism 40
predikaadi aarsus (arity) 96
predikaat (predicate) 46, 95
predikaatarvutus (predicate
calculus) 12, 23, 30,
42, 45, 46, 65, 94
esimest jrku (rst-order)
31, 41
tpidega 226
predikaatarvutuse
mittelahenduvus 319
valem 100
predikaatmuutuja 222
predikatiivne (predicative) 229
prefikskuju 97, 146, 149, 358
Priimgi, L. 55, 266
prioriteet 78
probleem (problem) 196
endal peatumise (self-
halting) 205
keeruline (hard) 298
kurjuse (of evil) 166
mittelahenduv 201
peatumis- (halting) 205
ringi kvadratuuri (squaring
the circle) 197
termide vrdsuse 368, 379,
382
tesuse 208
vaba tahte (of free will)
237
virga kopra (busy beaver)
201, 203, 205
ldine peatumis- (general
halting) 205, 220
Prodicus 20
produktiivsusfunktsioon 201
programmeerimine 10, 44
deklaratiivne 366
funktsionaalne 45, 366
programmeerimise paradigma
347
programmeerimiskeel
Ada 229, 366
Algol 229
assembler 346
Basic 346, 367, 376
C 346348, 366, 367, 376
deklaratiivne 346
FP 366
funktsionaalne 376
funktsionaalse programmeeri-
mise 227, 348
Haskell 347, 348, 366, 385
Hope 366
imperatiivne 346
Java 346, 348
Lisp 347, 367
loogilise programmeerimise
348
Miranda 366, 385
ML 348, 367
objektorienteeritud 229,
346, 348
Pascal 346, 348, 366, 367
Prolog 300, 347, 348, 350,
354, 376
protseduraalne 348
Scheme 348, 367
SmallTalk 348
Indeks 407
programmide automaatne sntees
229
programmi verifitseerimine 338
Prolog 348
standardne 349
Prologi
= 358
aritmeetika 357
eitav vastus (fail, no) 351
eitus 350, 362
mittetielikkus 359
otsingumootor (engine) 349,
354
programm 349
vastus (answer) 351
propositsioon (proposition) 65
Protagoras 20
protseduraalne keel 348
puhas mistus 29
Putnam, H. 50, 299
puu 259
avatud (open) 181
suletud (closed) 181
phjendama 19, 58
phjus 49
pring (goal, query) 350
Pts, K. 83
prdmeetod 299
psipunkt (xpoint) 378
psipunktifunktsioon 378
Pythagoras 20
QD 147, 148
QI 148
QM 148
QN 148
qsort 356
quicksort 356
Quine, W. V. O. 50, 228, 248
rakendusfunktsioon 382
rakendusterm 377
Ramus, P. 27
ratsionaalarvud (rational numbers)
116
ratsionaalarvude jrjestus 125
Raudam, T. 65, 130
reaalarvud (real numbers) 116,
123, 206
reaalarvude jrjestus 123
reaktsioon 288
realiseeritav (realizable) 262
realism 250
Red 135
redeks 378
reductio ad absurdum 20, 22
reduktsioon 375, 377
redutseerima 376
reegel (rule) 4, 5, 16, 49, 301,
350
refleksiivne 247
refleksiivsus 321
Reiter, R. 280, 284
rekursiivne
programm 227
realiseeritavus 255, 261
rekursiivselt loetletav (recursively
enumerable) 165, 220,
285
rekursiooniteooria (recursion
theory) 46
religioon 48, 50
renessanss 27
resolutsioon
jrjestatud 330
resolutsioonimeetod 131,
299303, 349, 353
resolutsioonimeetodi
korrektsus 306
lahendav algoritm 308
tielikkus 307, 319
resolutsioonireegel 300302, 311,
316, 330
ressurss 287
retoorikud 20
reverse 357
Riemann, G. F. B. 218
ring (niaring) 36
Robinson, J. 299, 307
Rosser, B. 380
Rummo, L. 94
408 Indeks
Russell, B. 1, 3236, 39, 41,
43, 47, 48, 50, 227
ruum 20
rhm (group) 158, 162
Abeli 162
rhmateooria 119, 161, 335, 367
samaselt (logically) 61
tene (true) 61, 118
vr (false) 61
samastama 222
samasus (identity) 10
samasusseadus (law of identity)
55, 58, 61, 89, 90,
287
Savisaar, E. 84
Schlick, M. 47
Schrder, E. 31, 32
Schnfinkel, M. 382
Scotus, J. 26
see (the) 107
seis (state) 293
seisund (state) 198
sekvents (sequence) 174
semantika (semantics) 40, 41,
48, 50, 79, 80, 160,
222
vimalike maailmade
(possible world) 50
semantiline puu 307
seos (relation) 83
avaldatav 73
tevrtusfunktsiooniline
(truth-functional) 83
vljendatav 73
signatuur (vocabulary, signature)
102, 103, 115
Siimann, M. 84
simp 364
Simp 132, 134
simuleerima 44, 45
sisu 29, 160
skolastiline 22
Skolem, T. 41, 46, 214, 225,
325
Skolemi
funktsioon (Skolem function)
150
konstant 150
skolemiseerimine (Skolemization)
324, 326
slowsort 357
sofistid 20
Sokrates 20, 21
sorteerimisalgoritm 356
spetsifitseerima 339
split 356
standardkonfiguratsioon 200
statistiline 4
stoikud 24, 25
strateegia
jrjestatud resolutsiooni 330
jrjestus- 331
neelamis- 327, 331
tautoloogia krvaldamise
328
toetus- 331
toetushulga 329
struktuur 116, 118
lplik 121
struktuuride klass 119
substitutsioon 81, 82, 311
minimaalne 312
successor-funktsioon 217
sugulussidemete
andmebaas 350
lesanne 12
suhe (relation) 46
suktsedent 174
suletud maailma
eeldus (closed-world
assumption) 280, 350,
362
reegel 285
sna (word) 49
sllogism (syllogism) 2123,
112, 133
kategooriline 27
sllogismifiguur 112
sllogismi moodused 133
sllogistika 23, 95
smbolaritmeetika 362
Indeks 409
smbolarv (numeral) 215
smmeetria 321
smmeetriline 247
sntaks 40, 76, 80, 160
sntaksipuu (parse tree) 78, 365
209
Zenon 20
Zermelo-Fraenkeli hulgateooria
157
T 246
t (T) 67, 79
tagasiprdumine (backtracking)
352
taju 48
Tarski, A. 40, 41, 102
tarvilik (necessary) 387
tarvilikkus (necessity) 76
tase (level) 227
tautoloogia (tautology) 8891
tautoloogiliselt ige 6
teadmine (knowledge) 10, 49,
51, 235, 286
teadmiste baas (knowledge base)
280
teaduslik 47
teadvus 2
tegelik maailm (real world) 239
tegevus (action) 198
tehisintellektiteadus 34, 51, 297
teist jrku predikaatloogika 221
teoloogia 26
katoliiklik 26
teooria (theory) 12, 223
aksiomatiseeritav 120
esimest jrku (rst-order)
118, 162
lahenduv 120
loendite 340
matemaatiline 115
mittelahenduv 120
mittemonotoonne (nonmono-
tonic) 276
mittenormaliseeritav 340
mudel 162
N 213
struktuuri 120
struktuuride klassi 120
vaikimisi- (default) 284
teoreem (theorem) 12, 143, 157
asendus- (replacement) 134,
136
Cantori 33
Churchi 208
Churchi-Rosseri 379, 385
deduktsiooni- 170
duaalsus- (duality) 190
Fermat 196
Gdeli esimene 219
Gdeli teine 220
Henkini 224
Herbrandi 317
Knuthi-Bendixi 372
kompaktsus- (compactness)
223, 224
korrektsuse- (soundness)
162, 193
loetlemis- (enumeration)
207
matemaatika- 175
mitteolemasolu 196
mittetielikkuse (incomplete-
ness) 18, 19, 32, 41,
42
mudeli- 163
Nelsoni 264
normaliseerimis- 378, 385
psipunkti- (xpoint) 378,
385
Skolemi 225
Skolemi-Lwenheimi 41,
223
Skolemi-Lwenheimi
laskumis- (downward)
223, 228
Skolemi-Lwenheimi
tusmis- (upward)
223, 228
substitutsiooni- 384
tielikkuse- (completeness)
41, 163, 195
410 Indeks
mbertstmis- 137
term 116, 313
muutuja asendamiseks vaba
171
termi
normaalkuju 369
rakendamine 376
termiteisendusssteem (re-write
system) 369
kokkuvoolav (conuent)
370
korrektne 370
mittepeatuv 375
peatuv 369
tielik (complete) 370
tertium non datur 172
Theophrastus 23
tihedus 124
toetushulk 329
transitiivne 247
transitiivsus 321
TTS 369
tuletama 5
tuletamine (deduction, inference,
derivation) 160
tuletatav (derivable) 305, 306
vahetult 159
tuletis 362
tuletus (derivation, deduction) 8,
10, 132
loomulik (natural) 172
tuletusreegel (inference rule) 11,
40, 82, 90, 131, 132,
134, 158, 159
tuletusssteem
H 168, 171, 192
K 170, 246
172
S4 246, 258
S5 239, 246
T 238, 245
Turing, A. M. 44, 46, 197, 319
Turingi masin 44, 45, 197, 198,
346
arvutab funktsiooni 201,
204
universaalne 207
Turingi masina
graaf (graph) 199
produktiivsus 201
Turingi tees (Turings thesis)
197
tde (truth) 2, 19, 38
absoluutne 19
matemaatiline 19
paratamatu 19
platooniline 38
tehulk 103
tendama 254
tene (true) 56, 67, 79, 269
interpretatsioonis 105
testama 5, 157
testus (proof ) 8, 10, 58, 158
finiitne (nitary) 218
induktiivne 187
intuitsionistlik 39
kaudne (indirect) 144
klassikaline 39
konditsionaalne (conditional)
140
mitteformaalne (informal)
156, 207
otsene 144
vastuviteline (indirect,
reductio ad absurdum)
56, 57, 144
testuste teooria (proof theory)
178
tesus (true) 3, 41
analtiline 50
loogiline 50
tesusaste (degree of truth) 268
tesuspuu (truth-tree) 179
tesuspuude meetod 131, 179
tevrtus (truth value) 56, 66,
79
tevrtustabel (truth table) 68,
8587, 130
osaline 86
tstmislemma 318
thendus (meaning) 40, 51
thestik (lexicon) 76, 100, 159
Indeks 411
tielik (complete) 17, 41, 160,
164, 301
tielikkus 133, 192
tielikkuse (completeness) 281
aksioom 281
eeldus (assumption) 281
tielikult modaliseeritud (fully
modalized) 241
tielikustamine (completion) 281
tisarvud (integers) 17, 35,
3941, 43, 116, 379
thikusmbol 198
tbiteooria 39, 226
lihtne 36
tp (type) 36, 227, 229
funktsiooni- 227
tpide hierarhia 36
UG 150, 151
UI 151
unaarne 96
unitseerija (unier) 312
kige ldisem (most general,
mgu) 313, 314
unitseerima (unify) 311, 314
hepoolselt 369
unitseerimisalgoritm 315
universaalne
funktsioon 207
Turingi masin 207
universaalsus 36
universum (universe) 30, 31, 95,
103
arutluse (of discourse) 31
universumi suletuse eeldus
(domain-closure
assumption) 283
uskuma 19
uskumine (belief ) 235
v (F) 67, 79
vaatlus 158
vaikimisireegel (default rule) 10,
274, 284
normaalne (normal) 284
poolnormaalne (semi-normal)
284
valem (formula, wff ) 100, 116
atomaarne (atomic) 76
kinnine (closed) 101
lahtine (open) 101
lausearvutuse 76
vastandid (contraries) 110, 111
vastuolu (contradiction) 36, 38,
145
vastuoluline (inconsistent) 37,
57, 305
vasturkiv (inconsistent) 57, 62,
63, 110, 111, 193
vasturkivus (contradiction) 24
vasturkivusseadus (law of
non-contradiction) 55,
61, 90, 270
verifitseerima 48
Victorinus, M. 25
Viini ring 47
vorm 29
vimalike maailmade semantika
239
vimalikkus (possibility) 10, 50,
235, 387
vimalik maailm (possible world)
236, 239
vimsus 33
vrdsete asendamise seadus
(substituivity of equals)
248, 322
vrdsus (par) 290
vrdus (equality) 321
hulkade 154
vrduse aksioomid 162
vrdusssteem 367, 375
vtmesna (keyword) 59
vhe (few) 129
vide 6, 35, 65
analtiline 50
empiiriline 50, 51
kategooriline 21
tinglik (conditional) 31
viteskeem 24
vlistatud kolmanda seadus (law
of excluded middle)
56, 57, 90, 252, 270
412 Indeks
vljaviimisreegel (exportation)
135
vljendatavus 49
vr (false) 56, 67, 79, 269
vrtustus (valuation) 85, 90
Walden, A. 130
Whitehead, A. N. 32, 34, 36,
39, 41, 47
Wiles, A. 196
Wittgenstein, L. 1, 31, 32, 34,
4749
write 358
ppima 4
hisosa 339
ldistama 4
ldistamisreegel (generalization)
171
ldisuskvantor (universal
quantier) 98
ldisuskvantori
eemaldamine (universal
instantiation) 150
sissetoomine (universal
generalization) 150,
172
leminek (transition) 293
mberpramisreegel (contraposi-
tion) 135
xor 70

You might also like