Matematinė logika -...

51
1 skyrius Matematinė logika Graikiškas žodis logos (λ´ oγoς ) reiškia mintį“, žodį“, protą“, sąvo- ką“. Logika arba formalioji logika nagrinėja teisingo mąstymo dėsnius ir formas, kai samprotavimų turinys nėra svarbus. Matematinė logika, dar va- dinama simboline logika, taiko matematinius metodus ir susiformavo kaip matematikos skyrius. Jos objektą sudaro matematinių teoremų įrodymai ir matematinės teorijos. Matematinė logika yra matematikos pagrindų tyrimų įrankis. Šis matematikos skyrius vadinamas įrodymų teorija arba metama- tematika. Kompiuterinės technikos plėtra paskatino naujų logikos taikymų atsiradimą: duomenų ir žinių bazių, ekspertinių sistemų, kitų dirbtinio in- telekto kūrimo proceso elementų. 1.1. Propozicinės formulės Norėdami pabrėžti, kad logika negrinėja nepriklausančias nuo turinio samprotavimų schemas, mes pradedame šį skyrių apibrėždami visiškai abst- rakčias matematines struktūras, kurių turinys gali būti labai įvairus. Pirma, parodysime kaip galima formaliai apibrėžti gerai žinomą matematikoje for- mulę. Konkreti formulė gali būti tam tikra taisyklė atlikti ir aritmetinius veiksmus, ir algebrinius pertvarkius, ir logines operacijas, tačiau jos forma- lus apibrėžimas yra bendras ir visiškai nepriklauso nuo bet kokio turinio. Mes panagrinėjame kiek daugiau sąvokų negu tiesiogiai reikia kitiems mate- matinės logikos klausimams išdėstyti, kadangi tai leidžia iš karto paaiškinti kelias svarbias diskrečiosios matematikos problemas. Todėl į šį vadovėlio skyrių reikia žiūrėti kaip į įvadą į diskrečiąją matematiką. 1

Transcript of Matematinė logika -...

Page 1: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1 skyrius

Matematinė logika

Graikiškas žodis logos (λoγoς) reiškia”mintį“,

”žodį“,

”protą“,

”sąvo-

ką“. Logika arba formalioji logika nagrinėja teisingo mąstymo dėsnius irformas, kai samprotavimų turinys nėra svarbus. Matematinė logika, dar va-dinama simboline logika, taiko matematinius metodus ir susiformavo kaipmatematikos skyrius. Jos objektą sudaro matematinių teoremų įrodymai irmatematinės teorijos. Matematinė logika yra matematikos pagrindų tyrimųįrankis. Šis matematikos skyrius vadinamas įrodymų teorija arba metama-tematika. Kompiuterinės technikos plėtra paskatino naujų logikos taikymųatsiradimą: duomenų ir žinių bazių, ekspertinių sistemų, kitų dirbtinio in-telekto kūrimo proceso elementų.

1.1. Propozicinės formulės

Norėdami pabrėžti, kad logika negrinėja nepriklausančias nuo turiniosamprotavimų schemas, mes pradedame šį skyrių apibrėždami visiškai abst-rakčias matematines struktūras, kurių turinys gali būti labai įvairus. Pirma,parodysime kaip galima formaliai apibrėžti gerai žinomą matematikoje for-mulę. Konkreti formulė gali būti tam tikra taisyklė atlikti ir aritmetiniusveiksmus, ir algebrinius pertvarkius, ir logines operacijas, tačiau jos forma-lus apibrėžimas yra bendras ir visiškai nepriklauso nuo bet kokio turinio.Mes panagrinėjame kiek daugiau sąvokų negu tiesiogiai reikia kitiems mate-matinės logikos klausimams išdėstyti, kadangi tai leidžia iš karto paaiškintikelias svarbias diskrečiosios matematikos problemas. Todėl į šį vadovėlioskyrių reikia žiūrėti kaip į įvadą į diskrečiąją matematiką.

1

Page 2: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

2 1 SKYRIUS. MATEMATINĖ LOGIKA

1.1.1. Formulės apibrėžimas

1.1 apibrėžimas. Formaliosios teorijos abėcėle A vadinami šie sim-boliai

• propozicinės raidės: x, y, z, u,, v, w;

• propozicinės jungtys: ♭, ♮;

• skliaustai: (, ).

Bet kuri apibrėžtos abėcėlės A simbolių seka vadinama žodžiu.

Pavyzdžiui, z1 = x(y)♭uw ir z2 = (♭(x♮z)) yra žodžiai. Kaip ir natūralio-je kalboje ne visi užrašyti raidėmis žodžiai turi prasmę. Formalioje teorijojeišskiriami žodžiai, sudaryti pagal apibrėžiamas taisykles. Tokie žodžiai va-dinami formulėmis.

1.2 apibrėžimas. Formulėmis vadinami tokie žodžiai

• (1) propozicinės raidės x, y, z. u, v, w yra formulės;

• (2♭) jei F yra formulė, tai (♭F ) irgi yra formulė;

• (2♮) jei F1 ir F2 yra formulės, tai (F1♮F2) irgi yra formulė;

• (3) nėra formulių, gautų ne pagal (1), (2♭) arba (2♮) taisyklę.

Taigi z1 = x(y)♭uw yra žodis, bet nėra formulė, o žodis z2 = (♭(x♮z))yra formulė. Pastebėkime, kad žodis z3 = ♭(x♮z) irgi nėra formulė, kadangitaisyklė (2♭) reikalauja rašyti skliaustus. Tačiau patogu susitarti nerašytiišorinių skliaustų, kadangi jie neteikia jokios informacijos. Todėl susitar-kime, kad žodis z3 irgi yra formulė.

1.1 pastaba. Propozininės formulės 1.2 apibrėžime galima pakeistiraidžių ir jungčių kiekį bei žymenis.

1.1 pavyzdys. Paimkime tokias propozines jungtis +, −, ·, : ir gau-sime gerai žinomas aritmetines operacijas:

x+yz−u

vw2

= (((x + y) : (z − u)) : (v : (w · w)))) .

Page 3: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.1. PROPOZICINĖS FORMULĖS 3

Pažymėkime vienvietes (t.y. atliekamas su vienu operandu) aritmetinesoperacijas: z2 = 2z, z3 = 3z, z4 = 4z. Tada aritmetinį reiškinį galimaperrašyti taip:

x2y3w4 = (((2x) · (3y)) · (4w)).

1.1.2. Formulės gylis

1.3 apibrėžimas. Formulės dalis, kuri irgi yra formulė, vadinama pofor-muliu.

Formulė F = (♭(x♮y)) turi tris poformulius:F1 = x, F2 = y – propozicinės raidės yra formulės pagal (1) formulės 1.2apibrėžimo taisyklę;F3 = (F1♮F2) – (2♮) taisyklė;F = (♭F3) – (2♭) taisyklė.

Įrodykime, kad žodis z = ((x♮y)♮(♭(u♮v))) yra formulė. Išskiriame for-mulės z poformulius: F1 = x, F2 = y, F3 = u, F4 = v, F5 = (F1♮F2),F6 = (F3♮F4), F7 = (♭F6), z = (F5♮F7). Taigi formulė z gauta pagal (1),(2♭) ir (2♮) taisykles.

Matome, kad analizuodami formulę, galime išskirti tokius poformulius

(F 0) propozicinės raidės;

(F 1) formulės, gautos iš propozicinių raidžių, vieną kartą pritaikius (2♭)arba (2♮) taisyklę;

(F 2) formulės, gautos iš propozicinių raidžių arba iš gautų pagal (F1), vienąkartą pritaikius (2♭) arba (2♮) taisyklę;

· · ·

(Fn) formulės, gautos iš visų anksčiau gautų (F 0) – (Fn−1) formulių, vienąkartą pritaikius (2♭) arba (2♮) taisyklę.

Taigi bet kurią formulę gausime atlikus tam tikrą žingsnių skaičių n:(F 0), (F 1), . . ., (Fn).

1.4 apibrėžimas. Formulės F gyliu vadinamas mažiausias skaičius n, kaiatlikus žingsnius (F 0), (F 1), . . ., (Fn) gaunama formulė F .

Page 4: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

4 1 SKYRIUS. MATEMATINĖ LOGIKA

Raskime formulės F = (♭ (♭ (x♮ y) ) ♮ (♭ (u♮ v) ) ) gylį.Užrašykime visus formulės F poformulius, kai viršutinis indeksas reiškia po-formulio gylį:

(F 0) F 01 = x, F 0

2 = y, F 03 = u, F 0

4 = v;

(F 1) F 15 = (F 0

1 ♮F 02 ), F 1

6 = (F 03 ♮F 0

4 );

(F 2) F 27 = (♭F 1

5 ), F 28 = (♭F 1

6 );

(F 3) F 39 = (F 2

7 ♮F 28 );

(F 4) F = (♭F 39 ).

Taigi formulės F gylis lygus keturiems.

1.2 pastaba. Ištirtos formulės F gylis atsitiktinai sutapo su raidžių x, y,u, v skaičiumi 4.

Tai nesunku patikrinti tokiais pavyzdžiais (nerašome išorinių skliaustų).Visų sių formulių gylis lygus trims.

(♭ (x1♮ x2)) ♮ (♭ (x3♮ x4) );

(♭ (x1♮ x2)) ♮ (♭ (x1♮ x2) );

( (♭ (x1♮ x2)) ♮ (x1♮ x2) ).

1.1.3. Rekursinis formulės apibrėžimas

Apibrėžkime formulę algoritmiškai, kai turime propozicines raides, kuriaspažymėkime x1, x2, . . ., ir dvi propozicines jungtis: ¬, ⇒. Visas galimasformules F gauname teoriškai be galo daug kartų taikydami taisykles (¬X)ir (Y ⇒ Z). Čia X, Y , Z bet kurios jau sukonstruotos formulės. Taigiturime nulinio gylio formules F0 = {x1, x2, . . .}, o visų aukštesnių gyliųformules gauname taip: imame visas jau gautas formules ir taikome taisykles(¬X), (Y ⇒ Z). Jei gauname naują formulę, tai jos gylis bus vienetudidesnis negu iki šiol turimas maksimalus gylis. Užrašykime šį apibrėžimąformaliai.

1.5 apibrėžimas. F0 = {x1, x2, . . .};

Fn+1 = Fn ∪ {(¬X), X ∈ Fn} ∪ {(Y → Z, Y,Z ∈ Fn};

Page 5: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.1. PROPOZICINĖS FORMULĖS 5

F =⋃

n=0,1,...

Fn;

Formulės F ∈ F gyliu vadinamas skaičius n0 = minF∈Fn

n.

Tarkime, kad turime dešimt propozicinių raidžių x1, x2, . . ., x10 ir dvipropocines jungtis: vienvietę (unariąją) ¬ ir dvivietę (binariąją) ⇒. Tadaturime dešimt nulinio gylio formulių

F0 = {x1, x2, . . . , x10}.

Rašome |F0| = 10. Pirmojo ir nulinio gylio formulių turėsime jau 120:

F1 = {(¬x1) , . . . , (¬x10) , (x1 ⇒ x1) , (x1 ⇒ x2) , . . . , (x10 ⇒ x10)} ∪ F0.

Taigi turime |F1| = 120 ir kartodami samprotavimus gauname |F2| ≈1, 4 · 104. Akivaizdu, kad |F3| ≈ 2, 0 · 108, |F4| ≈ 4, 0 · 1016. Matome,kad formulių skaičius labai greitai auga ir jau penktojo arba šeštojo gylioformulių skaičius yra milziniškas, nors ir baigtinis. Todėl praktiškai neįma-noma nustatyti formulės gylį visų pagamintų formulių F0, F2, F3, · · · , Fn,. . . tiesioginiu perrinkimu, nors teoriškai taip galima išspręsti uždavinį. Darpastebėkime, kad neįmanoma ir patalpinti tiek formulių į bet kokių kompiu-terių atmintį. Tai tipinė diskrečiosios matematikos problema, kai uždavinysteoriškai išsprendžiamas perrinkus visus galimus variantus, kurių yra baigti-nis skiačius, tačiau praktikoje toks sprendimo būdas beprasmis, kadangi šiųvariantų labai daug. Dėl neaprėpiamo variantų skaičiaus spręsti panašiusuždavinius tiesioginiu perrinkimu nepadės ir informacinių technologijų plėt-ra. Todėl vienintelė išeitis – konstruoti efektyvesnius uždavinių sprendimoalgoritmus.

1.1.4. Prefiksinis ir postfiksinis formulės pavidalas

Kaip jau buvo pastebėta (žr. 2 psl.), galime susitarti nerašyti išoriniųskliaustų. Parodykime, kaip galime rašyti formules visai be skliaustų. Tar-kime, kad x1, x2, . . . – propozicinės raidės, ⊤, ⊥ – vienvietės propozicinėsjungtys, ⋄, △, ∇ – dvivietės. Tada formules užrašome prefiksiniu pavidalu:

(⊤X) = ⊤X, (⊥X) = ⊥X;

(Y ⋄ Z) = ⋄Y Z, (Y△Z) = △Y Z, (Y∇Z) = ∇Y Z.

Page 6: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

6 1 SKYRIUS. MATEMATINĖ LOGIKA

Lygybės ženklas (=) reiškia kitą tos pačios formulės žymėjimą. Taigi galimetaip perrašyti užrašytus įprastiniu (infiksiniu) pavidalu formules:

(⊤x1) ⋄ (⊥x2) = ⋄⊤x1⊥x2;

(⊥x3)∇(⊤x4) = ∇⊥x3⊤x4;

⊤ ((⊤x1) ⋄ (⊥x2)) = ⊤ ⋄ ⊤x1⊥x2;

⊥ ((⊥x3)∇(⊤x4)) = ⊥∇⊥x3⊤x4;

⊤ ( (⊤ ((⊤x1) ⋄ (⊥x2)))△ (⊥ ( (⊥x3)∇(⊤x4))) ) =

= ⊤△⊤ ⋄ ⊤x1⊥x2⊥∇⊥x3⊤x4.

1.2 pavyzdys. Perrašykime formulę

: −+ xy ◦ z ⋆ wu

infiksiniu pavidalu. Atliekamus pertvarkius rodome skliaustais:

: −+ xy ◦ zv ⋆ wu =: −+ xy ◦ zv (⋆wu) =: −+ xy ◦ zv (w ⋆ u) =

: −+ xy (◦zv) (w ⋆ u) =: −+ xy (z ◦ v) (w ⋆ u) =

: − (+xy) (z ◦ v) (w ⋆ u) =: − (x + y) (z ◦ v) (w ⋆ u) =

: ((x + y) − (z ◦ v) ) (w ⋆ u) = ((x + y) − (z ◦ v) ) : (w ⋆ u)

Panašiai apibrėžiamas postfiksinis formulių pavidalas:

(⊤X) = X⊤, (⊥X) = X⊥;

(Y ⋄ Z) = Y Z⋄, (Y△Z) = Y Z△, (Y∇Z) = Y Z∇.

Taigi bet kurią formulę galime parrašyti infiksiniu (operacijos tarp ope-randų; reikia skliaustų), prefiksiniu (operacijos prieš operandus; skiaustųnereikia) arba postfiksiniu pavidalu (operacijos po operandu; skliaustų ne-reikia).

Pavyzdžiui,(x + y) · z = ·+ xyz = xy + z·

Pastebėkime dar, kad

xyz + · = x · (y + z) = ·x + yz, xyz ·+ = x + (y · z) = +x · yz

Atkreipkime dėmesį, kad propozicinių (t. y. turinčių formulėje savo vietas– pozicijas) raidžių eilės tvarka visais atvejais nesikeičia.

Page 7: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.2. TEIGINIŲ ALGEBRA 7

1.2. Teiginių algebra

1.2.1. Teiginio sąvoka

Logika nagrinėja mąstymo dėsnius, užtikrinančius jo taisyklingumą, t. y.apibrėžtumą, neprieštaringumą, nuoseklumą, pagrįstumą. Viena pagrindi-nių, bazinių, pirminių logikos sąvokų yra teiginys – toks sakinys, tvirti-nimas, reiškimas, kuris visada yra arba teisingas, arba klaidingas. Pa-vyzdžiui, sakinys

”2>5“ klaidingas ir todėl yra teiginys. Sakiniai

”mokykis“

arba”nerūkyk“ nėra teiginiai. Sakinys

”α = β“ irgi nėra teiginys, kadangi

jis gali būti ir teisingas, ir klaidingas, priklausomai nuo α ir β reikšmių1.Pateiksime kitų teiginių pavyzdžius:

T1:”Kaunas nėra Lietuvos sostinė“.

T2:”Vasaris yra žiemos mėnuo“.

T3:”π yra iracionalusis skaičius“.

T4:”Jonas Petraitis nėra technikos universiteto studentas“.

Nagrinėjamų logikoje samprotavimų turinys nėra svarbus: logika domisiteisingų samprotavimų sudarymo formomis. Todėl svarbios yra tik teigi-nių reikšmės: tiesingas arba klaidingas, kurios žymimos

”TRUE“,

”FALSE“,

”T“,

”F“,

”t“,

”k“,

”1“,

”0“, . . . ir vadinamos loginėmis konstantomis.

Abstraktieji teiginiai žymimi raidėmis su indeksais arba bejų: A,B, . . .,c, d, e, . . ., f1, h2, . . . ir vadinami loginiais kintamaisiais. Taigi teiginiųT1, T2, T3 reikšmė yra

”tiesa“, o teiginio T4 reikšmės mes galime ir nežinoti

ir gali būti patogiau jį laikyti loginiu kintamuoju.

1.2.2. Loginės operacijos

Matematinė logika nagrinėja matematinių samprotavimų formas ir plačiainaudoja simbolius bei formules. Iš teiginių, kuriuos galima pavadinti pirmi-niais, elementariais arba loginiais kintamaisiais, sudaromi nauji, sudėtiniaiteiginiai. Naujiems teiginiams sudaryti apibrėžiamos loginės operacijos,kurios formalizuoja matematinių teoremų įrodymus. Tarkime, kad x ir y yrateiginiai (loginiai kintamieji). Atliekant su x ir y logines operacijas (veiks-mus), gaunami nauji teiginiai.

1.6 apibrėžimas. Teiginio T neigimu vadinamas naujas teiginys,kurį žymime T arba ¬T ir skaitome

”ne T“,

”netiesa, kad T“. Kai

loginio kintamojo T reikšmė yra”tiesa“, tai kintamojo T reikšmė yra

”klaida“, ir atvirkščiai, kai T –

”klaida“ — T –

”tiesa“.

1Tokio pavidalo sakiniai vadinami predikatais ir bus nagrinėjami vėliau (žr. 1.5.1.).

Page 8: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

8 1 SKYRIUS. MATEMATINĖ LOGIKA

Šį neigimo operacijos apirėžimą patogu užrašyti tokia lentele

T T

k tt k

Pavyždžiui, teiginys T 1 skaitomas”netiesa, kad Kaunas nėra Lietuvos

sostinė“ ir yra klaidingas.Neigimo operacija atliekama su vienu kintamuoju ir vadinama unariąja

arba vienviete. Kitos loginės operacijos atliekamos su dviem kintamaisiaisir vadinamos binariosiomis arba dvivietėmis.

Apibrėžimai (binariosios loginės operacijos):

disjunkcija žymima ∨ (skaitoma”x arba y“): teiginys x ∨ y yra teisingas,

kai teisingas bent vienas iš teiginių x, y (t. y. teisingas yra bent kurisnors iš x, y, tačiau jie gali būti teisingi ir abu);

konjunkcija žymima & (skaitoma”x ir y“): teiginys x & y yra teisingas,

kai teisingi abu teiginiai x, y (t. y. teisingas ir x, ir y);

implikacija žymima ⇒ ( skaitoma”jei x, tai y“ arba

”iš x išplaukia y“):

teiginys x ⇒ y yra klaidingas tik tuo atveju, kai teiginys x yra teisin-gas, o y – klaidingas (t. y. implikacija klaidinga kai iš tiesos išplaukiamelas, o visais kitais avejais implikacija yra teisinga 2);

2Paaiškinkime implikacijos reikšmes tokiu pavyzdžiu. Tėvas pažadėjo sūnui studentui:

”Jei išlakysi diskrečiosios matematikos egzaminą, padovanosiu tau naują kompiuterį“. Šį

pažadą (P ) galime užrašyti implikcijos pavidalu: P = E ⇒ K. Galimi tik tokie keturiatvejai.(1) E = k, K = k: sūnus neišlaikė egzamino; tėvas jam nenupirko kompiuterio;(2) E = k, K = t: sūnus neišlaikė egzamino; tėvas jam vis dėlto nupirko kompiuterį;(3) E = t, K = t: sūnus išlaikė egzaminą; tėvas, nors ir žadėjo, tačiau nenupirko jamkompiuterio;(4) E = t, K = t sūnus išlaikė egzaminą; tėvas, kaip ir žadėjo, nupirko jam kompiuterį.Matome, kad trečiuoju (3) atveju tėvas sakė netiesą ir P = k. Akivaizdu, kad ketvirtuoju(4) atveju jis sakė tiesą ir P = t. Pirmuoju (1) atveju tėvo pažadas irgi buvo tiesa (P = t),kadangi jis žadėjo nupirkti kompiuterį, jei sūnus išlaikys egzaminą, bet tas neišlaikė. To-dėl jis kompiuterio ir nenupirko ir jo pažadas nebuvo melas. Svarbu pastebėti, kad tėvopažadas nėra melas ir antruoju (2) atveju, kadangi jis nupirko kompiuterį, nežiūrėdamasį sūnaus nesėkmę egzamine. Juk jis gi žadėjo nupirkti kompiuterį, jei sūnus išlaikys eg-zaminą, bet nesakė, kad nepirks kompiuterio, jei tas neišlaikys. Taigi antruoju (2) atvejuP = t.

Page 9: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.2. TEIGINIŲ ALGEBRA 9

ekvivalentumas žymima⇔ (skaitoma”x tada ir tik tada, kai y“): teiginys

x ⇔ y yra teisingas, kai abu teiginiai x, y yra teisingi arba abuklaidingi (dar sakome, kad sąlyga x yra būtina ir pakankama sąlygaiy3.

Surašykime apibrėžtas logines operacijas į lentelę.

x y x ∨ y x & y x ⇒ y y ⇒ x x⇔ y

k k k k t t t

k t t k t k k

t k t k k t k

t t t t t t t

Taigi, jei raide J pažymėtas teiginys”Jonas yra studentas“, P –

”Petras

yra studentas“, tai teiginys J ∨P skaitomas”Jonas arba Petras yra studen-

tas“ ir reiškia, kad kuris nors iš jų, arba jie abu (t. y. bent vienas iš jų)yra studentas. Teiginys J&P skaitomas

”Jonas ir Petras yra studentai“ ir

reiškia, kad jie abu (t. y. ir vienas, ir kitas) yra studentai. Teiginys J ⇒ Pskaitomas

”jei Jonas yra studentas, tai ir Petras – studentas“, t. y. iš prie-

laidos, kad”Jonas yra studentas“ galima padaryti išvadą, kad ir

”Petras yra

studentas“. Teiginio J ⇔ P prasmė: Jonas ir Petras arba abu yra, arba abunėra studentai.

Dar kartą pastebėkime, kad teiginių turinys visai nesvarbus ir gali ne-turėti prasmės. Pavyzdžiui, teiginys

”jei Kaunas Lietuvos sostinė, tai visi

skaičiai yra neigiami“ užrašomas matematinės logikos simboliais k ⇒ k iryra teisingas.

1.3 pastaba. Disjunkcija kartais yra vadinama logine suma, o kon-junkcija – logine sandauga. Jei logines konstantas k ir t pažymėti 0ir 1 bei į simbolius 0 ir 1 žiūrėti kaip į skaičius, tai x&y = x · y,x∨ y = x⊕ y⊕x · y. Operacija ⊕ vadinama sudėtimi moduliu du:0 ⊕ 0 = 0, 1 ⊕ 1 = 0, 0 ⊕ 1 = 1 ⊕ 0 = 1. Sudėtis moduliu dukartais vaidinama griežtąja disjunkcija ir žymima ∨.

1.4 pastaba. Implikaciją galima apibrėžtišiomis išvedimų taisyklėmis:

3Jei turime implikaciją x ⇒ y, tai sakome, kad sąlyga y yra būtina sąlygai x (kitaipx negali būti teisinga), o sąlyga x yra pakankama sąlygai y (jos pakanka, kad teiginys y

būtų teisingas).

Page 10: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

10 1 SKYRIUS. MATEMATINĖ LOGIKA

a) iš teisingos prielaidos (antecedento) išplaukia tik teisinga išvada(konsekventas);b) klaidinga išvada išplaukia tik iš klaidingos prielaidos.

1.5 pastaba. Loginės operacijos literatūrojegali būti pažymėtos ir kitaip:∼, ′ (neigimas), ∧ (konjunkcija), →, ⊃ (implikacija), ↔, ≡, ∼= (ekvi-valentumas).

1.2.3. Teiginių algebros formulės

1.7 apibrėžimas. Teiginių algebros abėcėle vadinama aibė

A = {a, b, . . . , A,B, . . . , x1, · · · , Y2, · · · ,

¬, &, ∨,⇒, ⇔,

( , ) }.Aibės A elementai – loginiai kintamieji, loginės operacijos bei skliaus-tai vadinami raidėmis. Formulės apibrėžiamos jų sudarymo taisyklė-mis:(1) a, b, . . . , A,B, . . . , x1, · · · , Y2, · · · yra formulės;(2) jei A yra formulė, tai (¬A) – formulė;(3) jei A ir B yra formulės,

tai (A&B), (A ∨B), (A⇒ B), (A⇔ B) – formulės;(4) kitų formulių nėra.

Žodis z1 = A&¬B nėra sudarytas pagal (1)-(4) taisykles ir todėl nė-ra formulė. Norėdami jį pataisyti, turime rašyti papildomus skliaustus:z′1 = (A&(¬B)). Tačiau šių skliaustų prasmė akivaizdi ir jie yra prak-tiškai nereikalingi. Galima susitarti nerašyti išorinių skliaustų. Tadaz′′1 = A&(¬B) yra formulė.

Dar svarbesnis yra susitarimas dėl operacijų prioriteto. Operacijos ¬,&, ∨, ⇒, ⇔ surašytos prioriteto mažėjimo tvarka, t. y. neigimas (¬) turiaukščiausią prioritetą, o ekvivalentumas (⇔) – žemiausią. Tada, jei A&(¬B)yra formulė, tai ir A&¬B yra ta pati formulė. Jei (A&B)⇒ C yra formulė,tai A&B ⇒ C irgi yra ta pati formulė.

Atkreipkime dėmesį, kad operacijų prioritetų nustatymas neleidžia visaiatsisakyti skliaustų. Pavyzdžiui, formulė A∨B&C reiškia tik antrą iš dviejų

Page 11: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.3. LOGIKOS FORMULIŲ SEMANTIKA 11

iš esmės skirtingų formulių: x = (A∨B)&C arba y = A∨ (B&C). Formuliųužrašymas be skliaustų pavidalu "operacija operandai" vadinamas prefik-siniu, o kitas pavidalas – "operandai operacija" – postfiksiniu (tradicinispavidalas su skliaustais – infiksinis). Prefiksinis bei postfiksinis formuliųpavidalai leidžia visai nerašyti skliaustų. Pavyzdžiui, prefiksiniu pavidaluužrašytą formulę x = & ∨ ABC galima perrašyti taip: x = &wC = w&C.Čia pažymėta w = ∨AB = A ∨ B. Taigi perrašome formulę infiksiniu pa-vidalu: x = (A ∨ B)&C. Tą pačią formulę užrašome postfiksiniu pavidalu:x = w&C = wC& = AB ∨ C&. (Čia buvo pažymėta w = A ∨B). Panašiaiužrašome formules y = ∨A&BC = ABC&∨ ir F = ¬p&(x ∨ y ⇒ z) =&¬p⇒ ∨xyz.

Pastebėkime, kad lygybės ženklas (=) reiškia tik kitą tos pačios formulėspavidalą ir nėra teiginių algebros abėcėlės elementas. Kitame paragrafe mesapibrėšime loginių formulių lygiavertiškumo arba ekvivalentumo (∼=) sąvoką.

1.3. Logikos formulių semantika

1.3.1. Tautologijos

Tarkime, kad X = (x1, x2, . . . , xn) yra loginių kintamųjų rinkinys, F (X)– loginė formulė.

Apibrėžimai

Loginių kintamųjų xj reikšmių {t, k} rinkinį ν = (ν1, ν2, . . . , νn) vadi-name loginių kintamųjų interpretacija. Pavyzdžiui, ν(1) = (k, t, k)irν(2) = (t, k, t) yra dvi kintamųjų (x, y, z) interpretacijos

Formulė F vadinama įvykdoma su interpretacija ν, jei F (ν) = t.Pavyzdžiui, formulė x&y yra įvykdoma su interpretacija ν = (t, t).

Formulė F vadinama tautologija (tapačiai teisinga), jei ji yra įvyk-doma su bet kuria interpretacija. Tautologijas žymime ženklu |=.

Formulė F vadinama prieštara (tapačiai klaidinga), jei su bet kuriainterpretacija ν: F (ν) = k. Pastebėkime, kad F yra prieštara tada irtik tada, kai ¬F yra tautologija.

Formulės F ir G vadinamos ekvivalenčiomis, jei su bet kuria inter-pretacija ν: F (ν) = G(ν). Ekvivalenčias formules žymime ženklu ∼=.

Page 12: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

12 1 SKYRIUS. MATEMATINĖ LOGIKA

Pastebėkime, kad ekvivalenčiosios formulės turi tris savybes4: refleksy-vumo (F ∼= F ); simetriškumo (jei F1

∼= F2, tai F2∼= F1); tranzityvumo

(jei F1∼= F2 ir F2

∼= F3, tai F1∼= F3).

Formulės F ir G yra ekvivalenčios tada ir tik tada, kai formulė (F ⇔ G)yra tautologija. Arba trumpiau, F1

∼= F2 tada, ir tik tada, kai |= F1 ⇔ F2.

1.6 pastaba. Vietoje žodžių”tada ir tik tada, kai“ būtų galima rašy-

ti kurį nors ekvivalentumo ženklą (≡,⇔,↔). Tada pastarasis teiginysužrašomas taip: F1

∼= F2 ↔ |= F1 ⇔ F2. Tokiu atveju reikia su-sitarti, kad (⇔) reiškia predikatų kalbos ekvivalentumo operaciją, oženklas (↔)– mūsų paaiškinimų kalbos – metateorijos ekvivalentu-mą, t. y. teiginį

”tada ir tik tada, kai“.

Pateiksime ekvivalenčiųjų formulių pavyzdžius.

¬¬F ∼= F ;F ⇒ G ∼= ¬G⇒ ¬F ;F ⇔ G ∼= ¬F ⇔ ¬G;

F ∨ F ∼= F ;F&F ∼= F ;

F ⇒ G ∼= ¬F ∨G;F ⇒ G ∼= ¬(F&¬G);

F ∨ t ∼= t;F&t ∼= F ;F ∨ k ∼= F ;F&k ∼= k.

Visas formules galima įrodyti paprasčiausiu patikrinimu. Pavyzdžiui, for-mulės F ir F & t visada įgyja tą pačią reikšmę:kai F = t, turime F & t = t & t = t;kai F = k, turime F & t = k & t = k.Taigi įrodyta, kad F & t ∼= F .

4žr.

Page 13: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.3. LOGIKOS FORMULIŲ SEMANTIKA 13

1.3.2. Teisingumo lentelės

Žinodami įeinančių į loginę formulę loginių kintamųjų reikšmes, atlie-kame logines operacijas (žr. ??) ir surandame loginių formulių reikšmes,kurias įrašome į teisingumo reikšmių lentelę.

1.3 pavyzdys. Formulės

f(x1, x2, x3) = (x1 ⇒ x2) & (x1 ⇒ x3)

reikšmes bei jų skaičiavimo eigą nusako ši teisingumo reikšmių lentelė.

x1 x2 x3 x1 x2 x1 ⇒ x2 x1 ⇒ x3 f(x1, x2, x3)

k k k t t t k k

k k t t t t t t

k t k t k t k k

k t t t k t t t

t k k k t t t t

t k t k t t t t

t t k k k k t k

t t t k k k t k

1.3.3. Logikos dėsniai

Tapačiai teisingos formulės – tautologijos dar vadinamos logikos dėsniais.Surašykime svarbiausius iš jų į lentelę5.

5Atkreipkime dėmesį, kad ekvivalentumo ženklas ⇔ yra loginė operacija. Visų lentelėsformulių reikšmė lygi t, t. y. jos visos yra tautologijos.

Page 14: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

14 1 SKYRIUS. MATEMATINĖ LOGIKA

Pavadinimas Formulė

negalimo trečiojodėsnis

x ∨ x

dvigubas neigimas x ⇔ x

prieštaravimas x & x

tapatybėsdėsnis

x ⇒ x

"modus ponens" x & (x⇒ y) ⇒ y

"modus tollens" (x⇒ y)& y ⇒ x

silogizmas (x ⇒ y) & (y ⇒ z) ⇒ (x ⇒ z)

kontrapozicija x ⇒ y ⇔ y ⇒ x

de Morgano dėsniaix & y ⇔ x ∨ y

x ∨ y ⇔ x & y

Visas formules galima įrodyti, sudarant jų teisingumo reikšmių lenteles.Įrodykime, pavyzdžiui, pirmąjį de Morgano6 dėsnį:

x y x y x & y x & y x ∨ y x & y ⇔ x ∨ y

k k t t k t t t

k t t k k t t t

t k k t k t t t

t t k k t k k t

1.3.4. Konjunkcijos ir disjunkcijos savybės

Kaip ir anksčiau, visos pateikiamos tautologijos įrodomos tiesioginiu patik-rinimu. Taigi visų formulių teisingumo lentelės dešinysis stulpelis bus užpil-dytas logine konstanta t.

6Augustus de Morgan (1806 – 1871) – škotų matematikas ir logikas.

Page 15: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.3. LOGIKOS FORMULIŲ SEMANTIKA 15

Pavadinimas Formulė

idempotentumas x ∨ x ⇔ xx & x ⇔ x

konjunkcijoskomutatyvumas(perstatomumas)

x & y ⇔ y & x

disjunkcijoskomutatyvumas(perstatomumas)

x ∨ y ⇔ y ∨ x

konjunkcijosasociatyvumas(jungiamumas)

(x & y) & z ⇔ x & (y & z)

disjunkcijosasociatyvumas(jungiamumas)

(x ∨ y) ∨ z ⇔ x ∨ (y ∨ z)

distributyvumas(skirstomumas)

x & (y ∨ z) ⇔ x & y ∨ x & z

x ∨ y & z ⇔ (x ∨ y) & (x ∨ z)

absorbcijios(sugerties)dėsniai

x & (x ∨ y) ⇔ xx ∨ x & y ⇔ x

1.3.5. Implikacijos savybės

Surašykime į lentelę dar kelias nesunkiai patikrinamas tautologijas.

Pavadinimas Formulė

įvedimo irpašalinimoschemos

x ⇒ (y ⇒ x)(x ⇒ y) ⇒ ((x⇒ (y ⇒ z)) ⇒ (x ⇒ z))x ⇒ (y ⇒ x ∨ y)x & y ⇒ x(x ⇔ y) ⇒ (x ⇒ y)

distributyvumo(skirstomumo)dėsniai

x ∨ (y ⇒ z) ⇔ x ∨ y ⇒ x ∨ zx ⇒ y & z ⇔ (x ⇒ y) & (x ⇒ z)x ⇒ y ∨ z ⇔ (x ⇒ y) ∨ (x ⇒ z)x ⇒ (y ⇔ z) ⇔ (x ⇒ y ⇔ x ⇒ z)

Page 16: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

16 1 SKYRIUS. MATEMATINĖ LOGIKA

1.3.6. Tautologijų nustatymo taisyklės

Teisingumo reikšmių lentelės metodas yra universalus, bet reikalaujadaug darbo. Kartais įrodyti, kad formulė yra tautologija galima greičiau,taikant atskyrimo (modus ponens) taisyklę.

1.1 teorema. Tarkime, kad formulės F ir F ⇒ G yra tautologijos.Tada formulė G irgi yra tautologija, t. y. iš F ir F ⇒ G išplaukia|= G.Įrodymas. Jei šis teiginys nėra teisingas, t. y. G nėra tautologija, eg-zistuoja tokia loginių kintamųjų interpretacija (rinkinys) su kuria for-mulė G įgyja reikšmę k – klaida. Kadangi F yra tautologija, gaunamet ⇒ k = k ir formulė F ⇒ G nėra tautologija. Tai prieštaraujapadarytai prielaidai.

Taigi, jei turime tautologiją X ⇒ Y , įstatę vietoje X bet kurią tauto-logiją, gauname naują tautologiją.

1.4 pavyzdys. Iš |= X ⇒ Y ∨X ir |= X ⇒ Y gauname |= (X ⇒X)⇒ Y ∨ (X ⇒ X).

1.5 pavyzdys. Iš |= X ⇒ Y ∨X ir |= X & Y ⇒ Y gauname|= (X & Y ⇒ Y ) ⇒ Y ∨ (X & Y ⇒ Y ).

Suformuluokime dar vieną tautologijų įrodymo taisyklę. Tarkime, kad xyra formulės F poformulis. Jei formulėje F poformulį x pakeisime formuleH, gausime naują formulę, kurią žymėsime SH

x F . Jei formulė F buvo tau-tologija, jos visos reikšmės yra t ir nepriklauso nuo x. Todėl jos nepasikeisir formulė liks tautologija. Trumpiau, iš |= F išplaukia |= SH

x F .

1.6 pavyzdys. Iš |= x ⇒ x gauname|= x ∨ y ⇒ x ∨ y;|= z & w ∨ y ⇒ z & w ∨ y;|= (x ∨ z) & w ∨ y ⇒ (x ∨ z) & w ∨ y.

Kartais tautologijai įrodyti patogu taikyti prieštaros bei ekvivalen-čiųjų pertvarkių metodus.

1.7 pavyzdys. Įrodykime prieštaros metodu, kad formulė F = (A⇒(B ⇒ A)) yra tautologija. Sprendžiame lygtį F = k. Implikaci-ja ⇒ įgyja klaidingą reikšmę tik kai t ⇒ k. Taigi turi būti A = t,

Page 17: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.3. LOGIKOS FORMULIŲ SEMANTIKA 17

(B ⇒ A) = k. Gauname, kad (B ⇒ t) = k, o tokių reikšmių B nėra.Todėl lygtis F = k neturi sprendinių ir visais atvejais gauname F = t,t. y. formulė F yra tautologija.

1.8 pavyzdys. Ekvivalenčiųjų pertvarkių metodu įrodykime, kad for-mulėA & B ∨ (A ∨B) yra tautologija. Taikome dvigubo neigimo dėsnį:

A & B ∼= A & B. Reiškiniui A & B taikome de Morgano dėsnį:A & B ∼= A ∨B. Taigi taikydami negalimo trečiojo dėsnį, gaunameA ∨B ∨ (A ∨B) ∼= t.

1.3.7. Loginis išvedamumas

1.9 pavyzdys. Formulė H(x1, x2, . . . , xn) vadinama loginių formuliųF1(x1, x2, . . . , xn), F2(x1, x2, . . . , xn), . . ., Fm(x1, x2, . . . , xn)išvada, kai H įgyja reikšmę t, jei visos formulės Fj įgijo reikšmę t.

Taigi teisingumo lentelėjex1 x2 · · · xn F1 F2 · · · Fm H

negali būti tokių eilučiųx0

1 x02 · · · x0

n t t · · · t k

Iš čia gauname, kad loginė išvada H yra tautologija, kai F1, F2, . . ., Fm

– tautologijos.Formulių F1, . . . , Fm loginę išvadą žymėsime taip:

F1, F2, . . . , Fm |= H.

1.2 teorema. (Loginės išvados požymis.) Formulė H yra formulės Floginė išvada tada ir tik tada, kai implikacija F ⇒ H yra tautologi-ja. Kitaip sakant sąlyga F |= H yra būtina ir pakankama, kad būtų|= F ⇒ H).Įrodymas. Būtinumas. Iš F |= H pagal išvados apibėžimą turimet ⇒ t = t (negalimas atvejis t ⇒ k = k). Kai F = k, pagalimplikacijos apibrėžimą, k ⇒ H = t. Taigi F ⇒ H = t visaisatvejais ir yra tautologija.Pakankamumas. Kai implikacija F ⇒ H yra tautologija, teisingu-mo lentelėje (F,H,F ⇒ H) negali būti eilutės t, k, t. Todėl lentelėje(F,H) nėra elutės (t, k) ir H yra formulės F išvada.

Page 18: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

18 1 SKYRIUS. MATEMATINĖ LOGIKA

Panašiai galima įrodyti ir kitus loginės išvados požymius:F1, F2, . . . , Fm |= H tada ir tik tada, kai F1 & F2 & · · · & Fm |= H;F1, F2, . . . , Fm |= H tada ir tik tada, kai |= F1 & F2 & · · · & Fm ⇒ H.

1.4. Teiginių skaičiavimas

1.4.1. Teisingų samprotavimų taisyklės

Kai kurios tautologijos leidžia išskirti teisingų samprotavimų struktūrą,t. y. atsakyti į klausimą kas iš ko išplaukia. Išnagrinėkime tautologiją|= F & (F ⇒ G) ⇒ G. Pagal loginės išvados požymio teoremą (17 p.)gauname F,F ⇒ G |= G. Ši samprotavimų schema – išvedimo taisyklė– vadinama modus ponens taisykle ir užrašoma taip

F, F ⇒ G

∴ G

Ši taisyklė reiškia, kad jei turime teisingą prielaidą F ir įrodėme, kad prie-laida F ⇒ G irgi yra teisinga, tai galime padaryti teisingą išvadą G. Taigimodus ponens yra išvados atskyrimo nuo prielaidos taisyklė.

Kita teisingų samprotavimų taisyklė pagrįsta tautologija ((F ⇒ G) & ¬G)⇒¬F ir vadinama modus tollens:

F ⇒ G, ¬G

∴ ¬F

Surašykime į lentelę dar kelias išvedimo taisykles.

Tautologija Išvedimo taisyklė

(1) x ⇒ x ∨ yx

∴ x ∨ y

(2) x & y ⇒ xx & y

∴ x

(3) ((x ⇒ y) & (z ⇒ w)) &(x⇒ y)&(z ⇒ w), x ∨ z

∴ y ∨w(x ∨ z)⇒ y ∨w

Page 19: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.4. TEIGINIŲ SKAIČIAVIMAS 19

(4) (x ⇒ y)⇒ (y ⇒ x)x⇒ y

∴ y ⇒ x

(5) (x ⇒ y) & (y ⇒ z) ⇒ x⇒ y , y ⇒ z

∴ x ⇒ z(x ⇒ z)

(6) x ⇒ (y ⇒ z) ⇔ x ⇒ (y ⇒ z)

∴ y ⇒ (x ⇒ z)y ⇒ (x ⇒ z)

(7) x ⇒ (y ⇒ z)x ⇒ (y ⇒ z) ⇔

∴ x & y ⇒ zx & y ⇒ z

(8) (x & y ⇒ z) ⇒ x & y ⇒ z

∴ x ⇒ (y ⇒ z)(x ⇒ (y ⇒ z))

Šios taisyklės vadinamos: (1) – disjunkcijos įvedimo; (2) – konjunkcijos paša-linimo; (3) – konstrukcinė dilema; (4) – kontrapozicija; (5) – silogizmas; (6)– prielaidų perstata; (7) – prielaidų sujungimas; (8) – prielaidų atskyrimas.

1.4.2. Aksiominis metodas

Nagrinėsime kitą logikos dėsnių įrodymo metodą. Pirma pasirinksimekelis pradinius dėsnius – aksiomas, leidžiančias gauti kitus logikos dėsnius.Toliau suformuluosime taisykles, pagal kurias galima įrodyti logikos dėsnius– teoremas. Visų šių aksiomų, taisyklių ir teoremų aibė sudaro formaliąjąarba aksiominę teoriją. Kaip tokios teorijos pavyzdį, mes išnagrinėsimeformalizuotą teiginių skaičiavimą L.

(S) Teorijos L simboliai yra dvi loginės operacijos ¬ ir ⇒ (kitos ope-racijos bus apibrėžtos vėliau), loginiai kintamieji x, y, A1, A2, . . . irpagalbiniai simboliai ( , ) (skliaustai ir kablelis).

(F) Teorijos L formulės sudaromos pagal tokias taisykles:(a) kintamieji yra formulės;(b) jei X yra formulė, tai ir (¬X) – formulė;(c) jei X ir Y yra formulės, tai (X ⇒ Y ) irgi yra formulė;(d) nėra kitaip (ne pagal (a)–(c)) sudarytų formulių.Kaip ir anksčiau susitarkime nerašyti išorinių skliaustų.

Page 20: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

20 1 SKYRIUS. MATEMATINĖ LOGIKA

(A) Kokios bebūtų formulės A, B, C, formulės

(A1) A⇒ (B ⇒ A);(A2) (A⇒ (B ⇒ C))⇒ ((A⇒ B)⇒ (A⇒ C));(A3) (¬B ⇒ ¬A)⇒ ((¬B ⇒ A)⇒ B).

yra teorijos L aksiomos.

(MP) Teorijos L išvedimo taisyklė yra modus ponens: formulė B yratiesioginė išvada iš A ir A⇒ B (trumpiau rašysime MP(A, A⇒ B).

Pastebėkime, kad reiškiniai (A1) – (A3) yra aksiomos, kai vietoje A, B,C rašomos konkrečios formulės, pavyzdžiui, propoziciniai kintamieji. To-dėl kiekvienas iš šių reiškinių apibrėžia be galo daug formulių ir jos visosvadinamos aksiomomis, o reiškiniai (A1) – (A3) vadinami aksiomų schema.

1.8 apibrėžimas. Formulės F išvedimu iš formulių aibės (rinkinio)Γ (rašome Γ ⊢ F ) vadinama tokia baigtinė formulių seka F1, F2, . . .,Fs, kad kiekviena formulė Fj yra

arba aksioma,

arba formulė iš Γ,

arba gauta iš ankstesniųjų formulių Fk, Fl (k, l < j), pritaikius MPtaisyklę;

paskutinioji išvedimo formulė Fs sutampa su F .

Rinkinio Γ formulės vadinamos hipotezėmis arba išvedimo prielaido-mis. Kai tokių prielaidų nėra, t. y. aibė Γ yra tuščioji Γ = ∅, formulėF vadinama teorijos L teorema ir žymima ⊢ F . Kai reikia pabrėžti,kad kalbama apie teoriją L rašoma Γ ⊢L F

1.3 teorema. ⊢ A ⇒ A.Įrodymas. Įstatome į (A2) B = (A⇒ A) ir C = A.Trumpiau rašome SA,A⇒A,A

A,B,C (A2). Taigi :(F1) (A⇒ ((A⇒ A)⇒ A))⇒ ((A⇒ (A⇒ A))⇒ (A⇒ A)).Rašydami (A1) formulėje A⇒ A vietoje B (t. y. SA,A⇒A

A,B (A1)), gau-name(F2) A⇒ ((A⇒ A)⇒ A).Taikome gautoms formulėms išvedimo taisyklę MP(F1,F2):

Page 21: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.4. TEIGINIŲ SKAIČIAVIMAS 21

(F3) ((A⇒ (A⇒ A))⇒ (A⇒ A).Vėl taikome aksiomą SA,A

A,B(A1):(F4) A⇒ (A⇒ A).Galutinai pagal MP(F3,F4) taisyklę gauname(F5) A⇒ A.

1.4 teorema. (Dedukcijos teorema; Erbranas7, 1930)Jei Γ yra formulių rinkinys, A – formulė ir Γ, A ⊢ F , tai Γ ⊢ A⇒ F .Įrodymas. Tarkime, kad F1, F2, . . ., Fs yra formulės F išvedimas išhipotezių Γ ir formulės A. Taigi Fs = F .

Pirma išnagrinėkime atvejį s = 1. Tada F1 yra arba aksioma, arbaformulė iš Γ, arba F1 = A = F . Pastaruoju atveju jau įrodyta kad⊢ F ⇒ F . Pirmaisiais dviem atvejais turime aksiomą SF1,A

A,B (A1):F1 ⇒ (A⇒ F1) (A1′)ir taikome taisyklę MP(F1,A⇒ F1).

Bendruoju atveju (s > 1) taikome matematinės indukcijos princi-pą. Darome prielaidą, kad Γ ⊢ A⇒ Fk, kai k < i 6 s. Reikia įrodytiteiginį Γ ⊢ A ⇒ Fi. Formulė Fi atitinka vieną iš šių keturių atvejų:1) Fi yra aksioma, arba 2) Fi yra formulė iš Γ, arba 3) Fi sutampasu A arba 4) Fi gauta pritaikius taisyklę MP(Fj , Fj ⇒ Fi), (j < i).Pirmieji trys atvejai nagrinėjami, kaip jau išnagrinėtas atvejis s = 1.

Ketvirtuoju atveju turime indukcinę prielaidąΓ ⊢ A⇒ Fj ; (P1)Γ ⊢ A⇒ (Fj ⇒ Fi). (P2)

Taikome SA,Fj ,Fi

A,B,C (A2):(A⇒ (Fj ⇒ Fi))⇒ ((A⇒ Fj)⇒ (A⇒ Fi)). (A2′).Pagal MP(P2, A2′):(A⇒ Fj)⇒ (A⇒ Fi). (R).Ir vėl taikome MP(P1,R). Taigi gavome A ⇒ Fi ir, pagal indukciją,teiginys Γ ⊢ A⇒ Fi teisingas su visais i. Todėl jis teisingas, kai i = sir turime Fs = F arba Γ ⊢ A⇒ F . Teorema įrodyta.

Pastebėkime, kad formulių aibė gali būti tuščioji (Γ = ∅). Tada išdedukcijos teoremos gauname, kad iš A ⊢ F išplaukia ⊢ A ⇒ F , t. y.išvesta implikacija A⇒ F yra teorijos L teorema.

Įrodykime dar, kad su bet kuriomis formulėmis A, B, C galioja išvedi-mas:

7Jacques Herbrand (1908 – 1931) – prancūzų matematikas.

Page 22: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

22 1 SKYRIUS. MATEMATINĖ LOGIKA

A⇒ B, B ⇒ F ⊢ A⇒ F .Sukonstruokime tokį formulės F išvedimą:A⇒ B, B ⇒ F , A, B, F .Čia pirmosios trys formulės yra hipotezės, formulę B gauname pagal MP(A,A⇒B), o formulę F – pagal MP(B, B ⇒ F ). Taigi turime A ⇒ B, B ⇒ F ,A ⊢ F ir taikome dedukcijos teoremą. Gautą rezultatą galima užrašytiimplikacijos įvedimo taisyklės pavidalu:

Γ, A ⊢ F

∴ Γ ⊢ A ⇒ F

1.7 pastaba. Aksiomose (A1) – (A3) panaudotos tik dvi loginės ope-racijos: neigimas (¬) bei implikacija (⇒). Todėl teiginių algebrosformules galima apibrėžti nenaudojant kitų operacijų. Konjunkcijos,disjunkcijos bei ekvivalentumo operacijos apibrėžiamos taip:

(D1) (A & B) pažymėta (¬(A ⇒ ¬B));(D2) (A ∨ B) pažymėta ((¬A)⇒ B));(D3) (A ⇔ B) pažymėta ((A ⇒ B) & (B ⇒ A)).

Galima įrodyti tokias loginių operacijų įvedimo ir pašalinimo taisykles:

Γ ⊢ F, Γ ⊢ G

∴ Γ ⊢ F & G

Γ, G ⊢ F, Γ,H ⊢ F

∴ Γ, G ∨H ⊢ F

Γ ⊢ F

∴ Γ ⊢ F ∨G

Γ ⊢ F & G

∴ Γ ⊢ F

1.4.3. Formaliosios teorijos savybės

Teorijai L apibrėžti nebuvo jokių reikalavimų operacijoms ¬ ir ⇒. Tar-kime, kad jos apibrėžtos taip, kaip ir ankščiau.

Teiginių algebros operacijosA B ¬A ¬B A⇒ B B ⇒ A

k k t t t tk t t k t kt k k t k tt t k k t t

Su taip apibrėžtomis operacijomis visos aksiomos – formulės gautos pagal(A1) – (A3) schemą įgyja reikšmę t, todėl yra tautologijos (žymime |=). Kai

Page 23: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.4. TEIGINIŲ SKAIČIAVIMAS 23

A ir A⇒ F yra tautologijos, F irgi tautologija. Taigi pagal MP(A, A⇒ F )taisyklę iš tautologijų gauname tik tautologijas. Tarkime, kad F yra teorijosL teorema (⊢ F ). Tai reiškia, kad egzistuoja išvedimas F1, F2, . . ., Fs ⊢ Fir visos formulės Fj yra arba aksiomos arba gautos pagal MP(Fk,Fk ⇒ Fj),(k < j) taisyklę. Matome, kad visos formulės Fj yra tautologijos. Todėlįrodyta

Teorema. Jei ⊢ F , tai |= F .

Teisingas ir atvirkštinis teiginys: jei |= F , tai ⊢ F .

Taigi teorijos L formulė yra teorema tada ir tik tada, kai ji yrateiginių algebros tautologija. Ši teorijos savybė vadinama pilnumu.

Kita svarbi formaliosios teorijos savybė – jos neprieštaringumas: ne-egzistuoja tokia teorijos formulė A, kad ir A, ir ¬A yra teoremos. Iš tauto-logijos apibrėžimo išplaukia, kad teorija L neprieštaringa.

Pateiktos lentelėje loginių operacijų reikšmės gali būti ir kitos. Tai jaunebus teiginių skaičiavimas, bet visos teorijos L formulės gali būti apska-čiuotos. Išnagrinėkime daugiareikšmės logikos pavyzdį.

A B ¬A A⇒ B B ⇒ (A⇒ B)

k k n k kk n n t kk t n t kn k n t tn n n t kn t n k kt k k k kt n k k tt t k k k

Pastebėkime, kad dešinysis teisingumo lentelės stulpelis yra aksioma(A1). Jei suskaičiuoti formulių (A2) ir (A3) reikšmes, gausime vieną kons-tantą k. Tokios, įgyjančios tą pačią reikšmę k, formulės vadinamos išskir-tosiomis. Taigi visos (A2), (A3) aksiomos yra išskirtosios, o (A1) – nėra.Pagal taisyklę MP(A, A ⇒ F ) iš išskirtųjų formulių A ir A ⇒ F gaunameišskirtąją formulę F . Iš čia išplaukia, kad formulė (A1) negali būti išvesta išformulių (A2) ir (A3) pagal MP taisyklę. Todėl aksioma (A1) nepriklausonuo kitų aksiomų.

Page 24: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

24 1 SKYRIUS. MATEMATINĖ LOGIKA

1.5. Predikatų logika

1.5.1. Kvantoriai ir predikatai

Kai kurių loginių samprotavimų nepavyksta išreikšti teiginiaias. Pavyz-džiui, sakiniai

”Realusis skaičius x > π“,

”α = β “

nėra teiginiai, kadangi jie gali būti ir teisingi, ir klaidingi, priklausomainuo x, α, β.

Išnagrinėkime šiuos samprotavimus:

”Visi Jono draugai yra studentai. Petras yra Jono draugas.

Todėl Petras yra studentas“.

”Kai kurių šalių sostinės yra miestai. Todėl yra sostinės, kurios yra kaimai.“

Jų teisingumui nustatyti reikia ne tik žinoti ar teisingi atskiri šių sudė-tinių samprotavimų teiginiai, bet ir teisingai suprasti tokius reiškinius, kaip

”visi“,

”kai kurie“,

”kiekvienas“ ir pan.

Apibrėžkime dar dvi logines operacijas, kurios vadinamos egzistavimo(žymimas ∃) ir bendrumo (∀) kvantoriais.8 Egzistavimo kvantorius nuro-do, kad yra, galima rasti, egzistuoja tam tikras objektas: ∃α p(α) skaitoma

”yra tokia (tokios) α, kurios turi savybę p“. Bendrumo kvantorius nuro-

do, kad savybę p turi visi objektai α: ∀α p(α) skaitoma”su visomis (kokia

bebūtų) α, galioja sąlyga p“.Norėdami nagrinėti tokius sakinius, kaip

”α = β “ turime pasitikslin-

ti kintamųjų α, β prigimtį: tai gali būti skaičiai, matricos, funkcijos irt. t. Tokius kintamuosius vadiname dalykiniais kintamaisiais arba tie-siog kintamaisiais ir žymime x, y, z, . . . , x1, y2, . . . Dalykinių kintamųjųreikšmes vadiname konstantomis ir žymime α, β, . . . , α1, β2, . . .. FunkcijaP (x1, x2, . . . , xn) vadinama predikatu, jei esant bet kuriai dalykinių kinta-mųjų x1, x2, . . . , xn realizacijai α1, α2, . . . , αn,P (α1, α2, . . . , αn) yra teiginys. Pavyzdžiui, kai x ir y yra realieji skaičiai,galime nagrinėti tokius predikatus:P (x, y) =

”x2 > y “,

8Egzistavimo kavantoriaus žymėjimas ∃ – angliško žodžio Exist (egzistuoti, būti) pir-mosios raidės veidrodinis atvaizdas. Bendrumo kvanroriaus žymėjimas – angliško žodžioAny (bet koks, bet kuris) apversta pirmoji raidė.

Page 25: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.5. PREDIKATŲ LOGIKA 25

G(x) =”sin x > cos x “,

R(y) =”y2 = e−y“.

Tada P (1, 0) yra teisingas teiginys, G(0) – klaidingas. Teiginys R(α) įgyjateisingą reikšmę (t), kai y = α yra lygties y2ey = 1 šaknis.

Taikydami kvantorius ir predikatus, galime sudaryti teiginius:∀x∃yP (x, y), ∃xG(x) – teisingi teiginiai; ∀yR(y) – klaidingas teiginys.

Pažymėkime D(x, y) sakinį”x ir y yra draugai “. Sakinį

”y yra studentas

“ pažymėkime S(y), J – Jonas, P – Petras. Tada samprotavimus, kad,”jei

visi Jono draugai yra studentai, o Petras yra Jono draugas, tai ir Petras yrastudentas “ galime užrašyti taip

∀y (D(J, y)⇒ S(y)) ,D(J, P )

∴ S(P )

Taigi čia D(x, y) ir S(y) yra predikaitai, x, y – dalykiniai kintamieji,J , P – dalykinės konstantos.

1.5.2. Operacijos su predikatais

Predikatas P (x1, x2, . . . , xn) įgyja reikšmes t ir k, priklausomai nuo kinta-mųjų x1, x2, . . . , xn reikšmių. Kiekvienas kintamasis xj priklauso tam tikraiaibei Mj ir (x1, x2, . . . , xn) ∈M1×M2×· · ·×Mn. Šią aibę vadiname predi-kato apibrėžimo sritimi. Priklausomai, nuo apibrėžimo srities, predikatosavybės gali iš esmės pasikeisti. Pavyzdžiui, predikatas

”x2 +y2 = −1“ įgyja

reikšmę k, kai (x, y) ∈ R×R = R2. Tačiau, šio predikato reikšmė gali būtiir t, jei x ir y yra kompleksiniai skaičiai.

1.9 apibrėžimas. Predikato P (x1, x2, . . . , xn), apibrėžto srityje M1×M2×· · ·×Mn, teisingumo aibe vadinama aibė P+ ⊂M1×· · ·×Mn,jei predikatas P įgyja reikšmę t su visais x1, . . ., xn iš aibės P+ ir įgyjareikšmę k, kai (x1, . . . , xn) /∈ P+, t. y.

{

P (x) = t, kai x ∈ P+

P (x) = k, kai x /∈ P+.

Pavyzdžiui, predikato P (x, y) =”x2 + y2 = 1“ apibrėžimo sritis yra

R2, jo teisingumo aibė P+ – apskritimas su centru koordinačių pradžioje irspinduliu 1.

1.10 apibrėžimas. Predikatas P (x1, . . . , xn) vadinamastautologija (tapačiai teisingu), kai P+ = M1 × · · · ×Mn;

Page 26: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

26 1 SKYRIUS. MATEMATINĖ LOGIKA

prieštara (tapačiai klaidingu), kai P+ = ∅;įvykdomuoju, kai P+ 6= ∅;paneigiamuoju, kai P+ 6= M1 × · · · ×Mn.

1.11 apibrėžimas. Du predikatai P (x1, x2, . . . , xn) ir Q(x1, x2, . . . , xn)vadinami lygiaverčiais (ekvivalenčiais, rašome P ∼= Q ), kai1) jie apibrėžti toje pačioje srityje M1 ×M2 × · · · ×Mn;2) jų teisingumo aibės sutampa: P+ = Q+.

Pavyzdžiui, predikatai√

x · y = 9 ir√

x · √y = 9 yra ekvivalentūs, jeix > 0 ir y > 0, tačiau jie nėra lygiaverčiai, jei pirmąjį nagrinėti, kai x ·y > 0.

Pastebėkime, kad jei fiksuotas taškas (x01, x

02, . . . , x

0n) priklauso abie-

jų predikatų P ir Q apibrėžimo sričiai,tai P 0 = P (x01, x

02, . . . , x

0n), Q0 =

Q(x01, x

02, . . . , x

0n) yra teiginaiai ir todėl jiems apibrėžtos visos loginės opera-

cijos:

¬P 0, ¬Q0, P 0 ⇒ Q0, Q0 ⇒ R0, P 0 ⇔ Q0, P 0 & Q0, P 0 ∨Q0.

Taigi P ∼= Q tada ir tik tada, kai naujas predikatas (P ⇔ Q) yra tautologija.

1.12 apibrėžimas. Predikatas Q(x1, . . . , xn) vadinamas predikatoP (x1, . . . , xn) logine išvada (rašome P |= Q), jei predikato P reikšmėlygi t su visais tais x1, . . . , xn, kai Q įgyja reikšmę t.

Loginę išvadą galima apibrėžti ir kitaip: P+ ⊂ Q+.

Pavyzdžiui, natūraliųjų skaičių aibėje apibrėžti predikataiD3(n) =

”n dalus iš 3 “ ir

D6(n) =”n dalus iš 6 “.

Tada D6(n)⇒ D3(n) irD+

6 = {6, 12, 18, . . .} ⊂ D+3 = {3, 6, 9, 12, 15, 18, . . .}.

Pastebėkime, kad P |= Q tada ir tik tada, kai P ⇒ Q yra tautologija.

Iš čia gauname, kad du predikatai P ir Q yra lygiaverčiai (P ∼= Q ),tada ir tik tada, kai P ⇒ Q ir Q ⇒ P yra tautologijos. (Predikatas P ⇔R irgi bus tautologija.) Dar pastebėkime, kad šiuo atveju kad predikatųteisingumo sritys lygios: P+ = Q+.

Tarkime, kad predikatai P ir Q apibrėžti toje pačioje aibėje M1×M2×· · · ×Mn ir predikatas Q yra tautologija. Tada koks bebūtų predikatas P ,turime P ⇒ Q.

Page 27: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.5. PREDIKATŲ LOGIKA 27

Tarkime, kad P ⇒ Q ir P yra tautologijos. Tada predikatas Q irgi yratautologija.

1.13 apibrėžimas. Predikatas ¬P vadinamaspredikato P neiginiu, jei1) jis turi tą pačią apibrėžimo sritį;2) įgyja reikšmę k, kai P lygus t ir įgyja reikšmę t, priešingu atveju.

1.10 pavyzdys. P (x) =”

x > 0 “, ¬P (x) =”

x < 0 “.

1.11 pavyzdys. L(f) =”

f(x) yra lyginė realiojo kintamojo x funk-cija “, ¬L(f) =

”f(x) nėra lyginė realiojo kintamojo x funkcija “.

Pastebėkime, kad ¬L(f) nėra predikatasN(f) =

”f(x) yra nelyginė realiojo kintamojo x funkcija “.

1.14 apibrėžimas. Predikatų P (x1, x2, . . . , xn) ir Q(y1, y2, . . . , ym),apibrėžtų aibėse M1 × · · · ×Mn ir K1 × · · · ×Km, konjunkcija, va-dinamas predikatas

P (x1, x2, . . . , xn) & Q(y1, y2, . . . , ym),

apibrėžtas srityje M1 × · · · ×Mn ×K1× · · · ×Km ir įgyjantis reikšmęt tik ir tik tuo atveju, kai abu predikatai P ir Q lygūs t.Predikatų P ir Q disjunkcija, vadinamas predikatas

P (x1, x2, . . . , xn) ∨ Q(y1, y2, . . . , ym),

apibrėžtas srityje M1 × · · · ×Mn ×K1× · · · ×Km ir įgyjantis reikšmęt tik ir tik tuo atveju, kai bent vienas predikatas P ir Q lygus t.

1.12 pavyzdys. Tarkime, kad atkarpoje [−1, 1] ⊂ R apibrėžti predi-katai: P (x) =

”|x| < 1 “, Q(x) =

”x 6= 0 “.

1. (P&Q)+ = (−1, 0) ∪ (0, 1);2. (P ∨Q)+ = [−1, 1];

Page 28: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

28 1 SKYRIUS. MATEMATINĖ LOGIKA

1.5.3. Aibių reiškimas predikatais

Aibės A ir B, apibrėžtos universaliosios aibės U elementų savybėmis a(x)ir b(x), ir operacijos su aibėmios predikatų kalba išreiškiamos taip:1) predikatai a(x) ir b(x) apibrėžti aibėje U ;2) aibė A yra predikato a(x) teisingumo aibė:

A = a+ = {x ∈ U : a(x) = t};3) aibė B yra predikato b(x) teisingumo aibė:

B = b+ = {x ∈ U : b(x) = t};4) aibių A ir B sąjunga ir sankirta apibrėžiamos predikatų a(x) ir b(x)disjunkcija ir konjunkcija:

A ∪B = {x ∈ U : a(x) ∨ b(x) = t} = (a ∨ b)+,

A ∩B = {x ∈ U : a(x) & b(x) = t} = (a & b)+;

5) aibių A ir B papildiniai apibrėžiami predikatų a(x) ir b(x) neigimais:

A = {x ∈ U : a(x) = t}, B = {x ∈ U : b(x) = t};6) aibių A ir B skirtumai apibrėžiami taip:

A \B = {x ∈ U : a(x) & b(x) = t}, B \ A = {x ∈ U : b(x) & a(x) = t}.Taigi aibių A ir B sąjungą sudaro tie universaliosios aibės elementai,

kurie turi savybę a(x) arba b(x) (a(x) ∨ b(x)). Šių aibių sankirta sudarytaiš elementų, turinčių abi savybes a(x) ir b(x) (a(x) & b(x)). Iš disjunkci-jos ir konjunkcijos komutatyvumo ir asociatyvumo savybių išplaukia aibiųsąjungos ir sankirtos komutatyvumas ir asociatyvumas:

A ∪B = B ∪A, A ∩B = B ∩A,

(A ∪B) ∪ C =

A ∪ (B ∪ C) , (A ∩B) ∩ C =

A ∩ (B ∩C) .

Visos aibių teorijos formulės (žr. ??, ?? p.) išplaukia iš logikos dėsnių(t. y. iš operacijų ∨, &, ¬, ⇒, ⇔. Įrodykime, pavyzdžiui, de Morganoformulę:

A ∩B = {x : a(x) & b(x) = t} =

{x : a(x) ∨ b(x) = t} =

{x : a(x) = t} ∪ {x : b(x) = t} = A ∪B

Page 29: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.5. PREDIKATŲ LOGIKA 29

1.5.4. Termai ir formulės

Predikatų logika formalizuojama pagal tą pačią schemą kaip ir teigi-nių logika: apibrėžiama abėcėlė, formulių sudarymo taisyklės, aksiomos beiišvedimo taisyklės.

Veiksmams su dalykiniais kintamaisiais pažymėti naudojamos funkci-nės raidės. Pavyzdžiui, dviejų skaičių x1, x2 sumą x1 + x2 galima išreikštifunkcine raide p2

1(x1, x2). Taigi žymime visus leistinus dalykinių kintamųjųbei konstantų reiškinius f, g, . . . , f1, g2, . . . ir vadiname juos funkcinėmisraidėmis. Tai gali būti, pavyzdžiui, aritmetinės operacijos arba trigonomet-rinės funkcijos. Toliau nagrinėjame visus reiškinius, kuriuos galima sudaryti,taikant tas operacijas arba funkcijas.

1.15 apibrėžimas. Termais vadiname reiškinius, kuriuos galima gau-ti pagal šias taisykles:(a) kiekviena konstanta arba kintamasis yra termas;(b) jei f yra funkcinė raidė ir t1, t2, . . . , tn – termai, tai f(t1, t2, . . . , tn)yra termas;(c) nėra termų, gautų ne pagal (a), (b) taisykles.

Predikatų kalbos abėcėlė apibrėžiama kaip šių elementų aibė:1) loginių operacijų: ¬, &, ∨, ⇒, ⇔;2) pagalbinių simbolių: skliaustų

”( “,

”) “ bei kablelio

”, “;

3) kvantorių: ∀, ∃;4) kintamųjų;5) konstantų;6) funkcinių raidžių;7) predikatinių raidžių (predikatų).

Jei t1, t2, . . . , tn yra termai, o P yra predikatas, tai P (t1, t2, . . . , tn) va-diname elementariąja formule (atomine formule).Predikatų skaičiavimo formulės apibrėžiamos šiomis taisyklėmis:(a) elementariosios formulės yra formulės;(b) jei A ir B yra formulės, x – kintamasis, tai(¬A), (A&B), (A ∨B), (A⇒ B), (A⇔ B), (∀xA), (∃xA)yra formulės;(c) nėra formulių, gautų ne pagal (a), (b) taisykles.

1.5.5. Suvaržytieji ir laisvieji kintamieji

Page 30: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

30 1 SKYRIUS. MATEMATINĖ LOGIKA

1.16 apibrėžimas. Kintamojo įeitis į formulę nusakoma šio kinta-mojo simboliu bei jo vietos formulėje numeriu. Vietos, kur prieš kin-tamąjį yra kvantorius, neskaičiuojamos.

1.13 pavyzdys. Formulėje P (x, z)⇒ (∀z(Q(y, z) ∨ (y ⇒ z))) yraviena kintamojo x įeitis;dvi kintamojo y įeitys;trys kintamojo z įeitys.

Kaip ir teiginių algebros formulėse (žr. ??) galima išskirti predikatųskaičiavimo formulių poformulius. Išnagrinėto pavyzdžio formulėje turimepoformulius y ⇒ z, Q(y, z), Q(y, z) ∨ y ⇒ z ir t. t.

Kintamojo x įeitis į formulę F vadinama laisvąja, jei ji nepriklauso jo-kiai formulės F daliai (poformuliui), prasidedančiai ∀x arba ∃x. Priešinguatveju kintamojo x įeitis vadinama suvaržytąja formulėje F . Kintama-sis vadinamas laisvuoju formulėje F , jei jis turi bent vieną laisvąją įeitį.Formulė vadinama uždarąja, jei ji neturi laisvųjų kintamųjų.

Kai visi formulės F kintamieji x1, x2, . . . , xn yra laisvieji, rašomeF (x1, x2, . . . , xn).

Susitarkime, kad formulės F , ∀xF ir ∃xF yra ekvivalenčios, kai F ne-priklauso nuo x.

1.5.6. Predikatų skaičiavimo dėsniai

Egzistavimo ir bendrumo kvantorių reiškimas vienas kitu

∃xP (x)⇔ ∀xP (x)

∀xP (x)⇔ ∃xP (x)

Šios formulės dar vadinamos de Morgano dėsniais predikatams.Įrodykime pirmąją formulę. Tarkime, kad x0 tokia dalykinio kintamojo

reikšmė, kad P (x0) = t. Tada ∃xP (x) = t ir šio teiginio neiginys lygus k.Galimi du atvejai: 1) egzistuoja kitas x1, kad P (x1) = k, tada P (x1) = t irteiginys ∀xP (x) yra klaidingas, t. y. gauname k = k; arba 2) tokio x1 nėrair P (x) = t arba P (x) = k su visais x: (∀xP (x)) = k, t. y. vėl gaunamek = k.

Dabar tarkime, kad tokio x0, kad P (x0) = t pasirinkti negalima. Tada∀xP (x) = ∀xk = t. Iš kitos pusės, teiginys ∃xP (x) nuo x nepriklauso (yratapačiai klaidingas), o jo neiginys lygus t. Taigi gauname t = t.

Page 31: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.5. PREDIKATŲ LOGIKA 31

Kvantorių sąveika su konjunkcija ir disjunkcija

∀x(P (x)&Y )⇔ (∀xP (x))&Y

∀x(P (x) ∨ Y )⇔ (∀xP (x)) ∨ Y

∃x(P (x)&Y )⇔ (∃xP (x))&Y

∃x(P (x) ∨ Y )⇔ (∃xP (x)) ∨ Y

∀x(P1(x)&P2(x))⇔ (∀xP1(x)) & (∀xP2(x))

∃x(P1(x) ∨ P2(x))⇔ (∃xP1(x)) ∨ (∃xP2(x))

((∀xP1(x)) ∨ ∀(xP2(x)))⇒ ∀x(P1(x) ∨ P2(x))

((∃xP1(x)) & ∃(xP2(x)))⇒ ∃x(P1(x) & P2(x))

Pastebėkime, kad bendrumo kvantorius neturi distributyvumo savybėsdisjunkcijos atžvilgiu: bendru atveju nėra ekvivalenčios formulės ∀x(P1(x)∨P2(x)) ir (∀xP1(x)) ∨ (∀xP2(x)).

Egzistavimo kvantorius neturi distributyvumo savybės konjunkcijos at-žvilgiu: nėra ekvivalenčios formulės ∃x(P1(x)&P2(x)) ir (∃xP1(x)) & (∃xP2(x)).

Kvantorių sąveika su implikacija

∀x(P (x)⇒ Q)⇔ (∃xP (x))⇒ Q

∃x(P (x)⇒ Q)⇔ (∀xP (x))⇒ Q

∀x(Q⇒ P (x))⇔ Q⇒ (∀xP (x))

∃x(Q⇒ P (x))⇔ Q⇒ (∃xP (x))

Įrodykime, pavyzdžiui, pirmąją formulę. Ji nebus tautologija, jei ekvivalen-tumo operandai įgyja skirtingas reikšmes, t. y. turime du atvejus:

∀x(P (x)⇒ Q) = k, (∃xP (x))⇒ Q = t, (1)

∀x(P (x)⇒ Q) = t, (∃xP (x))⇒ Q = k. (2)

Pirmuoju atveju turi būti P (x) = t ir Q = k. Todėl ∃xP (x) = t ir(∃xP (x)) ⇒ Q = t ⇒ k = k. Taigi atvejis (1) neįmanomas. Antruojuatveju turi būti ∃xP (x) = t ir Q = k. Tada kairėje (2) formulės pusėjeturi būti P (x) ⇒ Q = k ⇒ k = t su visais x. Bet tai prieštarauja, kad∃xP (x) = t. Taigi atvejis (2) irgi yra negalimas ir pirmoji formulė įrodyta.

Page 32: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

32 1 SKYRIUS. MATEMATINĖ LOGIKA

Kvantorių pašalinimo ir įvedimo dėsniai

∀xP (x)⇒ P (y)

P (y)⇒ ∃xP (x)

Kvantorių komutatyvumas

∀x∀yP (x, y)⇔ ∀y∀xP (x, y)

∃x∃yP (x, y)⇔ ∃y∃xP (x, y)

∃x∀yP (x, y)⇒ ∀y∃xP (x, y)

1.5.7. Aksiominės teorijos sąvoka

Teorijos K simboliai yra loginės operacijos, kvantoriai, pagalbiniai sim-boliai, dalykiniai kintamieji ir predikatinės raidės. Dar teorija gali turėtifunkcinių raidžių ir dalykinių konstantų. Taigi skirtingos teorijos skiriasisimbolių abėcėlėmis, tačiau pagrindinė abėcėlės dalis yra būtina.

Teorijos K aksiomas sudaro dvi aksiomų grupės: loginės aksiomos irtikrinės teorijos aksiomos (neloginės). Šios formulės yra teorijos K loginėsaksiomos:

(A1) A⇒ (B ⇒ A);

(A2) (A⇒ (B ⇒ C))⇒ ((A⇒ B)⇒ (A⇒ C));

(A3) (¬B ⇒ ¬A)⇒ ((¬B ⇒ A)⇒ B);

(A4) (∀xF (x))⇒ F (y);

(A5) F (x)⇒ (∃xF (x)).

Kaip ir teiginių skaičiavimas, teorija K turi išvedimo taisykles:

(MP) modus ponens taisyklė:A, A⇒ B

∴ B;

(∀ – taisyklė)A⇒ B(x)

∴ A⇒ (∀xB(x));

(∃ – taisyklė)A(x)⇒ B

∴ (∃xA(x))⇒ B.

Page 33: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.5. PREDIKATŲ LOGIKA 33

Tikrinės teorijos K aksiomos apibrėžia konkrečią teoriją. Jei teorija K api-brėžta tik loginėmis aksiomomis bei išvedimo taisyklėmis, turime formali-zuotą predikatų skaičiavimą.

Parodykime, kaip įrodomos predikatų skaičiavimo teoremos.

1.14 pavyzdys. ∀x(A⇒ B(x)) ⊢ A⇒ (∀xB(x)):(a) ∀x(A⇒ B(x)) hipotezė;(b) ∀x(A⇒ B(x))⇒ (A⇒ B(x)) (A4);(c) A⇒ B(x) (a), (b) ir (MP);(d) A⇒ (∀xB(x)) (c) ir (∀ – taisyklė);

Parodykime, kaip gali būti apibrėžtos teorijos tikrinės aksiomos. Tarki-me, kad teorija neturi funkcinių raidžių bei dalykinių konstantų ir turi tikvieną predikatinę raidę P . Teorija apibrėžiamia dviem tikrinėmis aksiomo-mis

(a) ∀x(¬P (x, x));

(b) ∀x∀y∀z(P (x, y) & P (y, z)⇒ P (x, z)).

Tarkime, kad predikatas P (x, y) turi tokią prasmę”x < y“. Tada predikato

¬P (x, x) prasmė yra”x ≮ x“ ir aksiomos (a), (b) vadinamos antirefleksyvu-

mu bei tranzityvumu. Taigi turime aksiominę dalinės tvarkos teoriją.Kitas aksiominės teorijos pavyzdys yra grupių teorija. Turime vieną

predikatinę raidę P (x, y), vieną dalykinę konstantą c ir vieną funkcinę raidęf(x, y). Teorijos tikrinės aksiomos yra šios:

(a) ∀x∀y∀zP (f(x, f(y, z)), f(f(x, y), z));

(b) ∀xP (f(c, x), x);

(c) ∀x∃yP (f(x, y), c);

(d) ∀xP (x, x);

(e) ∀x∀yP (x, y)⇒ P (y, x);

(f) ∀x∀y∀zP (x, y) & P (y, z)⇒ P (x, z);

(g) ∀x∀y∀zP (y, z)⇒ P (f(x, z), f(y, z))&P (f(y, x), f(z, x)).

Page 34: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

34 1 SKYRIUS. MATEMATINĖ LOGIKA

Pastebėkime, kad čia c yra grupės neutralusis elementas, predikatas P (x, y)reiškia lygybę

”x = y“, funkcine raide f(x, y) pažymėta grupės operacija

x ∗ y. Taigi, pavyzdžiui, aksiomas (a), (b) ir (c) galima užrašyti ir taip:

(a) ∀x∀y∀z(x ∗ (y ∗ z)) = ((x ∗ y) ∗ z);

(b) ∀x(c ∗ x) = x;

(c) ∀x∃y(x ∗ y) = c.

Panašiai galima perrašyti ir kitas aksiomas. Komutatyvioji grupė reikalaujadar vienos aksiomos: ∀x∀yP (f(x, y), f(y, x)) arba ∀x∀y x ∗ y = y ∗ x.

Pastebėkime, kad lygybės predikatas (=) apibrėžiamas tokiomis savybė-mis:

(refleksyvumas) ∀x x = x;

(keitinys) (x = y) ⇒ (A(x, x) ⇒ A(x, y)), A(x, y) – bet kuri teorijosformulė.

Jei šios savybės yra teorijos aksiomos K arba teoremos, K vadinama teorijasu lygybe.

1.5.8. Formalioji aritmetika

Formalioji aritmetika apibrėžiama viena predikatine raide P (x, y), vienakonstanta c ir trimis funkcinėmis raidėmis f(x), g(x, y) ir h(x, y). Teorijostikrinės aksiomos:

(A1) P (x, y)⇒ (P (x, z)⇒ P (y, z));

(A2) P (x, y)⇒ P (f(x), f(y));

(A3) ¬P (c, f(x));

(A4) P (f(x), f(y))⇒ P (x, y);

(A5) P (g(x, c), x);

(A6) P (g(x, f(y)), f(g(x, y));

(A7) P (h(x, c), c);

(A8) P (h(x, f(y)), g(h(x, y), x));

Page 35: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.5. PREDIKATŲ LOGIKA 35

(A9) (A(0)⇒ (∀x(A(x)⇒ A(f(x)))⇒ ∀xA(x)),A(x) – bet kuri teorijos formulė.

Taigi čia predikatas P (x, y) reiškia lygybę, konstanta c yra 0, funkcinėmisraidėmis g(x, y) ir h(x, y) pažymėtos sudėties ir daugybos operacijos, raidėf(x) reiškia skaičių x+1. Pastebėkime, kad iš (A3) išplaukia, kad čia visi xyra natūralieji. Aksioma (A9) vadinama matematinės indukcijos principu.

Natūraliųjų skaičių formaliųjų apibrėžimų yra daug. Pateiksime darvieną formaliosios aritmetikos aksiomų sistemą. Predikatų skaičiavimas turi1) dalykinę konstantą 0;2) dvivietes funkcijas + ir ·, vienvietę (paskesniojo nario) funkciją ′;3) dvivietį predikatą =;4) aksiomų schemas (P – bet kuri formulė, t, t1, t2 – bet kurie termai):(A1) (P (0) & ∀x(P (x)⇒ P (x′))⇒ ∀xP (x);(A2) t′1 = t′2 ⇒ t1 = t2;(A3) ¬(t′ = 0);(A4) t1 = t2 ⇒ (t1 = t3 ⇒ t2 = t3);(A5) t1 = t2 ⇒ t′1 = t′2;(A6) t + 0 = t;(A7) t1 + t′2 = (t1 + t2)

′;(A8) t · 0 = 0;(A9) t1 · t′2 = t1 · t2 + t1.

1.5.9. Matematinės indukcijos principas

Kai reikia įrodyti kurį nors teiginį P (n), teisingą visiems sveikiesiemsarba natūraliesiems skaičiamas, turime įrodyti, kad teiginys ∀nP (n) yra tau-tologija. Kadangi šio teiginio neigimas ¬(∀nP (n)) yra ∃n(¬P (n)), įrodyti,kad P (n) negalioja visiems n, galima vienu kontrapavyzdžiu, t. y. rastitokį skaičių n0, kad ¬P (n0) = t. Tačiau įrodyti, kad tokio n0 nėra ir P (n)galioja visada gali būti sunku. Dažnai tokiems įrodymams taikomas

Matematinės indukcijos principas:Tarkime, kad P (n) yra toks predikatas, kad1) P (1) = t;2) ((∀k) (P (k)⇒ P (k + 1))) = t.Tada ((∀n)P (n)) = t, t. y. P (n) teisingas su visais natūraliaisias skaičiaisn.

Page 36: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

36 1 SKYRIUS. MATEMATINĖ LOGIKA

1.15 pavyzdys. Matematine indukcija įrodykime formulę

1 + 2 + 3 + · · ·+ n =

n∑

j=1

=n(n + 1)

2,

kuri išplaukia iš gerai žinomos aritmetinės progresijos ak+1 = ak + d

sumos formulėsn∑

k=1

ak =a1 + an

2n.

Pažymėję įrodoma formulę S(n), turime 1 =1(1 + 1)

2ir todėl

S(1) = t.Tarkime, kad S(k) = t. Reikia įrodyti, kad tada ir S(k +1) = t. Taigi

reikia įrodyti, kad jeik∑

j=1j =

k(k + 1)

2, tai

k+1∑

j=1j = (k+1)(k+2)

2 .

Turime

k+1∑

j=1

j =

k∑

j=1

j + (k + 1) (sudėties asociatyvumas)

=k(k + 1)

2+ (k + 1) (indukcijos prielaida)

=

(k

2+ 1

)

· (k + 1) (sudėties ir daugybos distributyvumas)

=k + 2

2(k + 1) (ekvivalentus reiškinio žymėjimas)

Taigi gavome, kad S(k) ⇒ S(k + 1) ir, remdamiesi matematinės in-

dukcijos principu, darome išvadą, kad formulėn∑

j=1= n(n+1)

2 galioja

visiems natūraliesiems n.

1.16 pavyzdys. Įrodykime formulę

12 + 22 + 32 + · · ·+ n2 =

n∑

j=1

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

6.

Turime P (1) = t:

12 =1(1 + 1)(2 · 1 + 1)

6.

Page 37: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.6. ALGORITMŲ TEORIJA 37

Įrodome P (k)⇒ P (k+1), t. y. kad jei formulėk∑

j=1j2 =

k(k + 1)(2k + 1)

6

yra teisinga, tai bus teisinga ir formulėk+1∑

j=1j2 =

(k + 1)(k + 2)(2(k + 1) + 1)

6.

Pertvarkome reiškinius:

12 + 22 + 32 + · · ·+ k2 + (k + 1)2 =

k∑

j=1

j2 + (k + 1)2 =

k(k + 1)(2k + 1)

6+ (k + 1)2 =

k(k + 1)(2k + 1) + 6(k + 1)2

6=

(k + 1)(2k2 + 7k + 6)

6=

(k + 1)(2k + 3)(k + 2)

6.

1.5.10. Giodelio nepilnumo teoremos

Aksiominis metodas turi principinius apribojimus. Juos nustato Giode-lio9 teoremos, kurias pateiksime be įrodymo.

Teorema. Bet kuri pakankamai turininga (pavyzdžiui, kai jai priklausoformalioji aritmetika) formalioji teorija turi tokią teisingą formulę F , kadnei F , nei ¬F nėra išvedamosios šios teorijos formulės.

Teorema. Bet kurioje pakankamai turiningoje (pavyzdžiui, kai jai priklausoformalioji aritmetika) formaliojoje teorijoje formulė F , tvirtinanti, kad šiteorija yra neprieštaringa, nėra išvedamoji.

Pastebėkime, kad tai nereiškia, kad teorija yra prieštaringa (formalioji arit-metika neprieštaringa). Tai reiškia, kad teorijos neprieštaringumas negalibūti nustatytas pačios teorijos priemonėmis. Jis gali būti nustatytas kitos,platesnės teorijos priemonėmis.

1.6. Algoritmų teorija

1.6.1. Algoritmo sąvoka

Algoritmas yra viena iš pagrindinių matematikos sąvokų. Žodis algorit-mas kyla nuo matematiko pavardės10 ir pradžioje reiškė aritmetinių veiksmų

9Kurt Gödel (1906 – 1978) – austrų logikas ir matematikas.10al-Chorezmi (Algorithmi) (787 – apie 850) – Vidurinės Azijos matematikas ir astro-

nomas.

Page 38: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

38 1 SKYRIUS. MATEMATINĖ LOGIKA

1.1 pav.. Euklido algoritmas

taisykles dešimtainėje sistemoje. Vėliau šis žodis įgyjo platesnę prasmę irpradėjo reikšti tam tikrų veiksmų rinkinį. Kurį laiką šį žodį vartojo tikmatematikai, kaip įvairių uždavinių sprendimo taisykles, pavyzdžiui, kvad-ratinės lygties sprendimo žingsnius arba kampo dalijimo pusiau skriestuvuir liniuote procedūrą. Dabar algoritmu galima pavadinti ir maisto gaminimoaprašymą kulinarinėje knygoje, naudojimosi telefonu automatu instrukciją,tekstinio pranešimo mobiliuoju telefonu siuntimą ir pan.

Nuo Euklido11 laikų algoritmo sąvoka yra susijusi su dviejų natūralių-jų skaičių didžiausiojo bendrojo daliklio radimu. Taigi, kaip matematiniouždavinio sprendimo proceso aprašymo pavyzdį, panagrinėkime Euklido al-goritmą: rasti kuo didesnį natūralųjį skaičių z, kuris būtų dalus iš abiejųnatūraliųjų skaičių x ir y.

Pavaizduokime veiksmų atlikimo schemą (1.1 pav.).

1.17 pavyzdys. Raskime skaičių x = 9 ir y = 12 didžiausiąjį bend-rąjį daliklį z, taikydami Euklido algoritmą. Surašome algoritmo veiks-mus:1) x := 9, y := 12;

11Eυκλειδης (apie 3a. pr. m. e.) – senovės Graikijos matematikas.

Page 39: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.6. ALGORITMŲ TEORIJA 39

2) x < y ⇒ y := y − x;3) y := 12− 9 = 3, x := 9;4) x > y ⇒ x := x − y;5) x := 9− 3 = 6, y := 3;6) x > y ⇒ x := x − y;7) x := 6− 3 = 3, y := 3;8) x = y ⇒ z := x.

Taigi gauname z = 3 – didžiausiąjį skaičių 9 ir 12 daliklį.

Analizuojant įvairius algoritmus, galima išskirti bendruosius jų paramet-rus:1) pradiniai duomenys (1.1 pav. atveju du natūralieji skaičiai);2) galimi galutiniai rezultatai (mūsų pavyzdžio atveju visada surandamasnatūralusis skaičius, tačiau yra uždavinių, kurie negali būti išpręsti ir reikianumatyti ką laikyti rezultatu);3) galimi tarpiniai rezultatai;4) pradžios taisyklė;5) pabaigos taisyklė (mūsų atveju algoritmas baigia darbą, kai x = y);6) atliekamos operacijos (čia palyginimas, atimtis ir priskyrimas (:=));7) rezultato gavimas (čia z := x).

1.6.2. Tiuringo mašina

Minėtų parametrų ir taisyklių formalizavimas buvo atliktas 1936 m. kaipabstrakčiosios skaičiavimo Tiuringo12 mašinos aprašymas. Ši mašinabuvo sėkmingas bandymas suformuluoti matematinį algoritmo apibrėžimąir, tikriausiai, nėra priklausoma nuo realiųjų kompiuterių, kadangi pirmojieletroninė skaičiavimo mašina pasirodė tik po 9 metų13. Tiuringo mašinaturi neribotą atmintį – begalinę padalytą sekcijomis juostą. Visos šios juos-tos sekcijos yra sunumeruotos. Į kiekvieną juostos sekciją galima rašyti ir išjos galima skaityti po vieną turimos baigtinės abėcėlės raidę. Skaitymą beirašymą atlieka Tiuringo mašinos galvutė, kurios veiksmus sudaro baigtinėmašinos būsenų aibė. Algoritmas apibrėžiamas kaip programa, kurią sudarojudančios išilgai juostos galvutės veiksmai: rašyti arba skaityti esamoje sek-cijoje (ląstelėje), pereiti juostos sekcijos atžvilgiu kairėn, dešinėn arba liktitoje pačioje pozicijoje, pakeisti galvūtės būseną arba baigti darbą.

12Alan Mathison Turing (1912 – 1954) – anglų matematikas.13Pirmoji ESM sukurta JAV 1946 m.

Page 40: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

40 1 SKYRIUS. MATEMATINĖ LOGIKA

Apibrėžkime Tiuringą mašiną smulkiau. Mašinos juosta turi be galodaug vienodų ląstelių (sekcijų), tačiau netuščių ląstelių gali būti tik baigtinisskaičius. Taigi į kiekvieną juostos ląstelę įrašytas tik vienas iš šių simboliųa0, a1, . . ., an. Baigtinė aibė

A = {a0, a1, . . . , an}

vadinama Turingo mašinos abėcele. Vienas abėcėlės simbolis (susitarkime,kad tai yra a0) vadinamas tuščiuoju. Kiekvienu laiko momentu Turingomašinos juosta turi tokį pavidalą:

· · · a0 aj1 aj2 · · · aj−1 bi aj aj+1 aj+2 · · · a0 · · ·

Mašinos galvutė parodytu laiko momentu turi būseną bi. Būsenų aibė

B = {b0, b1, . . . , bm}

irgi yra baigtinė. Būseną b0 vadinsime stabdos būsena. Tiuringo mašinosjuostą su nurodyta galvutės vieta ir būsena vadiname mašinos momentiniuaprašu. Momentinį aprašą galima apibūdinti ir taip

aj1 aj2 · · · aj−1 biaj aj+1 · · ·

Jei mašina nėra stabdos būsenoje (t. y. bi 6= b0), kitu laiko momentu14 jįatlieka šiuos veiksmus:1) skaito iš ląstelės simbolį aj ∈ A;2) rašo į tą pačią ląstelę simbolį ak ∈ A;3) pasislenka viena ląstele į kairę, į dešinę arba lieka toje pačioje ląstelėje;4) įgyja nauja būseną bi ∈ B.Šie veiksmai priklauso nuo mašinos programos, kuri gali būti užrašyta to-kios perėjimų lentelės pavidalu

b1 b2 · · · bm

a0 bi0j1ai0j1Ji0j1 bi1j2ai0j2Ji0j2 · · · bi0jmai0jm

Ji0jm

a1 bi1j1ai1j1Ji1j1 bi1j2ai1j2Ji1j2 · · · bi1jmai1jm

Ji1jm

· · · · · · · · · · · · · · ·an binj1ainj1Jinj1 binj2ainj2Jinj2 · · · binjm

ainjmJinjm

Čia Jij pažymėta mašinos galvutės judėjimo komanda:L – pereiti viena ląstele į kairę,

14Turingo mašina veikia diskrečiaisiais laiko momentais 1, 2, 3, . . ..

Page 41: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.6. ALGORITMŲ TEORIJA 41

R – į dešinę,S – nejudėti.Vieną lentelės (programos) komandą galima užrašyti ir taip:

bjai −→ b′ja′iJij .

1.18 pavyzdys. Tiuringo mašinos abėcėlę sudaro du simboliai 0 ir 1,o būsenų aibė yra tokia: s, b1, b2. Tarkime, kad turime programą

P1 = {b10 −→ b10S, b11 −→ b11S, b20 −→ b20S, b21 −→ b21S}

Taigi Tiuringo mašina T1 = {{0, 1}, {s, b1 , b2}, P1, 0, s}15 nekeičia juos-toje įrašytų simbolių, nekeičia mašinos būsenos ir neduoda galvutėsjudėjimo komandų. Akivaizdu, kad ši mašina nekeičia juostos turinioir niekada nesustoja.

1.19 pavyzdys. Pakeiskime programą

P2 = {b10 −→ b11R, b11 −→ s1R, b20 −→ b21R, b21 −→ s1S}

ir išnagrinėkime mašiną T2 = {A,B,P2, 0, s}, A = {0, 1}, B = {s, b1, b2}.

Matome, kad galvutė skaito simbolį 1, pasislenkia viena ląstele į dešinęir pereina į stabdos būseną. Taigi jei juostoje yra įrašytų simbolių 1 ir esan-ti būsenoje b1 (arba b2) galvutė skaito kurį nors iš jų, mašina sustoja. Jeigalvutė skaito 0, tai vietoje jo rašomas 1 ir galvutė pasislenka į dešinę. Tar-kime, kad laiko momentu 1 mašinos T2 juostoje yra įrašas · · · 01 0 0010 · · ·ir galvutė yra parodytoje vietoje. Tada mašina baigia darbą laiko momentu4 ir jos darbo eiga bus tokia

· · · 0 0 · · · 1 b1 0 0 0 1 0 0 · · ·

· · · 0 0 · · · 1 1 b1 0 0 1 0 0 · · ·

· · · 0 0 · · · 1 1 1 b1 0 1 0 0 · · ·

· · · 0 0 · · · 1 1 1 1 b1 1 0 0 · · ·

· · · 0 0 · · · 1 1 1 1 1 s 0 0 · · ·

15Čia parodyta mašinos abėcėlė, būsenų aibė, programa, tuščiasis simbolis ir stabdosbūsena.

Page 42: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

42 1 SKYRIUS. MATEMATINĖ LOGIKA

Pastebėkime, kad mašinos T2 būsena b1 nieko nesiskiria nuo būsenos b2 irprogamą P2 galima sutrumpinti: P ′

2 = {b0 −→ b1R, b1 −→ s1R}, B′ ={s, b}.

1.20 pavyzdys. Tarkime, kad turime programą

P3 b1 b2

0 b11R s0L

1 b21 b21L

Parodykime Tiuringo mašinos T3 = {A,B,P3, 0, s} darbo eigą, kaipradiniu laiko momentu aprašas sutampa su išnagrinėtu atveju T2:

01b100010 −→ 011b10010 −→ 0111b1010 −→ 01111b110 −→01111b210 −→ 0111b2110 −→ 011b21110 −→

01b211110 −→ 0b2111110 −→ b20111110 −→ s00111110.

Matome, kad mašinos būsenos b2 būvis programoje leido pastumpti gal-vutę ne tik į žodžio pradžią, bet ir dviem pozicijomis kairėn. Šis pavyzdysyra geras paaisiškinimas Tiuringo mašinų modifikavimų galimybių. Tarki-me, kad naujas mašinos aprašas apibrėžiamas ne trimis, o tik dviem simbo-liais

bjai −→ b′ja′i, arba

bjai −→ bjL, arba

bjai −→ bjR.

Tokia mašina vienu laiko momentu negali ir keisti į ląstelę įrašytą simbolį,ir judinti galvutę. Apibrėžkime dar vieną mašinos būseną b′′j , į kurią pereinamašina atlikus komandą bjai −→ b′ja

′i. Tada galima apibrėžti dar n + 1

(i = 0, 1, . . . , n) komandą b′′j a′i −→ bjJji, J ∈ {L,R, S}. Taigi gauname

mašiną, ekvivalenčią mašinai bjai −→ b′ja′iJij .

Išnagrinėkime dar kelis Tiuringo mašinų pavyzdžius.

1.21 pavyzdys. Dviejų natūraliųjų skaičių sudėtis. Natūralujį skai-čių k galima išreikšti k iš eilės įrašytais Tiuringo mašinos juostojevienetais. Tada skaičių k ir l sumą užrašome tokiu mašinos aprašu

· · · 0 11 · · · 11︸ ︷︷ ︸

k kartų

+

l kartų︷ ︸︸ ︷

11 · · · 11 0 · · ·

Page 43: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.6. ALGORITMŲ TEORIJA 43

Tiuringo mašinos abėcėlė A = {0, 1,+}, būsenų aibė B = {s, b1, b2, b3}.Programą apibrėžkime tokia lentele

b1 b2 b3

0 s 0 S b3 1 R b1 0 L

1 b2 0 L b2 1 L b3 1 R

+ s 0 S b2 + L b3 + R

Kai pradiniu laiko momentu galvutės būsena yra b1 ir galvutė skaitodešinįjį vienetą, mašina sustoja esant tokiam momentiniam aprašui

· · · 0k+l kartų︷ ︸︸ ︷

11 · · · 11 b0 0 · · ·

Pavyzdžiui, jei pradiniu momentu turime 1 + b1 1 , skaičiavimo eigabus tokia:

1 + b11 −→ 1b2 + 0 −→ b21 + 0 −→ b201 + 0 −→ 1b31 + 0

−→ 11b3 + 0 −→ 11 + b30 −→ 011b1 + 0 −→ 11s00.

1.22 pavyzdys. Vieneto pridėjimas dešimtainėje skaičiavimo siste-moje. Tiuringo mašinos abėcėlė A = {Λ, 0, 1, . . . , 9}, būsenų aibėB = {s, b}. Programa yra tokia (apibrėžkime tik būtinas komandas):pradiniu laiko momentu galvutė skaito dešinįjį simbolį ir turi būsenąb. Jei skaitomas simbolis x nėra 9, jis keičiamas į simbolį x + 1 irmašina prereina į stabdos būseną s. Kai x = 9, jo vietoje rašomas 0 irgalvutė, nekeisdama mašinos būsenos, pasislenka į kairę. Taigi turimetokį pavyzdį:

Λ229b9Λ −→ Λ22b90Λ −→ Λ2b200Λ −→ Λ2s300Λ.

1.6.3. Rekursyviosios funkcijos

Apibrėžkime formaliąją funkcijų sistemą, kurią sudaro bazinės funkcijosir tam tikros naujų funkcijų generavimo taisyklės. Bazinės funkcijos yrašios natūraliųjų argumentų funcijos:1) nulinė funkcija: o(x) = 0 su visais x;2) paskesniojo nario funkcija s(x) = x + 1 su visais x;3) projekcijų funkcijos prn

m(x1, x2, . . . , xn) = xm su visais x1, x2, . . ., xn,m = 1, 2, . . . , n.

Pavyzdžiui, pr11(x1) = x1, pr2

2(x1, x2) = x2, pr43(x1, x2, x3, x4) = x3. Pa-

stebėkime, kad reiškiniai pr12(x1, x2) arba pr4

5(x1, x2, x3, x4) neturi prasmės.

Page 44: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

44 1 SKYRIUS. MATEMATINĖ LOGIKA

Suformuluokime naujų funkcijų sudarymo taisykles.1. Kompozicija. Turime funkcijas f(x1, x2, . . . , xm), g1(x1, x2, . . . , xn),g2(x1, x2, . . . , xn), . . ., gm(x1, x2, . . . , xn). Sudarome naują funkciją (funkcijųkompoziciją):

h(x1, x2, . . . , xn) =

f(g1(x1, x2, . . . , xn), g2(x1, x2, . . . , xn), . . . , gm(x1, x2, . . . , xn)).

Pavyzdžiui, funkciją o(x1, x2, . . . , xn) = 0 gauname taip:f(x1) = o(x1), g1(x1, x2, . . . , xn) = prn

1 (x1, x2, . . . , xn) iro(x1, x2, . . . , xn) = o(prn

1 (x1, x2, . . . , xn)) = 0.Funkciją xm + 1 gauname panašiai: f(x1) = s(x1),

g1(x1, x2, . . . , xn) = prnm(x1, x2, . . . , xn), s(prn

m(x1, x2, . . . , xn)) = xm + 1.

2. Primityvioji rekursija. Turime funkcijas g(x1, x2, . . . , xn),h(x1, x2, . . . , xn, xn+1, xn+2) n > 1. Funkcija f(x1, x2, . . . , xn, xn+1) apibrė-žiama taip:

f(x1, x2, . . . , xn, 0) = g(x1, x2, . . . , xn),

f(x1, x2, . . . , xn, y + 1) = h(x1, x2, . . . , xn, y, f(x1, . . . , xn, y)).

Pavyzdžiui, funkciją f(x1, x2) = x1 + x2 galima gauti taip:

f(x1, 0) = pr11(x1) = x1,

f(x1, x2 + 1) = s(pr33(x1, x2, f(x1, x2)) = f(x1, x2) + 1.

1.17 apibrėžimas. Funkcija vadinama primityviai rekursyviąja,jei ji gali būti gauta iš bazinių funkcijų, atlikus baigtinį skaičių kompo-zicijų ir primityviųjų rekursijų. Visų primityviai rekursyviųjų funkcijųaibę žymėsime PR.

Funkcija f(x) = 3 gaunama taip: s(s(o(x)) = s(s(0)) = s(s(0) + 1) =s(1 + 1) = s(2) = 2 + 1 = 3. Todėl ji yra primityviai rekursivioji.

Galima parodyti, kad primityviai rekursyviosios yra funkcijos x · y, xn,xy, daugianariai su natūraliaisiais koeficientais ir kt.

Pastebėkime, kad visos primityviai rekursyviosios funkcijos apibrėžtosbet kurioms argumentų reikšmėms, t. y. visur apibrėžtos. Nagrinėsimefunkcijas, kurios gali būti apibrėžtos tik kai kurioms argumentų reikšmėms.

1.18 apibrėžimas. Minimizavimo operatoriumi vadiname ope-raciją µ, kuri apibrėžiama taip. Tarkime, kad g(x1, x2, · · · , xn, y) –

Page 45: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.6. ALGORITMŲ TEORIJA 45

bet kuri funkcija. Fiksuojame reikšmes x01, x0

2, . . ., x0n ir žymime

µy[g(x01, x

02, . . . , x

0n, y) = 0] mažiausią skaičių y, tokį, kad

1) su visais t, 0 6 t < y funkcija g(x01, x

02, · · · , x0

n, t) apibrėžta ir tei-giama;2) g(x0

1, x02, · · · , x0

n, y) apibrėžta ir lygi nuliui.Jei bent viena iš šių sąlygų negalioja, sakome, kad operacija µy[g(x0

1, x02, . . . , x

0n, y) =

0] neapibrėžta.

Pavyzdžiui, kai g(x, y) = x − y + 5. Turime µy[6 − y − 5 = 0] = 1,µy[7−y+5 = 0] = 2. Operacijos µy[g(0, y) = 0], µy[g(1, y) = 0], µy[g(2, y) =0], µy[g(3, y) = 0], µy[g(4, y) = 0], µy[g(5, y) = 0] neapibrėžtos natūraliųjųskaičių aibėje.

Apibrėžimai. Sakome, kad funkciją

f(x01, x

02, . . . , x

0n) = µy[g(x0

1, x02, . . . , x

0n, y) = 0]

gauname minimizavimo operatoriumi. Ši funkcija gali būti apibrėžta nevisoms argumentų reikšmėms. Visų funkcijų, gaunamų iš bazinių funkcijųkompozicijos, primityviosios rekursijos ir minimizavimo operacijomis, aibė(klasė) vadinama dalinių rekursyviųjų funkcijų aibe (žymime DR). Kaikurios iš šių funkcijų apibrėžtos visur ir sudaro bendrųjų rekursyviųjųfunkcijų klasę (žymime BR).

TurimePR ⊂ BR ⊂ DR.

Tarkime, kad Tiuringo mašinos abėcėlė yra A = {Λ, 0, 1}. Kokie bebūtųnatūralieji skaičiai x1, x2, . . ., xn, juos galima pavaizduoti mašinos juostoje:

· · ·Λx1

︷ ︸︸ ︷

01 · · · 01 Λ

x2︷ ︸︸ ︷

01 · · · 01 Λ · · ·Λxn

︷ ︸︸ ︷

01 · · · 01 Λ · · ·

Turime funkciją y = f(x1, x2, . . . , xn). Jei po baigtinio skaičiaus žingsniųmašina sustoja standartinėje būsenoje

· · ·Λy

︷ ︸︸ ︷

s 0 01 · · · 0101 Λ · · · ,

tai sakome, kad Tiuringo mašina apskaičiuoja funkcijos f(x1, . . . , xn) reikš-mę y. Kai mašina apskaičiuoja visas funkcijos reikšmes, sakome, kad funk-cija apskaičiuojamoji.

Page 46: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

46 1 SKYRIUS. MATEMATINĖ LOGIKA

Teorema. Funkcija yra apskaičiuojamoji tada ir tik tada, kai ji yradalinė rekursyvioji funkcija.

Tarkime, kad Tiuringo mašinos T juostoje pradiniu laiko momentu įra-šytas natūralusis skaičius m (t. y. užkoduotas mašinos abėcėlės simboliais,pvz., nuliais ir vienetais). Mes žinome, kad mašina gali sustoti, t. y. per-eiti į stabdos būseną atlikus baigtinį skaičių žingsnių, o gali ir nesustoti pobet kurio skaičiaus žingsnių. Pirmuoju atveju sakome, kad skaičius (žodis)m yra priimtinas mašinai, o antruoju – nepriimtinas. Jei nagrinėjamabet kuri Tiuringo mašina ir bet kuris natūralusis skaičius (sakome, kadtai yra masinis uždavinys), atsakyti į klausimą ar žodis priimtinas mašinainegalima.

Patikslinkime šį teiginį. Visas Teiloro mašinas T galima sunumeruo-ti! Tarkime, kad n mašinos T numeris. Reikia sukonstruoti naują Teiloromašiną P , kurį pradeda darbą, kai juostoje įrašyti du žodžiai

· · ·Λm

︷ ︸︸ ︷

01 · · · 01 Λ

n︷ ︸︸ ︷

01 · · · 01 Λ · · ·

Mašina P turi baigti darbą su momentiniu aprašu

· · ·Λ b0 1 Λ · · · ,

kai žodis m priimtinas mašinai T . Priešingu atveju, t. y., kai žodis m ne-priimtinas mašinai T , ji sustoja su momentiniu aprašu

· · ·Λ b0 0 Λ · · · .

Įrodyta, kad tokia Tiuringo mašina P neegzistuoja. Kitaip tariant,baigtinumo problema algoritmiškai neišsprendžiama.

Neišsprendžiamų problemų yra daug. Pavyzdžiui, negalima nustatyti, arbet kuri Tiuringo mašiną perveda žodį m1 į žodį m2.

Page 47: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.7. KLAUSIMAI IR UŽDUOTYS 47

1.7. Klausimai ir užduotys

Klausimai žinioms pasitikrinti

Nurodykite loginių operacijų pavadinimus

1.11. ∨ ←→ A. disjunkcija2. & ←→ B. implikacija3. ⇒ ←→ C. konjunkcija

1© ACB; 2© BAC;3© CAB; 4© ABC;5© BCA; 6© CBA.

Nurodykite loginių operacijų pavadinimus

1.2

1. ⇒ ←→ A. ekvivalentumas2. ⇔ ←→ B. neigimas3. ¬ ←→ C. implikacija

1© BCA; 2© ACB;3© BAC; 4© CBA;5© ABC. 6© CAB

Nurodykite teisingą lygybę

1.3 p ∨ (0⇒ p) = 1© p; 2© 0; 3© p; 4© 1.

Nurodykite teisingą lygybę

1.4 y ⊕ y = 1© 1; 2© 0; 3© y; 4© y.

Nurodykite teisingą lygybę

1.5 1⇔ y = 1© y; 2© 0; 3© y; 4© 1.

1.6Kuri loginė operacija (∗)apibrėžta lentele?

v t v ∗ t

0 0 00 1 01 0 01 1 1

1© v&t;2© v ⇔ t;3© v ∨ t;4© v ⇒ t.

Page 48: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

48 1 SKYRIUS. MATEMATINĖ LOGIKA

1.7 Loginė operacija t&r apibrėžta lentele

t \ r 0 1

0 0 11 1 1

t \ r 0 1

0 0 01 0 1

t \ r 0 1

0 1 01 0 1

t \ r 0 1

0 1 11 1 0

Nurodykite tautologijas

1.81. y ∨ y ⇔ A. x&y2. y ∨ y ⇔ B. 13. y&x ⇔ C. y

1© CAB; 2© CBA;3© BCA; 4© BAC;5© ABC; 6© ACB.

Nurodykite tautologijas

1.91. r ⇒ r ⇔ A. r2. r ⇒ r ⇔ B. 13. r ⇒ r ⇔ C. r

1© BAC; 2© CBA;3© ABC; 4© ACB;5© CAB; 6© BCA.

1.10Kuri loginė formulė yra tautologija?(G) r ⇔ r;(H) r ⇔ r;

1© nė viena;2© abi formulės;3© (G);4© (H).

1.11Kuri loginė formulė yra prieštara?(Q) w⇒ w;(R) w ∨w;

1© (R);2© abi formulės;3© (Q);4© nė viena.

Nurodykite logikos dėsnių pavadinimus

1.12

1. ((y ∨ g)&r)⇔ ((y&r) ∨ (g&r)) ←→ A. komutatyvumas2. ((y&g)&r)⇔ (y&(g&r)) ←→ B. distributyvumas3. (y&g)⇔ (g&y) ←→ C. asociatyvumas

1© BAC; 2© BCA; 3© CBA; 4© ABC; 5© ACB; 6© CAB.

Page 49: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.7. KLAUSIMAI IR UŽDUOTYS 49

Nurodykite logikos dėsnių pavadinimus

1.131. s&s ←→ A. negalimas trečiasis2. s ∨ s ←→ B. prieštaravimas3. s⇔ s ←→ C. dvigubas neigimas

1© BCA; 2© ACB;3© BAC; 4© ABC;5© CAB; 6© CBA.

1.14

Iš dėsnioišplaukia, kadp&s =

A p ∨ sB silogizmoC de MorganoD p ∨ s

1© CD;2© BA;3© BD;4© CA.

1.15Iš dėsnioišplaukia, kady ⇒ w ⇔

A w⇒ yB kontrapozicijosC idempotentumoD y ⇒ w

1© CA;2© BA;3© BD;4© CD.

Pratimai

U1.1. Raidėmis U , B ir C pažymėti teiginiai: U = "Vitas yra studentas";B = "Skirmantas yra studentas"; C = "Jonas yra studentas".(a) Tada teiginį "Ne visi šie vaikinai yra studentai" galima išreikšti formule

1© U&B&C ∨ U&B&C ∨ U&B&C; 2© U ∨B ∨ C;3© U ∨B ∨ C; 4© U&B&C;5© U&B ∨ C; 6© U&B&C ∨ U&B&C.

(b) Tą patį teiginį galima užrašyti ir taip1© U&B&C;2© (U ∨B ∨C)&U&B ∨ U&C ∨B&C;

3© U&B&C ∨ U&B ∨ U&C ∨B&C;4© U&B&C ∨ U&B ∨ U&C ∨B&C;5© U ∨B ∨ C;6© U ∨B ∨ C.

Page 50: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

50 1 SKYRIUS. MATEMATINĖ LOGIKA

(c) Formulė U&B ∨ C reiškia, kad1© kas nors (arba Vitas, arba Skirmantas) nėra studentas,

o Jonas tikrai nėra studentas;2© ir Vitas, ir Skirmantas nėra studentas arba (bet ne visi)

Jonas nėra studentas;3© ir Vitas, ir Skirmantas nėra studentas arba (gal ir visi)

Jonas nėra studentas;4© arba Vitas, arba Skirmantas nėra studentas (bet ne abu) ir

Jonas nėra studentas.

U1.2. Turnyre dalyvauja šeši sportininkai: Liutauras, Gediminas, Vilius,Rytis, Tomas, Antanas. Tą pačią rungtynių vietą gali užimti tik vienas spor-tininkas. Penki sportinės loterijos lošėjai prognozavo tokius rezultatus:1) Rytis – ketvirtas, Vilius – trečias;2) Vilius – pirmas, Gediminas – penktas;3) Antanas – pirmas, Liutauras – trečias;4) Rytis – ketvirtas, Tomas – penktas;5) Liutauras – ketvirtas, Gediminas – antras.Yra žinoma, kad kiekvienas lošėjas atspėjo bent vieną turnyro rezultatą.

(a) Kas buvo pirmas?(b) Kas buvo antras?(c) Kas buvo paskutinis?(d) Kelintas buvo Liutauras?(e) Kelintas buvo Rytis?

U1.3. Nustatykite propozicinės formulės(((q&a)⇒ t)⇔ (a ∨ r))&(t⇒ (q ⇔ (r ↓ (a | t))))gylį. Perrašykite šią formulę postfiksiniu pavidalu.

Page 51: Matematinė logika - inga.vgtu.ltinga.vgtu.lt/.../Studiju_medziaga/2007R/DM1/1/Matematine_logika.pdf · 1 skyrius Matematinė logika Graikiškas žodis logos (λoγoς´ ) reiškia

1.7. KLAUSIMAI IR UŽDUOTYS 51

Įrodykite predikatų teorijos dėsnį ∀yR(y)⇒ R(z) (F )

1

Pažymėkime N predikato(A) apibrėžimo(B) teisingumo(C) reikšmių

sritį

ir R+ – jo(A) teisingumo(B) apibrėžimo(C) reikšmių

sritį.

1© BB; 2© CA; 3© CB;4© BC; 5© AB; 6© AC;7© BA; 8© CC; 9© AA.

2

(1) Tarkime, kad N 6= ∅ ir R+ = N .

Tada (A) ∀yR(y) = t

(B) ∀yR(y) = k

ir (A) R(z) = k

(B) R(z) = t

Čia z – (A) dalykinis(B) loginis

kintamasis.

Taigi turime t⇒ t ir (F ) = t.

1© ABB; 2© BAA;3© ABA; 4© BBA;5© BAB; 6© AAB;7© BBB; 8© AAA.

3

(2) Tarkime, kad N 6= ∅ ir R+ 6= N . Tada(A) ∀yR(y) = t

(B) ∀yR(y) = k

ir (A) (F ) = (t ⇒ R(z))(B) (F ) = (k ⇒ R(z))

Taigi šiuo atveju (A) (F ) = t

(B) (F ) = k

1© BBB; 2© ABA;3© AAB; 4© BBA;5© BAA; 6© BAB;7© ABB; 8© AAA.

4

(3) Tarkime, kad N = ∅. Tada(A) R+ 6= ∅(B) R+ = ∅

ir (A) ∀yR(y) = k

(B) ∀yR(y) = t

Taigi turime (A) antrąjį (2)(B) pirmąjį (1)

atvejį.

1© BBA; 2© BAA;3© BAB; 4© AAB;5© ABA; 6© BBB;7© ABB; 8© AAA.