• Nem Talált Eredményt

Automatikus tételbizonyítás

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Automatikus tételbizonyítás"

Copied!
149
0
0

Teljes szövegt

(1)

Automatikus tételbizonyítás

előadások

Várterész Magda

Kádek Tamás

(2)

Automatikus tételbizonyítás: előadások

Várterész Magda Kádek Tamás

(3)

Table of Contents

1. Előszó ... 1

2. Bevezetés ... 2

1. Az elsőrendű nyelv szintaxisa ... 2

2. Az elsőrendű nyelv klasszikus szemantikája ... 13

3. Logikai kalkulusok ... 22

3. Helyettesítések ... 25

1. Változók helyettesítése termekkel ... 25

2. Illesztő helyettesítés ... 35

3. Feladatok ... 46

4. Normálformák ... 48

1. Konjunktív és diszjunktív normálformák ... 48

2. Prenex alakú formulák ... 50

3. Skolem-normálforma ... 53

4. Elsőrendű klózok ... 58

5. Feladatok ... 59

5. Frege stílusú kalkulus ... 61

1. A predikátumkalkulus ... 61

2. Feladatok ... 69

6. Gentzen kalkulusai ... 70

1. A természetes levezetés ... 70

2. A szekventkalkulus ... 81

3. Feladatok ... 94

7. A rezolúciós kalkulus ... 96

1. A Herbrand-univerzum és az elsőrendű klózhalmazok ... 96

2. Az alaprezolúció ... 111

3. Az elsőrendű rezolúció ... 119

4. Rezolúciós levezetési stratégiák ... 137

4.1. 1. A teljes szintek módszere ... 137

4.2. 2. A törlési stratégia ... 138

4.2.1. Befoglalási algoritmus ... 139

5. Feladatok ... 142

Hivatkozások ... 144

(4)

List of Tables

3.1. ... 33

4.1. asszociativitás ... 48

4.2. kommutativitás ... 48

4.3. disztributivitás ... 48

4.4. idempotencia ... 48

4.5. elimináció (elnyelés) ... 48

4.6. De Morgan törvényei ... 49

4.7. kiszámítási törvények ... 49

4.8. logikai jelek közötti összefüggések ... 49

4.9. kétszeres tagadás ... 49

4.10. negáció az implikációban ... 49

4.11. kvantoros De Morgan-törvények ... 51

4.12. kvantorok egyoldali kiemelése, ... 51

4.13. kvantorok kétoldali kiemelése ... 51

4.14. kvantorhatáskör-átjelölés, ... 51

7.1. ... 97

7.2. ... 98

7.3. ... 100

7.4. ... 104

7.5. ... 104

7.6. ... 104

7.7. ... 112

7.8. ... 116

7.9. ... 123

7.10. ... 123

7.11. ... 134

7.12. ... 135

7.13. ... 136

7.14. ... 137

(5)

Chapter 1. Előszó

Informatikus hallgatók számára megkerülhetetlen a matematikai logika tanulmányozása. A felsőoktatási intézmények tantervei tartalmazzák is a logika informatikában fontos fejezeteinek oktatását. A Debreceni Egyetem Informatikai Karán már az alapképzés során tanítjuk (a logika nyelvészeti tárgyalásmódja keretei között) a logikai nyelvek szintaxisát, klasszikus szemantikáját. Mesterképzésben pedig sort kerítünk a logikai kalkulusok és a logikai programozás alapjainak megtanítására.

Logika könyvek és tankönyvek sora segíti a tanulást, mégsincs könnyű dolga a hallgatónak. A tanulási folyamat során (tapasztalataink szerint) zavarja a hallgatót a különböző könyvek szóhasználatában és jelölésrendszerében való lényeges eltérés és a példák hiánya.

Jelen munkában a logikai kalkulusokról a mesterképzésben elsajátítandó ismereteket foglaltuk össze. A tananyag a DE IK programtervező informatikus hallgatóinak képzése során szerzett tapasztalatokat felhasználva alakult ki. A gyökerek Dragálin Albert professzor (1941-1998) matematikai logikából és mesterséges intelligenciából az 1990-es években tartott debreceni előadásaiból indulnak. Felhasználtuk Pásztorné Varga Katalin (ELTE, egyetemi docens) 1998 és 2010 között Debrecenben tartott előadásait és a 2003-ban a jelen tankönyvírók egyikével írt monográfiáját. A példák és feladatok egy része a szerzőknek Robu Judittal (Babes- Bolyai Egyetem, egyetemi docens) 2010-ben írt feladatgyűjteményéből való. Természetesen felhasználtunk más, az irodalomban felsorolt forrást is.

Az olvasótól elvárjuk az alapképzés során elsajátított logikai tananyag ismeretét, a logikai nyelvek szintaxisával és klasszikus szemantikájával kapcsolatos fontos fogalmak és tételek tudását. Témánkat tanulmányozhatja kizárólag ebből az anyagból, ugyanakkor erősen ajánljuk előadások látogatását, vagy az irodalomban felsorolt könyvek forgatását.

Észrevételeiket szívesen vesszük a varteresz.magda@inf.unideb.hu címen.

Debrecen, 2014. március 15.

A tananyag összeállítói

(6)

Chapter 2. Bevezetés

Jelen tananyag olvasójáról feltesszük, hogy az elsőrendű logikai nyelv szintaxisával és klasszikus szemantikájával kapcsolatos alapvető fogalmakat és fontos tételeket ismeri. A könyvben használt fogalom- megnevezések és jelölések tisztázására röviden mégis sort kerítünk. A bevezető fejezet elolvasása egyúttal segíti a korábban tanult és jelen tankönyvben szükséges logikai ismeretek felidézését is. Logikai alapozó kurzusokon gyakran a többfajtájú elsőrendű logikai nyelv kerül bevezetésre. A logikai kalkulusokat ugyanakkor most egyfajtájú nyelv segítségével tárgyaljuk, így a bevezetésben sem esik szó a többfajtájú nyelvekről.

1. Az elsőrendű nyelv szintaxisa

Egy (egyfajtájú) elsőrendű logikai nyelv ábécéje először is tartalmaz ún. logikán kívüli betűket: ezeket a

(2.1)

három halmazból álló rendszerrel adjuk meg.

a nyelv konstansszimbólumainak halmaza.

• Az

halmaz elemei függvényszimbólumok . Minden

-hez tartozik egy

természetes szám, az

függvényszimbólum aritása.

• A

halmaz elemei predikátumszimbólumok . Minden

-hez rendelünk egy

természetes számot, a

(7)

predikátumszimbólum aritását. A

aritású predikátumszimbólumot propozicionális szimbólumnak (állítás szimbólumnak) is szoktuk nevezni.

Egy elsőrendű logikai nyelvben megszámlálhatóan végtelen sok (individuum)változó áll rendelkezésünkre:

(ezekre gyakran az

betűkkel hivatkozunk). Az ábécé tartalmaz még logikai jeleket: a

negáció ,

konjunkció ,

diszjunkció ,

implikáció összekötő jeleket és az

univerzális és

egzisztenciális kvantorokat . (A továbbiakban jelölje

mindig a

és a

logikai összekötő jelek valamelyikét,

pedig valamelyik kvantort.) Használhatjuk még a

zárójeleket és a vesszőt.

(8)

A

ábécé feletti elsőrendű logikai nyelv termek és formulák ( logikai kifejezések ) halmaza. A nyelv termjeinek halmaza az a legszűkebb

halmaz, melynek

• minden konstansszimbólum (

elemei) és változó eleme, és

• ha

egy

aritású függvényszimbólum és

elemei

-nek (azaz termek), akkor az

szó is eleme

-nek (term).

A nyelv formuláinak halmaza az a legszűkebb

halmaz, melynek

• minden

alakú szó eleme (azaz formula, ún. atomi formula ), ha

egy

(9)

aritású predikátumszimbólum és

rendre termek (elemei

-nek), továbbá

• ha

és

elemei

-nek (formulák) és

változó, akkor az

alakú szavak szintén elemei

-nek (formulák).

Egy elsőrendű logikai nyelvben egyetlen konstansnak és változónak sincs közvetlen résztermje , az

term közvetlen résztermjei pedig a

termek. Egy atomi formulának nincs közvetlen részformulája ,

egyetlen közvetlen részformulája

,

bal oldali közvetlen részformulája

(10)

, jobb oldali közvetlen részformulája

,

közvetlen részformulája

. (

-ban a

-re kvantoros előtagként hivatkozunk, és azt mondjuk, hogy ebben az előtagban a kvantor az

változót nevezi meg.) Egy

term résztermjeinek halmaza a legszűkebb olyan halmaz, melynek

eleme, és ha egy term eleme, akkor eleme a term összes közvetlen résztermje is. Egy

formula részformuláinak halmaza az a legszűkebb halmaz, melynek

eleme, és ha egy formula eleme, akkor eleme a formula összes közvetlen részformulája is.

Konstansszimbólum és változó szerkezeti fája egyetlen, a szimbólumot tartalmazó csúcsból áll. Ez a csúcs a fa gyökere.

szerkezeti fájának gyökere

, a gyökér

(11)

darab gyermeke rendre

szerkezeti fáinak gyökerei. Atomi formula szerkezeti fája egyetlen ezt a formulát tartalmazó csúcsból áll, ami a fa gyökere.

szerkezeti fájának gyökere

, a gyökér egyetlen gyermeke az

szerkezeti fájának gyökere.

szerkezeti fájának gyökere

, a gyökér bal oldali gyermeke az

, jobb oldali gyermeke a

szerkezeti fájának gyökere.

szerkezeti fájának gyökere

, a gyökér egyetlen gyermeke az

szerkezeti fájának gyökere.

Legyenek az

és az

függvények a következők:

(12)

(2.2)

(2.3)

funkcionális összetettsége ,

logikai összetettsége .

Egy formulában egy logikai jel hatásköre a formulának azon részformulái közül a legkisebb logikai összetettségű, amelyekben az adott logikai jel is előfordul. Egy formula fő logikai jele az a logikai jel, melynek hatásköre maga a formula.

A formulák leírásakor használhatunk rövidítéseket. Például ha néhány formulából újabbat ugyanolyan módon gyakran készítünk, a szerkesztés módjára új (összekötő) jelet vezethetünk be. A külső zárójeleket elhagyhatjuk.

A logikai összekötő jelekhez, a kvantorokhoz és a bevezetett jelekhez erősorrendet rendelhetünk. Ennek megfelelően, a jelek értelmezését a formulában az alábbi – az erősebbtől a gyengébb felé haladó – sorrendnek megfelelően végezzük el: 1. kvantorok (

,

), 2. negáció (

), 3. konjunkció (

) és diszjunkció (

), 4. implikáció (

(13)

), 5. bevezetett jelek.

Egy formulában egy változónak kétféle előfordulását különböztetjük meg. Az

változó egy adott előfordulása az

formulában kötött , ha egy, az

-et megnevező kvantor hatáskörében van. Az

változó előfordulása szabad , ha nem kötött. Egy kvantor a kvantoros előtagban megnevezett és a hatásköre közvetlen részformulájában ennek a változónak a még szabad előfordulásait tesz kötötté (köti). Egy változó- előfordulás kötöttségének meghatározása:

• Egy atomi formulában minden változó-előfordulás szabad.

• Az

formulában egy változó-előfordulás pontosan akkor kötött, ha ez az előfordulás vagy

-ban van és már

-ban kötött, vagy

-ben van és már

-ben kötött.

• A

formulában egy változó-előfordulás pontosan akkor kötött, ha ez az előfordulás már

-ban kötött.

• A

(14)

formulában

minden előfordulása kötött. Ha

egy előfordulása

-ban még szabad volt, akkor ezt az előfordulást a

formulában a

kvantor köti. Egy, az

-től különböző változó valamely előfordulása

-ban pontosan akkor kötött, ha már

-ban is kötött volt.

Egy változót a formula paraméterének nevezünk, ha van a formulában szabad előfordulása. Egy

formula paramétereinek a halmazára

-val hivatkozunk.

A

formulában a

kvantor által kötött

változó átnevezéséről beszélünk, amikor a

(15)

kvantoros előtagban

helyett egy másik, mondjuk

változót nevezünk meg, majd

-ban az

változó minden szabad előfordulását

-ra cseréljük ki (a kapott formulát jelöljük

-nal), és így a

formulát kapjuk. A

formulából szabályosan végrehajtott kötött változó átnevezéssel kapjuk a

formulát, ha

-ban az

nem paraméter, és az

változó egyetlen

által kötött előfordulása sem tartozik egyetlen

(16)

-t kötő kvantor hatáskörébe sem.

Az

formula az

formula variánsa (vagy

és

egymással kongruens formulák ) ha egymástól csak kötött változók szabályosan végrehajtott átnevezésében különböznek. Jelölése:

. Annak eldöntése, hogy két formula egymás variánsa-e:

• Egy atomi formula csak önmagával kongruens.

pontosan akkor, ha

és

.

pontosan akkor, ha

.

pontosan akkor, ha minden

-re, mely különbözik

és

(17)

összes (kötött és szabad) változójától,

.

2. Az elsőrendű nyelv klasszikus szemantikája

Egy

ábécé feletti elsőrendű logikai nyelv

interpretációját ( modelljét vagy algebrai struktúráját ) olyan

(2.4)

négyes határozza meg, melyben

• az

individuumok (objektumok) nem üres halmaza (univerzuma),

• a

függvény minden

konstansszimbólumhoz egy

individuumot rendel,

• az

függvény minden

aritású függvényszimbólumhoz olyan

(18)

függvényt rendel, melynek értelmezési tartománya

, és értékeit

-ból veszi fel, azaz

• a

függvény pedig olyan, hogy ha a

predikátumszimbólum aritása

és

, akkor

predikátum (

vagy

értéket felvevő, ún. logikai értékű függvény). Ha

propozicionális szimbólum, akkor

vagy

, vagy

.

(19)

Legyen az elsőrendű nyelv univerzuma

. Bővítsük ki a nyelvet az univerzum objektumait jelölő új konstansszimbólumokkal:

(2.5)

ahol

-t a

halmazból úgy kapjuk, hogy minden

objektumhoz rendelünk egy új – általunk

-val jelölt – konstansszimbólumot.

Egy olyan

(2.6)

függvényt, amely az elsőrendű nyelv véges sok változójához

-beli új szimbólumot rendel,

-értékelő helyettesítésnek nevezünk.

a

logikai kifejezés értékelése , ha

. Ha

(20)

a

logikai kifejezés értékelése, akkor a

kifejezést úgy nyerjük, hogy

-ban a paraméterek minden szabad előfordulását a

által hozzájuk rendelt új konstansszimbólumokkal helyettesítjük. A kibővített nyelv paramétermentes ( zárt ) logikai kifejezéseit értékelt kifejezéseknek nevezzük.

Legyen

a nyelv egy interpretációja. Egy értékelt term értéke

-ben az alábbi – rekurzív definícióval megadott –

-beli objektum. (Egy

term

-beli értékét

-mel fogjuk jelölni.)

• Ha

és

, akkor

.

(21)

• Ha

az

-hoz rendelt új

szimbólum, akkor

.

• Ha

egy értékelt term, ahol a

termek értékei

-ben rendre

, és

, akkor

(2.7)

Egy

értékelt formula értéke

-ben (jelölése:

) a következő, rekurzív definícióval megadott érték:

(22)

• Ha

egy értékelt atomi formula, ahol a

termek értékei

-ben rendre

, és

, akkor

(2.8)

• Ha

és

értékei rendre

és

, akkor

pontosan akkor, ha

és

;

(23)

pontosan akkor, ha

vagy

;

pontosan akkor, ha

vagy

. Egyébként

.

• Ha

értéke

, akkor

pontosan akkor, ha

, egyébként

.

(24)

• A

értékelt formula igaz az

interpretációban, ha

, egyébként a

formula hamis

-ben.

Egy elsőrendű nyelv egy

formulája kielégíthető , ha van a nyelvnek olyan interpretációja és

-nak olyan

értékelése, amely mellett

igaz, egyébként

kielégíthetetlen (vagy logikai ellentmondás ). Egy elsőrendű nyelv egy

formulája logikai törvény , ha a nyelv bármely interpretációjában és

bármely

(25)

igaz. Jelölése:

. Az

és

elsőrendű formulák logikailag ekvivalensek , ha a nyelv minden

interpretációjában és a formulák minden közös

értékelése mellett

és

azonos igazságértékű. Jelölése:

. Legyen

elsőrendű formulák (premisszák) egy halmaza és

egy elsőrendű formula (konklúzió). Azt mondjuk, hogy

következménye a

-beli formuláknak, ha a nyelv minden olyan interpretációjában és a

-beli és a

(26)

formulák tetszőleges olyan közös

értékelése esetén, mely mellett a

-beli formulák mind igazak, ott

is igaz. Jelölése:

Elsőrendű formulák egy

halmaza kielégíthető , ha van olyan interpretáció és a

-beli formuláknak olyan közös értékelése, mely mellett minden

-beli formula épp igaz, egyébként a

formulahalmaz kielégíthetetlen .

3. Logikai kalkulusok

A logika fő feladata a következtetések helyességének vizsgálata és helyes következtetési szabályok megalkotása. Az előző szakaszban fel is idéztük a következményrelációnak a klasszikus elsőrendű logika szemantikai alapfogalmaira támaszkodó definícióját. Ugyanakkor ez a definíció nem ad gyakorlati útmutatást arra vonatkozóan, hogyan ellenőrizhetjük egy következtetés helyességét. Jelen tananyagban több olyan mechanikus, csak a logikai nyelv szintaxisát használó szabályrendszerrel ismerkedünk meg, melyek gépiesen alkalmazhatók a következményreláció vizsgálatára.

Leibniz már a XVIII. század elején remélte, hogy a tudósok hosszas viták helyett hamarosan ki fogják tudni számolni, kinek van igaza. Az elképzelés megvalósítása felé az első lépések mégis csak a XIX. század végén indultak. Frege ekkor dolgozott ki egy tisztán szintaktikai felépítésű logikai rendszert, egy logikai kalkulust . Egy logikai kalkulus a logikai nyelv megadása mellett a ,,szintaktikai következményreláció'', a levezethetőség definícióját tartalmazza. Ehhez első lépésben megadjuk a kalkulus alapformuláit és levezetési szabályait . A második lépés a levezethetőség fogalmának kialakítása. Egy

formulahalmazból levezethető a

(27)

formula (jelölése:

)

• ha

alapformula, vagy

,

• illetve ha van olyan levezetési szabály, mely

-t előállítja, és az(ok) a formula(ák), amely(ek)ből ez a levezetési szabály

-t előállítja, az(ok)

-ból levezethető(ek).

A levezethetőségi relációt tehát az alapformulák és a levezetési szabályok segítségével definiáljuk. Tehát ha változtatunk az alapformulákon vagy a levezetési szabályokon, más lesz a levezethetőségi reláció is. Sokféle logikai kalkulust felépíthetünk. Két kalkulust akkor tekintünk ekvivalensnek , ha azonos logikai nyelvhez kötődnek, és pontosan akkor lesz

az egyikben, amikor a másikban is.

Egy elsőrendű logikai nyelv klasszikus szemantikájában definiált következményreláció és a nyelvre épülő valamely logikai kalkulus levezethetőségi relációja között szoros kapcsolatot várunk el. Azt mondjuk, hogy a logikai kalkulus helyes , ha

esetén mindig

. A logikai kalkulus pedig teljes , ha

esetén mindig

. Egy kalkulus adekvát , ha helyes is, teljes is.

(28)

Egy logikai rendszer megalkotásakor gyakran először egy szemantikai rendszert definiálunk, majd megkísérlünk ehhez legalább helyes, de ha lehet, adekvát logikai kalkulust szerkeszteni.

(29)

Chapter 3. Helyettesítések

1. Változók helyettesítése termekkel

Definíció Egy olyan függvényt, amely az elsőrendű nyelv véges sok változóján van értelmezve, és minden változóhoz termet rendel, termhelyettesítésnek nevezünk. Üres a termhelyettesítés, ha az értelmezési tartománya üres (jele:

).

Ha a

termhelyettesítés értelmezési tartománya

és

minden

-ra

,

-t megadhatjuk a

(3.1)

táblázattal vagy a

felsorolással.

jelölje azt a termhelyettesítést, melyre

(30)

és minden

esetén

. Vezessük be továbbá a

jelölést a

kifejezés szerkezetétől és a

termhelyettesítéstől függő logikai kifejezésre:

1. ha

, akkor

, 2. ha

változó, akkor

,

3.

,

4.

,

5.

,

6.

(31)

,

7.

.

Vegyük észre, hogy az értékelő helyettesítések is termhelyettesítések, és ha

a

kifejezés értékelése, a

kifejezés éppen a

-beli paraméterek szabad előfordulásainak a

-val hozzájuk rendelt konstansszimbólumokkal való helyettesítésnek eredményeképpen kapott értékelt kifejezés.

Ugyanakkor nem minden

kifejezés és

termhelyettesítés esetén lesz alkalmas

a logika céljai számára. Hogy csak ezekkel a

kifejezésekkel foglalkozhassunk, vezessünk be néhány fogalmat. A

termhelyettesítés megengedett a

kifejezés számára, ha minden

esetén

(32)

minden

-beli szabad előfordulása kívül esik a

term valamennyi változóját megnevező kvantor hatáskörén.

Definíció

megengedettsége

számára

szerkezete szerint:

1. Termek és atomi formulák számára minden termhelyettesítés megengedett.

2.

számára egy termhelyettesítés megengedett, ha megengedett

számára.

3.

számára egy termhelyettesítés megengedett, ha megengedett

és

számára is.

4.

számára egy

termhelyettesítés megengedett, ha a. egyetlen

változó esetén sem fordul elő

(33)

a

termben,

b.

pedig megengedett

számára.

Példa A

formula számára az

(3.2)

termhelyettesítés megengedett, az

(3.3)

termhelyettesítés pedig nem megengedett, mert a helyettesítendő szabad előfordulású

az

-et kötő

hatáskörében van, és a helyére beírandó

termben is előfordul az

változó.

(34)

Legyen

egy kifejezés és

egy termhelyettesítés. Konstruáljunk meg egy

-val kongruens olyan

formulát, amely számára

megengedett. Ekkor a

kifejezés a

termhelyettesítés

-ban való szabályos végrehajtásának eredménye. Jelölése:

.

Definíció

meghatározása

szerkezete szerint:

1. Ha

term vagy atomi formula, akkor

.

(35)

3.

4.

a. Ha egyetlen

változó esetén sem fordul elő a

termben

, akkor

.

b. Ha van olyan

változó, hogy

paraméter

-ben, akkor válasszunk egy új változót – például

-t –, mely nem fordul elő sem

-ban, sem

termjeiben, és

(3.4)

Példa A

formulában az

(36)

(3.5)

termhelyettesítés szabályos végrehajtásának eredménye a

(3.6)

formula.

Definíció Legyenek

(3.7)

egy nyelv termhelyettesítései.

és

kompozícióján a

(3.8)

termhelyettesítést értjük, ahol

(3.9)

Példa Legyenek

(3.10)

termhelyettesítések. Ekkor

(37)

(3.11)

és

(3.12)

A példa mutatja, hogy a kompozíció művelete egy nyelv termhelyettesítéseinek halmazán nem kommutatív.

Tétel Egy elsőrendű logikai nyelv tetszőleges

,

és

termhelyettesítései esetén

Table 3.1.

(1) (a kompozíció asszociatív)

(2)

(

neutrális elem)

Azaz a kompozíció műveletével a termhelyettesítések halmaza neutrális elemmel rendelkező félcsoport.

Lemma Legyenek

és

egy nyelv termhelyettesítései. Ekkor tetszőleges

logikai kifejezés esetén

(38)

(3.13)

Definíció Legyenek

és

termhelyettesítések. Az

helyettesítés általánosabb a

-nál, ha van olyan

termhelyettesítés, hogy

.

Példa Az

(3.14)

helyettesítések esetén

általánosabb a

helyettesítésnél, mert

, ahol

(3.15)

(39)

2. Illesztő helyettesítés

Definíció Legyen

és

két azonos predikátumszimbólummal kezdődő atomi formula. Az olyan

termhelyettesítést, amelyre

(3.16)

-t és

-t egymáshoz illesztő helyettesítésnek nevezzük.

az

és

atomok legáltalánosabb illesztő helyettesítése , ha

és

minden illesztő helyettesítésénél általánosabb.

Példa A

és a

atomoknak egy illesztő helyettesítése:

(40)

(3.17)

legáltalánosabb illesztő helyettesítése:

(3.18)

Az illesztő helyettesítés fogalmát kiterjeszthetjük:

legyen az azonos predikátumszimbólummal kezdődő

(

) atomi formulák halmaza.

illesztő helyettesítése

minden atompárját illeszti egymáshoz.

Definíció Vizsgáljuk

elemeit párhuzamosan, szimbólumonként balról jobbra haladva. Álljunk meg annál az első szimbólumnál, amelyik nem minden atomban egyezik meg. Az ezen a pozíción kezdődő résztermek

halmazát

különbségi halmazának nevezzük.

Példa Legyen

(3.19)

(41)

különbségi halmaza

(3.20)

Robinson algoritmusa véges sok lépésben meghatározza

legáltalánosabb illesztő helyettesítését, ha van ilyen, illetve jelzi, ha nem illeszthetők egymáshoz

atomjai.

1.

,

,

. 2. Ha

egyetlen atomot tartalmaz, akkor sikeresen vége:

a

legáltalánosabb illesztő helyettesítése. Egyébként határozzuk meg

különbségi halmazát:

-t.

3. Ha van

-ban olyan

(42)

változó és

term, hogy

nem fordul elő

-ban, akkor a 4. lépéssel folytatjuk. Egyébként

atomjai nem illeszthetők egymáshoz. Vége.

4.

,

. (Megjegyezzük, hogy

.)

5.

, és a 2. lépéssel folytatjuk.

Példa Döntsük el az illesztő algoritmussal, hogy illeszthetők-e a

(3.21)

halmaz atomi formulái egymáshoz.

1.

,

.

2.

.

(43)

3.

egy változó,

egy, a

-t nem tartalmazó term.

4.

.

(3.22)

5.

6.

egy változó,

egy, az

-et nem tartalmazó term.

7.

.

(3.23)

8.

. 9.

(44)

egy változó,

egy, az

-t nem tartalmazó term.

10.

.

(3.24)

11.

-ban egyetlen atom van, így

a legáltalánosabb illesztő helyettesítés

-re.

Példa Vizsgáljuk meg, hogy illeszthetők-e egymáshoz a

(3.25)

halmaz atomi formulái.

1.

,

.

2.

.

(45)

egy változó,

egy, az

-t nem tartalmazó term.

4.

.

(3.26)

5.

. 6. A

-ben nincs változó, ezért az algoritmus azzal az eredménnyel fejeződik be, hogy

atomjai nem illeszthetők.

Az illesztő helyettesítés fogalmát másképp is általánosíthatjuk:

legyen az

(3.27)

páronként azonos predikátumszimbólummal kezdődő atomi formulák halmaza. Keressük a minden pár atomjait egymáshoz illesztő helyettesítést. Képezzük a

-beli párok atomjaiból a

(3.28)

(46)

formális egyenlőséghalmazt. A formális egyenlőséghalmazba bizonyos szabályok alapján bekerülhetnek termek formális egyenlőségei, illetve ki is kerülhetnek a halmazból formális egyenlőségek. Egy csupa változó - term párokból álló

(3.29)

formális egyenlőséghalmaz kiszámított alakú , ha

, amikor

, és

(

). Az előbbi kiszámított alakú formális egyenlőséghalmaz által meghatározott termhelyettesítés

(3.30)

Herbrand algoritmusa véges sok lépésben meghatározza

legáltalánosabb illesztő helyettesítését, ha van ilyen, illetve jelzi, ha nem illeszthetők egymáshoz

párjainak atomjai.

1.

,

. 2. Ha

kiszámított alakú, akkor sikeresen vége: az általa meghatározott helyettesítés

legáltalánosabb illesztő helyettesítése. Egyébként válasszunk ki egy

(47)

formális egyenlőséget

-ból.

3.

. 4. Ha

alakja

• , ahol

változó, vagy

, ahol

konstansszimbólum, akkor tovább az 5. lépésre.

• , ahol

változó,

összetett term,

.

• , ahol

konstansszimbólumok, akkor

(48)

atomjai nem illesztők egymáshoz. Vége.

• , ahol

függvényszimbólumok, akkor

atomjai nem illesztők egymáshoz. Vége.

• , ahol

függvényszimbólum, vagy

, ahol

predikátumszimbólum, akkor

.

• , ahol

, akkor

atomjai nem illesztők egymáshoz. Vége.

• , ahol

, akkor

(49)

formális egyenlőségeiben elvégezzük az

helyettesítést, majd

.

5.

, és a 2. lépéssel folytatjuk.

Példa Döntsük el Herbrand algoritmusával, hogy illeszthetők-e a

(3.31)

halmaz atomi formulái egymáshoz.

(3.32)

Kiszámított alakú formális egyenlőséghalmazt kaptunk, így a legáltalánosabb illesztő helyettesítés

-re:

.

Példa Döntsük el Herbrand algoritmusával, hogy illeszthetők-e a

(50)

(3.33)

halmaz atomi formulái egymáshoz.

(3.34)

3. Feladatok

1. Határozzuk meg, hogy mely helyettesítések megengedettek a következő formula számára, majd végezzük el a szabályos helyettesítést.

(3.35)

(3.36)

2. Bizonyítsuk be, hogy

• ha a

kifejezésben nincs

-beli változókat megnevező kvantor, akkor

megengedett

számára.

• ha a

helyettesítő termekben nincs változó, akkor

(51)

megengedett minden kifejezés számára.

3. Határozzuk meg az alábbi termhelyettesítések kompozícióját.

a.

és

b.

és

4. Döntsük el Robinson és Herbrand algoritmusaival, hogy illeszthetők-e a következő halmazok atomi formulái egymáshoz.

5. Határozzuk meg, hogy amikor a Robinson-algoritmus véget ér, milyen összetettségűek lesznek a

(3.37)

halmaz egymáshoz illesztett atomjaiban a termek.

6. Írjunk programot, amely Herbrand vagy Robinson algoritmusát alkalmazva megkeresi egy atomhalmaz legáltalánosabb illesztő helyettesítését.

(52)

Chapter 4. Normálformák

1. Konjunktív és diszjunktív normálformák

Definíció Az atomi formulákat és a negáltjaikat literáloknak nevezzük. Elemi konjunkciónak tekintünk minden literált, továbbá egy elemi konjunkció és egy literál konjunkcióját. Elemi diszjunkciók szintén a literálok, továbbá egy elemi diszjunkció és egy literál diszjunkciója. A konjunktív normálformájú formula egy elemi diszjunkció, vagy egy konjunktív normálforma és egy elemi diszjunkció konjunkciója, a diszjunktív normálformájú formula egy elemi konjunkció, vagy egy diszjunktív normálforma és egy elemi konjunkció diszjunkciója.

Tétel Az elsőrendű logikai nyelv minden kvantormentes formulájához konstruálható vele logikailag ekvivalens konjunktív és diszjunktív normálformájú formula.

Definíció Egy formulával ekvivalens konjunktív normálformájú formulát a formula konjunktív normálformájának , a vele ekvivalens diszjunktív normálformájú formulát a formula diszjunktív normálformájának nevezzzük.

A normálformára hozás lépései:

1. A logikai jelek közötti összefüggések alapján a formulába minden implikációs részformula helyett vele ekvivalens diszjunkciót írunk.

2. De Morgan törvényeivel elérjük, hogy negáció csak atomi formulákra vonatkozzon.

3. A disztributivitást felhasználva addig alakítjuk a formulát, hogy a konjunkciók és diszjunkciók megfelelő sorrendben kövessék egymást.

4. Végül esetleg egyszerűsítünk.

Felhasználható ekvivalenciák:

Table 4.1. asszociativitás

Table 4.2. kommutativitás

Table 4.3. disztributivitás

Table 4.4. idempotencia

Table 4.5. elimináció (elnyelés)

(53)

Table 4.6. De Morgan törvényei

Table 4.7. kiszámítási törvények

(

)

Table 4.8. logikai jelek közötti összefüggések

Table 4.9. kétszeres tagadás

Table 4.10. negáció az implikációban

Példa Hozzuk a

(4.1)

formulát normálformára.

1. Eltávolítjuk az implikációkat:

(54)

(4.2)

2. Elérjük, hogy negáció csak atomokra vonatkozzon:

(4.3)

3. Felhasználjuk a disztributivitást; az eredmény konjunktív normálforma:

(4.4)

4. Egyszerűsítünk:

(4.5)

5. Tovább egyszerűsítünk; az eredmény egyszerre konjunktív és diszjunktív normálforma:

(4.6)

2. Prenex alakú formulák

Definíció Egy

alakú formulát, ahol a

kvantormentes formula, prenex alakú formulának nevezünk.

a prenex alakú formula magja . Példa A

, a

és a

(55)

formulák prenexformulák, viszont a

formula nem prenexformula.

Tétel Egy elsőrendű logikai nyelv tetszőleges formulájához konstruálható vele logikailag ekvivalens prenex alakú formula.

Definíció Egy formulával ekvivalens prenex alakú formula a formula prenex alakja.

A prenex alakra hozás lépései:

1. A formulában a kötött változók szabályos átnevezésével elérjük, hogy a kötött változók nevei különbözzenek a formula paramétereitől, és bármely két különböző kvantor más-más változót nevezzen meg a kvantoros előtagban. Az így nyert, az eredeteivel kongruens, így az eredetivel ekvivalens formulát az eredeti változóiban tiszta alakjának nevezzük.

2. Alkalmazzuk De Morgan kvantoros törvényeit és a kvantorkiemelésre vonatkozó logikai törvényeket, amíg a formulánk prenex alakú nem lesz.

Felhasználható ekvivalenciák:

Table 4.11. kvantoros De Morgan-törvények

Table 4.12. kvantorok egyoldali kiemelése,

Table 4.13. kvantorok kétoldali kiemelése

Table 4.14. kvantorhatáskör-átjelölés,

(56)

Példa Hozzuk a

(4.7)

formulát prenexalakra.

1. Változóiban tiszta alakra hozás:

(4.8)

2. De Morgan törvényeinek alkalmazása:

(4.9)

3. Kvantorkiemelés:

(4.10)

4. Kvantorkiemelés:

(4.11)

Ha a magot normálformára akarjuk hozni, akkor célszerű előbb eltüntetni az implikációkat, és a negációkat az atomi formulák elé vinni. Ekkor (újabb) lehetőségek adódhatnak a kvantorok kétoldali kiemelésére vonatkozóan.

1. Az implikációk átírása:

(4.12)

(57)

2. A kétszeres tagadás és De Morgan törvényeinek alkalmazása:

(4.13)

3. Az egzisztenciális kvantor kétoldali kiemelésére vonatkozó ekvivalencia alkalmazása:

(4.14)

4. Változóiban tiszta alakra hozás:

(4.15)

5. Most már mindegyik kvantor kiemelhető:

(4.16)

6. A formula magja diszjunktív normálforma, de átírható konjunktív normálformába, ha az a további feldolgozás szempontjából úgy célszerű:

(4.17)

3. Skolem-normálforma

A

prenexformulában csak univerzális kvantorok vannak. Az ilyen

alakú formulák fontosak lesznek később.

Definíció Univerzális Skolem-formulának nevezzük az olyan prenexformulát, amelynek a prefixumában csak univerzális kvantor szerepel. Ha a Skolem-formula magja konjunktív normálforma, akkor a formulát Skolem- normálformának nevezzük.

Tétel Tetszőleges

(58)

formulához konstruálható olyan univerzális Skolem-formula, mely pontosan akkor kielégíthetetlen, ha

kielégíthetetlen.

Prenexformula ,,átírása'' univerzális Skolem-formába:

1. Új Skolem-szimbólumok bevezetése: A

(4.18)

prenexformula prefixumában legyen az első egzisztenciális kvantor a

-edik kvantor.

• Ha

, akkor minden olyan interpretációban és

értékelés esetén (

), amely mellett

igaz, az interpretáció

univerzumában van legalább egy

( Skolem-konstans ), hogy a

formula igaz lesz. Ez azt jelenti, hogy ha kibővítjük az elsőrendű nyelvünket egy új

konstansszimbólummal, akkor az előbbi interpretációt kiegészítve azzal, hogy

-t egy Skolem-konstanssal interpretáljuk, az új, bővebb nyelv olyan interpretációját kapjuk, melyben

(59)

is igaz.

• Legyen most

. Egy

interpretációban valamely

értékelés mellett (

) a

(4.19)

formula pontosan akkor igaz, ha az

változókat bármilyen – az interpretáció univerzumából vett – elemekkel értékelve mindig van legalább egy elem

-ban, amellyel pedig az

változót értékelve a

formula igaz. Azaz minden

elem

-eshez tartozik legalább egy

, hogy

(60)

(4.20)

igaz. Legyen

(4.21)

egy függvény, amely minden

-hez egy ilyen

értéket rendel. Ezt a függvényt Skolem-függvénynek nevezzük. Bővítsük ki az elsőrendű nyelvünket egy új

aritású

függvényszimbólummal. Ha most az

interpretációt úgy egészítjük ki, hogy

-et egy ilyen Skolem-függvénnyel interpretáljuk, az új, bővebb nyelv olyan interpretációját kapjuk, melyben a

(4.22)

formula igaz.

2. Az egzisztenciális kvantor elhagyása:

prefixumából elhagyjuk a

kvantoros előtagot, és a formula magjában elvégezzük az

, illetve az

(61)

termhelyettesítést. A kapott

(4.23)

illetve

(4.24)

formula az eredeti formulában szereplő első egzisztenciális kvantort már nem tartalmazza. Ezzel a lépéssel az eredeti formulával a kielégíthetőség szempontjából egyenértékű formulát kaptunk a kibővített nyelvben.

a. Egyrészt minden olyan interpretációban, amelyben az eredeti formula valamely értékelés mellett igaz volt, az új függvényszimbólumot (konstansszimbólumot) interpretálhatjuk egy Skolem-függvénnyel (Skolem- konstanssal) úgy, hogy az értékelés mellett igaz lesz az átalakított formula is.

b. Ha pedig az eredeti formula minden interpretációban, minden értékelés mellett hamis volt, azaz kielégíthetetlen, akkor az átalakított formula is az lesz, mivel ekkor nincs Skolem-függvény (konstans) egyetlen interpretáló struktúrában sem.

3. Az új Skolem-szimbólumok bevezetésének és a kvantoreliminálásnak a lépéseit végrehajtjuk a soron következő egzisztenciális kvantorra, amíg minden egzisztenciális kvantort el nem hagytunk.

Példa Írjuk át Skolem-normálformába a

(4.25)

prenex-konjunktív formulát. A két egzisztenciális kvantor a prefixum első két kvantora, ezért két Skolem- konstansszimbólumot kell bevezetnünk. Jelöljük az

-tól különböző két új konstansszimbólumot

és

-vel.

(62)

(4.26)

4. Elsőrendű klózok

Definíció Az elsőrendű klóz pedig egy olyan zárt univerzális Skolem-formula, amelynek a magja elemi diszjunkció.

Egy Skolem-normálforma magja konjunktív normálforma. Ha egy zárt

Skolem-normálformára ,,visszafelé'' alkalmazzuk a konjunkcióra vonatkozó kétoldali kvantorkiemelési szabályt, akkor elsőrendű klózok konjunkcióját kapjuk.

legyen ezen klózok halmaza. Világos, hogy

pontosan akkor kielégíthetetlen, ha

kielégíthetetlen.

Példa Az előző példában kapott Skolem-normálformában alkalmazzuk a kvantorkiemelésre vonatkozó ekvivalenciát ,,visszafelé'':

(4.27)

Hozzuk a formulát változóiban tiszta alakra:

(4.28)

Mivel egy elsőrendű klóz minden változója univerzálisan kvantált, az elsőrendű klózhalmazokban a klózok prefixumait nem tüntetjük fel. Tehát a fenti elsőrendű klózhalmazt így adjuk meg:

(63)

(4.29)

Példa Írjuk át Skolem-normálformába a

(4.30)

prenexformulát. Először írjuk át a formula magját konjunktív normálformába:

(4.31)

A Skolem-függvények egyváltozósak, vezessünk be az elsőrendű nyelvbe jelölésükre két új függvényszimbólumot:

-et és

-t. A Skolem-normálforma:

(4.32)

Elsőrendű klózok konjunkciójaként felírva a formulát:

(4.33)

A változóiban tiszta elsőrendű klózhalmaz pedig:

(4.34)

5. Feladatok

1. Hozzuk konjunktív és diszjunktív normálformára a következő formulákat.

a.

(64)

b.

c.

d.

2. Határozzuk meg az alábbi formulák prenex alakját.

a.

b.

c.

d.

3. Írjunk olyan programot, amelyik előállítja egy elsőrendű formula prenex alakját.

4. Határozzuk meg az alábbi formulák univerzális Skolem-normálformáját.

a.

b.

c.

d.

(65)

Chapter 5. Frege stílusú kalkulus

A modern logika egyik első nagy eredménye Gottlob Frege (1848-1925) német matematikus logikai rendszere.

Bár Frege a rendszere felépítése során minden lépést szemantikai okokkal indokolt, nem hozott létre olyan szemantikai felépítést logikájához, mint amit a Bevezetésben megadtunk. Frege logikai rendszere szintaktikai felépítésű rendszer, kalkulus volt. A fejezetben egy a Frege rendszeréhez stílusában hasonló predikátumkalkulust mutatunk be.

1. A predikátumkalkulus

Definíció Az

,

és

szimbólumok.

• A predikátumkalkulusalapsémái : 1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

(66)

• A predikátumkalkuluslevezetési szabályai :

(5.1)

Ha az

és

szimbólumokat egy elsőrendű logikai nyelv formuláival helyettesítjük,

a nyelv változója,

pedig term, akkor az alapsémákból alapformulákat kapunk, a levezetési szabályok segítségével pedig egy vagy két (vonal feletti) formulából levezetünk egy (vonal alatti) harmadikat.

Tétel

• A predikátumkalkulus alapformulái logikai törvények.

.

• Ha

és

akkor

Definíció A fomulafa és magasságának induktív definíciója:

1. Minden

(67)

magasságú formulafa, melyben

alsó formula, és nincs nála feljebb levő formula.

2. Ha

és

magasságú olyan formulafák, melyben az alsó formulák

és

alakúak, akkor az

(5.2)

alakzat is formulafa. A nyert formulafában

az alsó formula, melynél

és

minden formulája feljebb van. A formulafa magassága pedig

. 3. Ha

(68)

magasságú olyan formulafa, amelyben az alsó formula

, akkor az

(5.3)

alakzat is formulafa.

alsó formula, melynél

minden formulája feljebb van, és a formulafa magassága

.

4. Minden formulafa az 1–3. szabályok véges sokszori alkalmazásával áll elő.

A formulafában azok a formulák, melyeknél nincs feljebb levő, vagy alapformulák, vagy ún. hipotézisek . Definíció A levezetésfa egy formulafa, melyben ha

-ból az általánosítás szabályával akarjuk a

-t nyerni, akkor

nem paraméter egyetlen, a

-nál feljebb levő hipotézisben sem.

Példa Jellemezzük az alábbi formulafát:

(69)

magasságú formulafa alsó formula:

alapformula:

hipotézis:

Definíció A

véges formulahalmazból az

formula levezethető , ha van olyan levezetésfa, melyben

alsó formula, és a hipotésisek mind elemei

-nak. (Jelölése

, az alakzat neve szekvencia .) Ha

üres, akkor

hipotézismentesen vezethető le a kalkulusban (jelölése

).

Példa Bizonyítsuk be, hogy

.

(70)

Tétel [A predikátumkalkulus helyessége.] Ha

, akkor

.

Bizonyítás A

szekvenciát megalapozó levezetésfa magassága szerinti indukcióval bizonyítunk. Legyen a levezetésfa magassága

.

1.

esetén

• vagy alapformula

, ekkor

, így nyilván

is.

• vagy

, azaz hipotézis, ekkor minden olyan interpretációban és értékelés mellett, amikor minden hipotézis igaz, nyilván

is igaz, tehát

.

2. Az indukciós feltevésünk szerint legyen igaz az állítás minden

-nél nem magasabb levezetésfa esetén.

(71)

3. Legyen most

. Ha a

szekvenciát megalapozó levezetésfát

• a modus ponens levezetési szabállyal nyertük: a

és

szekvenciákat megalapozó, legfeljebb

magasságú levezetésfákból. Az indukciós feltevés miatt ekkor igaz az állítás, tehát

és

. De minden olyan interpretációban és értékelés mellett, amikor a

-beli hipotézisek mind igazak, ezek szerint igazak ezen interpretációkban és értékelések mellett az

és az

formula is, így a

formula is. Tehát

is.

• az általánosítás szabályával nyertük,

tehát

(72)

alakú: az

magasságú levezetésfa, amiből nyertük, a

szekvenciát alapozza meg, ahol

. Az indukciós feltevés miatt ekkor igaz az állítás, tehát

. De minden olyan interpretációban és értékelés mellett, amikor a

-beli hipotézisek mind igazak, ezek szerint igaz ezen interpretációkban és értékelések mellett az

is. Mivel

, a

-beli formulákat igazzá tevő értékelésekben

-et bárhogy lehet értékelni, így az

is

bármilyen értékelése esetén igaz, tehát a

is. Ezért

.

Ezzel a tételt bebizonyítottuk.

Tétel [A predikátumkalkulus teljessége.] Ha

(73)

, akkor

. A tétel legismertebb bizonyítását Leon Henkin (1921-2006) amerikai matematikus adta meg (ez például [Smullyan]-ben is megtalálható).

2. Feladatok

1. Bizonyítsuk be, hogy

.

2. Bizonyítsuk be, hogy

.

(74)

Chapter 6. Gentzen kalkulusai

A predikátumkalkulusban egy levezetés megkonstruálása gyakran nagyon kényelmetlen. Egyszerű formulák levezetése is lehet hosszadalmas, ráadásul a levezetések nem nagyon hasonlítanak a szokásos érvelésekre. 1934- ben Gerhart Gentzen (1909-1945) német logikus olyan levezetési rendszert dolgozott ki, mely szabályai a Frege stílusú kalkulusokénál jóval közelebb állnak a gyakorlatban használt érvelés lépéseihez. Gentzen saját rendszerét a Frege stílusú rendszerekkel szembeállítva a természetes levezetés kalkulusának nevezte.

Tágabb értelemben természetes levezetési rendszereknek szokták nevezni a Gentzen eredeti kalkulusához közel álló, de azzal nem tökéletesen megegyező levezetési rendszereket is. Ezek közös jellemzője, hogy bár használhatnak alapformulákat is, alapvetően mégis levezetési szabályokra épülnek.

Most megadjuk a klasszikus elsőrendű logika egy olyan természetes levezetési rendszerét, mely nagyon közel áll Gentzen eredeti kalkulusához. A predikátumkalkulushoz hasonlóan ez a rendszer is helyes és teljes, tehát bizonyos értelemben sem nem több, sem nem kevesebb annál. Az alapvető különbség a hipotézisektől a levezetendő formuláig való eljutás módjában áll.

Hogy megkönnyítsük a levezethetőségi reláció fennállásának igazolását, levezetési sémákra vonatkozó segédszabályok egy egész rendszerére támaszkodunk. A segédszabályok állításokat jelölnek: ha adva van(nak) a vonal feletti szekvenciá(ka)t megalapozó predikátumkalkulusbeli levezetésfa(ák), akkor megkonstruálható a vonal alatti szekvenciát megalapozó levezetésfa is. Segítségükkel a predikátumkalkulusbeli levezethetőség igazolható a levezetés tényleges megkonstruálása nélkül. Továbbá a természetes levezetés technikájának szabályai szoros analógiát mutatnak a matematikai érvelés gyakorlatával, ami megkönnyíti a szekvenciák igazolását.

A természetes levezetés technikája mellett Gentzen kidolgozott egy másik - ún. szekventekkel dolgozó kalkulust is. A szekventkalkulus is igen kényelmesen használható, mivel a levezetési szabályok egyszerűen és a levezetendő szekventben szereplő formulák szerkezete által meghatározott sorrendben alkalmazhatók.

1. A természetes levezetés

Definíció Az

,

és

szimbólumok.

• Az azonosság törvénye

(6.1)

Strukturális szabályok

(75)

(6.2)

Logikai szabályok

(6.3)

(6.4)

Ha az

(76)

és a

szimbólumokat elsőrendű formulákkal, a

és

szimbólumokat formulák multihalmazaival helyettesítjük,

a nyelv változója és

term, akkor predikátumkalkulusbeli levezethetőségre vonatkozó állításokat nyerünk.

Az azonosság törvénye – egyedül itt nincs vonal – például azt állítja, hogy bármely

formulahalmazból és az

formulából mint hipotézisekből levezethető a predikátumkalkulusban

. Az állítás bizonyítása egyszerű: egyetlen formulából, az

-ból álló levezetésfa bizonyítja. A strukturális szabályok igazolása is nagyon egyszerű. A bővítés és a szűkítés szabálya esetén a vonal feletti szekvenciát megalapozó levezetés egyúttal a vonal alatti szekvenciát megalapozó levezetés is. A vágás szabályát a dedukció-tétel részletes bizonyítása után vizsgáljuk meg.

Tétel [Dedukció-tétel.] Ha

akkor

Bizonyítás A

szekvenciát megalapozó levezetésfa magassága szerinti indukcióval bizonyítunk. Legyen a levezetésfa magassága

(77)

.

1.

esetén

• vagy alapformula

, vagy

, ekkor

így

• vagy

. De ekkor

2. Az indukciós feltevésünk szerint legyen igaz az állítás minden

-nél nem magasabb levezetésfa esetén.

3. Legyen most

. Ha a

szekvenciát megalapozó levezetésfát

• a modus ponenssel nyertük

és

szekvenciákat megalapozó, legfeljebb

(78)

magasságú levezetésfákból. Az indukciós feltevés miatt ekkor igaz az állítás, tehát

és

.

Tehát

• az általánosítás szabályával nyertük,

tehát

alakú. Az

magasságú levezetésfa, amiből nyertük, a

szekvenciát alapozza meg, ahol

. Az indukciós feltevés miatt ekkor igaz az állítás, tehát

.

(79)

Tehát

Ezzel a tételt bebizonyítottuk.

A vágás szabályára visszatérve: a dedukciós tétel szerint ha

, akkor

. Ekkor viszont a

-t és a

-t igazoló levezetések konkatenációja megalapozza

-t.

A logikai szabályok igazolása sem nehéz. Néhány szabály bizonyításának ötletét vázoljuk.

1. Az implikáció bevezetésének szabálya épp a dedukciós tétel.

2. Az implikáció eltávolításának a szabálya: Ha adottak a

és a

állításokat megalapozó levezetések, a kettő konkatenációja után alkalmazható a modus ponens, és így épp

-nek egy, a

-ból való levezetését állítottuk elő.

(80)

3. A diszjunkció bevezetése: Ha adott

-ból

-nak a levezetése, akkor az

alapformulát beírva a levezetésbe alkalmazhatjuk a modus ponenst, és máris megkaptuk a

-ból az

egy levezetését.

4. A diszjunkció eltávolítása: Ha adottak a

és a

állításokat megalapozó levezetések, akkor a dedukciós tétel miatt elkészíthető a

és a

állításokat megalapozó levezetések is. Ezt a két levezetést konkatenáljuk, és írjuk le az

(6.5)

alapformulát. Kétszer alkalmazva a modus ponenst megalapoztuk, hogy

. Írjuk be a levezetésbe a vonal alatti szekvenciából az

hipotézist, és ha most újból alkalmazzuk a modus ponenst, megkapjuk a

-t megalapozó levezetést.

(81)

6. Az univerzális kvantor eltávolításának szabálya: Ha adott a

szekvenciát megalapozó levezetés, akkor a

alapformulát beírva a levezetésbe alkalmazhatjuk a modus ponenst, és máris megkaptuk

egy levezetését

-ból.

7. Az egzisztenciális kvantort bevezető szabály: Ha adott a

szekvenciát megalapozó levezetés, akkor írjuk be az

alapformulát a levezetésbe, és alkalmazzuk a modus ponenst. Így

-ból levezettük

-t.

8. Az egzisztenciális kvantor eltávolításásának szabálya: A

szekvenciát megalapozó levezetésből a dedukciós tétel miatt elkészíthető a

szekvenciát megalapozó levezetés is. Ebből az általánosítás szabálya miatt – mivel

adódik. Ha most a levezetésbe beírjuk a

alapformulát (lényeges, hogy

(82)

), alkalmazhatjuk a modus ponenst. Ezzel megkapjuk a

egy levezetését

-ból. A dedukciós tétel újbóli alkalmazásával pedig igazoltuk, hogy

.

A gyakorlatban a természetes technikai szabályokat inkább ,,alulról felfelé'' szoktuk alkalmazni: amikor igazolni kell egy vonal alatti állítást, elegendő bebizonyítani, hogy a vonal feletti állítások igazak. Ekkor világosan látható, hogy a felsorolt szabályok elég jól tükrözik a matematikusok által széles körben használt bizonyítási módszereket.

• Például a diszjunkció eltávolítása megfelel az esetelemzés módszerének . Ha le kell vezetni

-ből

-t, akkor az esetelemzés a következőképpen történik: ha

igaz, akkor vagy

, vagy

igaz, ezért elegendő két esetet megvizsgálni. Külön-külön le kell vezetni

-ból

-t és

-ből

-t.

(83)

• A negáció bevezetése a matematikai gyakorlatban az indirekt bizonyítás , azaz az ellentmondáshoz való visszavezetés módszere . Hogy bebizonyítsuk

-t, elegendő – feltéve, hogy

teljesül – ellentmondáshoz jutni, vagyis egy

-t kiválasztva

-ból levezetni

-t és

-t is.

Példa Bizonyítsuk be természetes technikával, hogy

(6.6)

Felvetődhet az a kérdés is, hogy ha egy formulahalmazból a predikátumkalkulusban levezethető egy formula, akkor ezt be tudjuk-e mindig bizonyítani csupán a természetes levezetés technikájával.

Tétel Ha

, akkor ez belátható a természetes technikával. Bizonyítás A

szekvenciát megalapozó levezetésfa magassága szerinti indukcióval bizonyítunk. Legyen a levezetésfa magassága

(84)

.

1.

esetén

• vagy alapformula, ekkor

belátható a természetes technikával (ezeket a bizonyításokat az olvasóra bízzuk), így – a bővítés szabálya alapján –

is bizonyítható természetes technikával.

• vagy hipotézis, azaz eleme a

formulahalmaznak, akkor a

az azonosság törvénye.

2. Az indukciós feltevésünk szerint legyen igaz az állítás minden

-nél nem magasabb levezetésfa esetén.

3. Legyen most

. Ha a

szekvenciát megalapozó levezetésfát

• a modus ponens levezetési szabállyal nyertük

és

szekvenciákat megalapozó, legfeljebb

magasságú levezetésfákból. Az indukciós feltevés miatt ekkor ezek a szekvenciák megalapozhatók természetes technikával. Az implikáció eltávolításának a szabályával pedig a

(85)

-t is bizonyítottuk.

• az általánosítás szabályával nyertük a

szekvenciát megalapozó

magasságú levezetésfából. Az indukciós feltevés miatt ez a szekvencia megalapozható természetes technikával. Ekkor az univerzális kvantor bevezetésének szabályával a

-t is bizonyítottuk.

Ezzel a tételt bebizonyítottuk. Ezzel beláttuk azt is, hogy a természetes levezetés kalkulusa ekvivalens a predikátumkalkulussal, így bebizonyítottuk adekvátságát a klasszikus elsőrendű szemantikával.

Tétel [A természetes levezetés helyes és teljes.]

pontosan akkor látható be természetes levezetéssel, ha

.

Példa Bizonyítsuk be a természetes levezetés segítségével, hogy a

(6.7)

formula logikai törvény.

2. A szekventkalkulus

Definíció Legyenek

(86)

elsőrendű formulák. Ekkor a

(6.8)

formulát szekventnek nevezzük. Jelölése

(6.9)

vagy rövidebben

, ahol

az

és

a

formulák multihalmazai.

A

szekvent tehát egy speciális alakú formula: implikáció, melyben az implikáció bal oldalán a

formuláinak konjunkciós, a jobb oldalán a

formuláinak diszjunkciós láncformulája áll. Ha a szekventben

üres, az implikáció bal oldalán a

törvényt, ha

(87)

üres, az implikáció jobb oldalán a

kielégíthetetlen formulát kell elképzelni. Ha

és

formulák, akkor az

jelölés az

szekventet hivatkozza.

Példa Határozzuk meg, hogy az alábbi szekventek mint formulák hogyan adhatók meg:

1.

(üres) szekvent a

formulát, azaz logikai ellentmondást ír le.

2.

szekvent a

, azaz a

formulát jelöli.

3. Az

szekvent jelentése az

, azaz a

formula.

(88)

4.

jelentése

.

5.

jelentése pedig

.

Világos, hogy ha egy

formulát szekventté szeretnénk alakítani, azaz elő akarjuk állítani azt a szekventet, ami épp az

formulát írja le, csak egy

jelet kell elé írni:

.

Definíció

,

,

,

,

és

szimbólumok.

(89)

A szekventkalkulus alapsémája:

(6.10)

A szekventkalkulus levezetési szabályai:

(6.11)

(6.12)

(6.13)

Ha az

és

szimbólumokat egy ítéletlogikai nyelv formuláival, a

(90)

és

szimbólumokat pedig formulák multihalmazaival helyettesítjük, az alapsémából alapszekventeket kapunk, a levezetési szabály segítségével pedig egy vagy két (vonal feletti) szekventből levezetünk egy (vonal alatti) harmadikat.

a nyelv változója és

term.

Tétel

• Minden alapszekvent által leírt formula logikai törvény.

• A szekventkalkulus egy levezetési szabályában a vonal alatti alakú szekvent pontosan akkor logikai törvény, ha a vonal feletti szekvent vagy szekventek is logikai törvények. (Tehát a szekventkalkulus levezetési szabályai megfordíthatóak.)

A tétel bizonyítása gyakorló feladat.

Definíció A szekventkalkulusbeli levezetésfa és a levezetésfa magassága a következő:

1. A kalkulus minden alapszekventje egy (egyetlen szekventből álló) levezetésfa, ez a szekvent lesz a levezetésfa gyökere. A levezetésfa magassága 1.

2. Ha

magasságú olyan levezetésfa, amelynek gyökere a szekventkalkulusbeli levezetési szabályban épp vonal feletti szekvent, akkor a levezetési szabállyal a vonal alatti

szekventet előállítva

(6.14)

is levezetésfa, ahol az

szekvent a kapott levezetésfa gyökere, és a levezetésfa magassága

(91)

. 3. Ha

és

rendre

és

magasságú olyan szekventkalkulusbeli levezetésfák, melyek gyökerei valamely levezetési szabályban épp vonal feletti szekventek, akkor előállítva a levezetési szabállyal a vonal alatti

szekventet,

(6.15)

is levezetésfa a kalkulusban, amelyben az

szekvent lesz a levezetésfa gyökere, és a levezetésfa magassága

.

4. Minden levezetésfa az 1–3. szabályok véges sokszori alkalmazásával áll elő.

Példa A szekventkalkulusban az alábbi fa 3 magasságú levezetésfa, melynek gyökere a

szekvent:

(92)

A szekventek mellett zárójelek között megadtuk azt a levezetési szabályt, melyet alkalmazva a szekvent előállt.

Definíció Azt mondjuk, hogy az

szekvent a szekventkalkulusban bizonyítható , ha van olyan szekventkalkulusbeli levezetésfa, melynek

a gyökere. Jelölése:

.

Az alábbi tétel bizonyítását az olvasóra bízzzuk.

Tétel [A szekventkalkulus helyessége.] Ha az

szekvent bizonyítható a szekventkalkulusban, akkor a

formula logikai törvény.

Példa A

szekvent a szekventkalkulusban a következő – 6 magasságú – levezetésfával bizonyítható:

(93)

Példa A

(6.16)

szekvent (ahol

) a szekventkalkulusban a következő levezetésfával bizonyítható:

A gyakorlatban a szekventkalkulus levezetési szabályait is ,,alulról felfelé'' szoktuk alkalmazni: amikor bizonyítani szeretnénk egy

szekventet, megpróbáljuk a bizonyító levezetésfát a gyökeréből (

-ből) kiindulva ,,alulról felfelé'' haladva felépíteni. Ehhez keresni kell az épülő levezetésfa minden nem alapszekvent leveléhez olyan levezetési szabályt a kalkulusban, mely segítségével a levél előállhat, és a levezetési szabálynak megfelelő vonal feletti szekvent(ek)et be kell írni a készülő levezetésfába ezen levél szülőjeként (szüleiként). A szekventkalkulus levezetési szabályainak megfordíthatósága miatt lényegtelen, hogy az alkalmazható levezetési szabályok közül melyiket választjuk.

(94)

Most foglalkozzunk azzal a kérdéssel, hogy vajon a szekventkalkulus ekvivalens-e a predikátumkalkulussal, azaz igaz-e, hogy egy

szekvent pontosan akkor bizonyítható a szekventkalkulusban, amikor

hipotézismentesen levezethető a predikátumkalkulusban. Ha ugyanis a két kalkulus ekvivalens, akkor a szekventkalkulus teljes kalkulus is.

Lemma Ha

a predikátumkalkulus alapformulája, akkor

bizonyítható a szekventkalkulusban.

Bizonyítás A bizonyítást konstruktív módon végezzük el, a predikátumkalkulus alapsémáiból előállított formulák esetén rendre megkonstruáljuk a megfelelő szekvent levezetését.

• Az 1. sémából előállított alapformula esetén a levezetés

• A 2. sémából előállított alapformula esetén a levezetés:

(95)

• A 11. sémából előállított alapformula esetén a levezetés:

• A 12. sémából előállított alapformula esetén a levezetés:

A többi alapformula esetén a levezetés megadását az olvasóra hagyjuk, a lemmát így bizonyítottnak tekinthetjük.

Lemma A predikátumkalkulus levezetési szabályai elérhetők a szekventkalkulusból.

Bizonyítás Azaz ha

és

bizonyíthatóak a szekventkalkulusban, akkor

is az, továbbá ha

bizonyítható, akkor

is,

(96)

• Az olvasóra bízzuk annak bizonyítását, ha

, akkor

is. Ha

, a

levezetési szabály megfordíthatósága miatt

is. Ekkor alkalmazva a szekventkalkulus vágás szabályát kapjuk, hogy

.

• Ha

bizonyítható, így alkalmazva a

szabályt

is bizonyítható.

Ezzel az állítást beláttuk.

Tétel Ha

hipotézismentesen levezethető a predikátumkalkulusban, akkor

bizonyítható a szekventkalkulusban, azaz ha

, akkor

Ábra

Table 4.5. elimináció (elnyelés)
Table 4.7. kiszámítási törvények
Table 4.11. kvantoros De Morgan-törvények
Table 7.4.  Table 7.5.  Table 7.6.  Herbrand-univerzuma: (7.10) Herbrand-bázisa: (7.11) Ekkor a megfeleltetés: (7.12)

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

Ö SSZEFOGLALÓ. Sok tudományterületen fordulnak el ő olyan problémák, amelyek megoldásához differenciálegyenletek használata szükséges. Ennek szemléltetése nem egyszer

Két héttel később a mérleg nyelvét jelentő Szocialista Párt a centrista pár- tokkal (UMP, UDI) „»kiszélesített köztársasági frontot« hoztak létre, és beálltak a

Auden Musée des Beaux Arts című költeménye olyan jelentős kezdő- pont, amely számos más angolszász (angol és amerikai) költőre gyakorolt hatást, a legkevés- bé sem

Bloom ez- zel nem egyszerűen azt állítja, hogy maga az irodalom, a művészet, az irodalmi szövegek és ezeknek a szövegeknek a megalkotói tartják életben az irodalmi

augusztus 27-i állásfoglalása az üzemi munkástanácsok megszüntetéséről (PIL 288.f. határozata az üzemi tanácsokról, amellyel egyidőben A Népköztársaság

Mûködésének már ebben a rövid korai idôszakában nagy sikerrel újította fel a Lohengrint (ez volt itteni debütálása), s a Filharmóniai Társaság elsô három

így küldötte erős és bátor lelke Akhilleuszt nagyszivü Aineiász ellen viadalra rohanni.. d) Menelaos keresi a társát, Antilochost a harcban Hát így szólt, mikor

A Csehszlovák Köztársaság keleti területe Szlovákia, az ország iparilag kevésbé fejlett részét alkotta.. évi adatokból