Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Matematikai logika Matematikai logika alapjai Készítette Takács Márta ÓE, NIK, IMRI Az ÓE Informatikus mérnök MsC tanítási segédleteként.

Hasonló előadás


Az előadások a következő témára: "Matematikai logika Matematikai logika alapjai Készítette Takács Márta ÓE, NIK, IMRI Az ÓE Informatikus mérnök MsC tanítási segédleteként."— Előadás másolata:

1 Matematikai logika Matematikai logika alapjai Készítette Takács Márta ÓE, NIK, IMRI Az ÓE Informatikus mérnök MsC tanítási segédleteként

2 Matematikai logika Források Pásztorné Varga Katalin, Várterész Magda, A matematikai logika alkalmazáselméletű tárgyalása,A matematikai logika alkalmazáselméletű tárgyalása, Panem Kiadó Kft ISBN: Ésik Zoltán (SZTE Informatikai Tanszékcsoport) Logika a számtastudományban Logika és informatikai alkalmazásai Varterész Magdolna, Uni-Deb Pásztorné Varga Katalin előadásfóliák (ELTE) Bércesné Novák Ágnes Elsőrendű logika, doksi.hu

3 Matematikai logika Nulladrendű logika (ítéletkalkulus) Formalizált nyelv: szintaxis és szemantika Szintaxis: Jelkészlet Formulaképzés szabályai Szemantika: A helyes szintaxisú formulák jelentése

4 Matematikai logika Szintaxis Jelkészlet: 1. Betűk (ítéletváltozók)-atomok (p,q,r,…) 2. ¬, ∧, ∨, (→,↔…) 3. I, H (1,0)-atomok 4. Zárójelek

5 Matematikai logika Formula Minden atom formula Ha α, β formula akkor ¬α, α ∧ β, α ∨ β, α→β is formulák a fenti két szabály véges sokszori alkalmazásával kapjuk a formulákat.

6 Matematikai logika Formulák A formulákban zárójelezéssel hangsúlyozhatjuk a műveleti prioritásokat A magyar kisbetűkkel az atomi formulákat, a görög betűkkel (vagy nagybetűkkel) az összetett formulákat jelöljük általában. Az alapformulák halmaza szűkíthető, hiszen pl. ¬α ∨ β és α→β kiértékelése megegyezik.

7 Matematikai logika Szemantika A jelkészlet elemeit értelmezzük. A betűk az ún. ítéletváltozók. Ítélet: a köznapi nyelv kijelentő mondatainak, kijelentéseinek felelnek meg. A klasszikus logikában csak olyan kijelentésekre gondolunk, amelyek igaz vagy hamis volta egyértelműen eldönthető. Ezáltal egyfajta ítéletet képviselnek e mondatok. Változók: mert az eredeti kijelentés tartalmától függetlenül, csakis annak igazságértékeit vehetik fel: az igaz, vagy a hamis értékek valamelyikét. Az igazságértékek tehát az ítéletváltozók lehetséges értékei, jelöljük ezek a halmazát I - -vel. I - csak a klasszikus logikában kételemű halmaz.

8 Matematikai logika Szemantika Azt a függvényt, amely a betűkkel jelölt változókhoz hozzárendeli a lehetséges igazságértékek valamelyikét, interpretációnak hívjuk. Az interpretációkat az igazságtáblába foglaljuk, amelynek n változó esetében 2 n sora van. Az I és H rögzített igazságértékű (Igaz, Hamis)- ítélet-konstansok.

9 Matematikai logika Az I betű igazságértéke minden interpretációban legyen igaz, a H betű igazságértéke minden interpretációban legyen hamis. A többi ítéletváltozó esetében az igazságérték az interpretációtól függ. A zárójelek értelmezése és használata a matematikában szokásos módon történik: lényegében a műveletek kiértékelési sorrendjét tudjuk általuk meghatározni. A ∧, ∨, →... jelek az igazságértékeken értelmezett műveleteknek felelnek meg. A műveletek definícióját tekinthetjük kiértékelésnek, kiértékelési szabálynak.

10 Matematikai logika IGAZSÁGTÁBLÁK, Alapformulák szemantikája

11 Matematikai logika Egyváltozós művelet Negáció (tagadás): Igazságtáblázat: ÍtéletváltozóÍtéletváltozó tagadása A¬A IgazHamis Igaz

12 Matematikai logika Kétváltozós műveletek Konjunkció A ∧ B: informális jelentése: és. Példa: hat osztható kettővel és hat osztható hárommal A mondat „formalizálása”: P: hat osztható kettővel Q: hat osztható hárommal hat osztható kettővel és hat osztható hárommal: P ∧ Q Mikor gondoljuk igaznak ezt a két kijelentés összetételével kapott mondatot? A konjunkció akkor és csak akkor igaz, ha mindkét változó igazságértéke igaz. ÍtéletváltozókFormula AB A∧BA∧B III IHH HIH HHH interpretációkiértékelés

13 Matematikai logika Diszjunkció A ∨ B: informális jelentése: vagy. Példa: hat osztható kettővel vagy hat osztható hárommal A mondat „formalizálása”: P: hat oszthtó kettővel Q: hat osztható hárommal hat osztahó kettővel vagy hat osztható hárommal: P ∨ Q Mikor gondoljuk igaznak ezt a két kijelentés összetételével kapott mondatot? A diszjunkció akkor és csak akkor hamis, ha mindkét változó igazságértéke hamis. Igazságtábla AB ABAB III IHI HII HHH Ítéletváltozók kiértékelés

14 Matematikai logika Implikáció A→B : informális jelentése: ha A, akkor B. Példa: Ha az iskolai tanulmányai alatt a hallgató minden félévben legalább jeles átlageredményt ért el, akkor az állam egy aranygyűrűt ad ajándékba a diploma kiosztásakor. Formalizáljuk ezt a mondatot! Mikor gondoljuk igaznak ezt a két kijelentés összetételével kapott mondatot? Az implikáció akkor és csak akkor hamis, ha az első operandusa (előtagja, feltétele) igaz, a második operandusa (utótagja, következménye) hamis. Igazságtábla AB ABAB III IHH HII HHI Ítéletváltozók kiértékelés

15 Matematikai logika Ekvivalencia (mint logikai művelet) Jelentése A akkor és csak akkor ha B, jelölése A↔B mint művelet az implikációból és a konjunkcióból származtatható: Def.: α↔β:= (α→β) ∧ (β→α) Az A↔B ekvivalencia csak akkor igaz, ha A és B igazságértéke ugyanaz. Megjegyzés: Az alapjelkészletben nem kell szerepelnie a ↔ jelnek, hiszen definícióban megadott formula rövidítéseként vezettük be. Igazságtábla AB ABAB III IHH HIH HHI Ítéletváltozók kiértékelés

16 Matematikai logika Kérdés: Bevezethetőek-e további kétváltozós műveletek? Igen, pl. a kizárólagos vagy (nem igaz, ha mindkét állítás igaz) Mitől függ az interpretációs sorok száma ? A változók számától.

17 Matematikai logika 1. példa: Adja meg az ((A∨B) ∧C) → (A∧¬B) formula kiértékelését minden interpretációban! ABC (A ∨ B)(A ∨ B) ∧ C)(A ∧ ¬B)((A ∨ B) ∧ C) → (A ∧ ¬B) IIIIIHH IIHIHHI IHIIIII IHHIHII HIIIIHH HIHIHHI HHIHHHI HHHHHHI

18 Matematikai logika 2. példa: Adja meg az ((A∨B) ∧(A ∨ C)) → (A ∨ (B ∧ C)) formula kiértékelését minden interpretációban! ABC (A ∨ B)(A ∨ C)(A ∨ B) ∧ (A ∨ C)B ∧ CA∨(B∧C)A∨(B∧C)(A ∨ B) ∧ (A ∨ C)  A ∨ (B ∧ C ) IIIIIIIII IIHIIIHII IHIIIIHII IHHIIIHII HIIIIIIII HIHIHHHHI HHIHIHHHI HHHHHHHHI

19 Matematikai logika 3. példa: Adja meg az (  (A → B))  (A  B) formula kiértékelését minden interpretációban! ABA → B  (A → B) (A  B)  ((A → B)(  (A  B) IIIHHI IHHIII HIIHHI HHIHHi

20 Matematikai logika 4. példa: Adja meg az (  A)  A formula kiértékelését minden interpretációban! A  A(  A)  A IHH IHH HIH HIH

21 Matematikai logika Tautológia, ellentmondás, modell Def.: Tautológia (azonosan igaz formula, érvényes formula): Az a formula, amely minden interpretációban igaz (például a 3. példabeli formula). Def.: Kontradikció (ellentmondás, azonosan hamis, kielégíthetetlen): Az a formula, amely minden interpretációban hamis (például a 4. példabeli formula). Def.: Modell: modellnek nevezzük azt az interpretációt, amelyben a formula igaz. Pl. az első példabeli formula 2.,3., 4. 6., 7. és 8. sorban levő interpretációja modell.

22 Matematikai logika A kétértékű logikában érvényes az ún. harmadik (érték) kizárásának elve, amelyet például az alábbi formulákkal is megfogalmazhatunk: A ∧ ¬A=H (kontradikció) – ez azt jelenti, hogy az A ítéletváltozó az {igaz, hamis} értékek közül pontosan egyet vehet fel (kétértékű logika). A v ¬A=I (tautológia) – ez informálisan azt jelenti, hogy az A ítéletváltozó az {igaz, hamis} értékek közül legalább az egyiket felveszi.

23 Matematikai logika Kérdések: Mi a tautológia tagadása? Mi a kontradikció tagadása? kielégíthető formulák van modellje vagy tautológia Kielégíthetetlen formula -nincs modellje - kontradikció, ellentmondás

24 Matematikai logika Adjuk meg az (A →B) és a (¬A  B) formulák kiértékelését minden interpretációban! AB (A→B)¬A¬A ¬A  B (A →B)  ( ¬A  B ) IIIHI I IHHHHI HIIIII HHIIII

25 Matematikai logika Adjuk meg az (A →B) és a (A  ¬B) formulák kiértékelését minden interpretációban! AB (A→B)¬B¬B (A  ¬B) (A →B)  (A  ¬B) IIIHH H IHHIIH HIIHHH HHIIHH

26 Matematikai logika Ekvivalens formulák Def.: két formula, α és β, ekvivalens ha minden interpretációban megegyezik az igazságértékük. (A két formula közös igazságtáblájában a kiértékelésnek megfelelő oszlopok azonosak) Jelölés: α ≡β

27 Matematikai logika Igazoljuk, hogy ekvivalensek a következő formulák (A →B) ↔ (¬ A  B) és (¬(A →B)) ↔ (A  ¬B) és ¬ (A  B) ↔ (¬ A ∧ ¬B))

28 Matematikai logika Példák fontos ekvivalens formulákra A→B≡¬A ∨ B De Morgan azonosságok ¬(A ∨ B)≡¬A ∧ ¬B ¬(A ∧ B)≡¬A ∨ ¬B

29 Matematikai logika 1.b. A ∧ B≡B ∧ A 2.b. (A ∧ B) ∧ C≡A ∧ (B ∧ C) 3.b. A ∧ (A ∨ B)≡A 4.b. H ∧ A≡H 5.b. A ∧ (B ∨ C)≡(A ∧ B) ∨ (A ∧ C) 6.b.A ∧ ¬A≡H 7.b A ∧ I ≡ A

30 Matematikai logika 1.a. A ∨ B≡B ∨ A 2.a. (A ∨ B) ∨ C≡A ∨ (B ∨ C) 3.a. A ∨ (A ∧ B)≡A 4.a. I ∨ A≡I 5.a. A ∨ (B ∧ C)≡(A ∨ B) ∧ (A ∨ C) 6.a. A ∨ ¬A≡I 7.a. A ∨ H ≡ A

31 Matematikai logika Halmazelméletben is hasonló azonosságok igazak 1.a. A ∪ B=B ∪ A 1.b. A∩B=B∩A 2. a. (A ∪ B) ∪ C=A ∪ (B ∪ C) 2.b. (A∩B)∩C=A∩(B∩C) 3. a. A ∪ (A∩B)=A 3.b. A∩(A ∪ B)=A 4. a. U ∪ A=U 4.b. ∅ ∩A= ∅ 5. a. A ∪ (B∩C)= (A ∪ B) ∩ (A ∪ C) 5.b. A∩(B ∪ C)= (A∩B) ∪ (A∩C) 6. a. A ∪ A= U 6.b. A∩ A= ∅ Az olyan struktúrákat, amelyekben két művelet van definiálva, és van két kitüntett elem, amelyekre a fenti azonosságok igazak, BOOLE ALGEBRÁnak nevezzük. További példa: a valószínűségszámításban Boole algebrát alkotnak az események.

32 Matematikai logika Kérdés: Ha α és β ekvivalens formulák, mit tudunk mondani az α↔β formuláról? Lemma: Minden (eddig felírt) igazságtábla igaz úgy is, ha az atomok helyett formulákat írunk.

33 Matematikai logika Lemma: α és β akkor és csak akkor ekvivalens, ha α↔β tautológia. Biz.: a. α ekvivalens β ⇒ α↔β tautológia. Ha α és β igazságértéke megegyezik, akkor az ekvivalencia definíciója miatt csak igaz lehet, azaz tautológia. b. ha α↔β tautológia, akkor a formula csak igaz lehet, de ez pontosan akkor van, ha α és β igazságértéke ugyanaz, vagyis α ekvivalens β. Tétel: Ha α tautológia, akkor az ítéletváltozók helyébe formulákat írva tautológiát kapunk. Tétel: Ha α tautológia, akkor bármely részformula helyett azzal ekvivalens formulát írva tautológiát kapunk.

34 Matematikai logika Helyes következtetési szabályok

35 Matematikai logika A logikai következmény A logika egyik feladata: helyes következtetési sémák kialakítása. Példa következtetésekre : Minden veréb madár. 1.Feltétel Minden madár gerinces. 2.Feltétel Minden veréb gerincesKövetkezmény A példát nem tudjuk nulladrendű formulákkal jól modellezni (minden?).

36 Matematikai logika Az alábbi példa nulladrendben is jól modellezhető: Ha elfogy a benzin, az autó leáll. Feltétel1 Elfogyott a benzin. Feltétel2 Az autó leáll Következmény

37 Matematikai logika Formalizálás A= Elfogy a benzin, B=az autó leáll. A megfelelő séma: A A→B _____________ B

38 Matematikai logika Korrekt jelöléssel: {A, A→B}  = 0 B Latin szavakkal: 1. feltétel 1. Premissza 2. feltétel. 2. Premissza Következmény Konklúzió

39 Matematikai logika Mikor helyes egy következtetési séma? Def.: Modellelméleti vagy szemantikus következményfogalom: Azt mondjuk, hogy az {α 1, α 2, …,α n } formulahalmaz következménye a β formula, ha minden olyan interpretációban, amelyben az α 1, α 2, …α n formulák igazak, β is igaz. Más szavakkal: {α 1, α 2, …,α n } formulahalmaz következménye a β formula, ha β legalább akkor igaz, amikor az α i -k igazak. Jelölés: {α 1, α 2, …,α n }  = 0 β

40 Matematikai logika Megjegyzés: Mivel az elsőrendű logika követketményfogalma nem teljesen azonos a nulladrendűével, ezért az indexben szokás azt is jelölni, hogy melyik nyelvről van szó:  = 0 Az elsőrendű logikában a következményfogalom jele:  = 1 Ha β tautológia, akkor minden interpretációban igaz, tehát abban is, amelyekben az α i –k hamisak. Ezért a tautológia bármely formulahalmaz következménye. Ez indokolja a tautológia jelölését:  = 0 β.

41 Matematikai logika A következményfogalom definíciójának egyszerű következményei : α i -k közös modellje β-nak is modellje (fordítva az állítás nem igaz) tautológia következménye csak tautológia lehet: tautológia  = 0 tautológia a tautológia bármely α formula következménye: α  = 0 tautológia, kontradikciónak bármi lehet a következménye ( spec. A is és az A tagadása is) : Kontradikció  = 0 α kontradikció csak kontradikciónak lehet következménye (hiszen más formula esetén igaznak kellene lennie ott, ahol a formula igaz): kontradikció  = 0 kontradikció

42 Matematikai logika Def.: Azokat a következtetési sémákat tekintjük helyesnek, amelyekben a következmény valóban a feltételek (szemantikai) következménye.

43 Matematikai logika Példák helyes következtetési sémákra (szabályokra) 1. Modus ponens (leválasztási szabály): {α, α→β }  = 0 β Azt kell vizsgálnuk, ahol α és α→β igaz, ott a β igaz-e. Ha igen, akkor helyes, ha nem, akkor helytelen a következtetési séma. Csak az első interpretációban teljesül, hogy α és α→β igaz. Ebben a interpretációban β is igaz, tehát valóban {α, α→β }  = 0 β. Ítéletváltozók α β α→β I I I I H H H I I H H I

44 Matematikai logika Tétel: α 1, α 2, …,α n  = 0 β akkor és csak akkor, α 1 ∧ α 2 ∧ … ∧ α n  = 0 β Biz.: α 1, α 2, …,α n együttesen akkor és csak akkor igaz, ha α 1 ∧ α 2 ∧ … ∧ α n igaz. E tétel miatt a  = 0 jel bal oldalát a továbbiakban egyszerűen α- val jelöljük, ahol α-n mindig α=α 1 ∧ α 2 ∧ … ∧ α n formulát értjük. (Mutassuk meg most a Modus ponens helyességét)

45 Matematikai logika Feladat: Bizonyítsa be, hogy az alábbi következtetési sémák helyesek! Modus tollens (elvető mód, kontrapozíció): {α→β, ¬β }  = 0 ¬α Hipotetikus szillogizmus (feltételes szillogizmus, láncszabály): {α→β, β→γ }  = 0 α→ γ Modus tollendo ponens / diszjunktív szillogizmus (elvéve helyező mód): {α ∨ β, ¬β}  = 0 α Indirekt: {¬α→¬β, β }  = 0 α

46 Matematikai logika Tétel: α  = 0 β akkor és csak akkor, ha α→β tautológia. Biz.: a.) ha α  = 0 β akkor α→β tautológia: a jelölt sor ez esetben nem lehet az igazságtáblában, ugyanis akkor α|= 0 β nem teljesülne, hiszen ekkor β-nak legalább akkor kell igaznak lennie, amikor α igaz. A maradék sorokra pedig valóban az i az igazságérték. b.) ha α→β tautológia, akkor α  = 0 β: Ha α→β tautológia, akkor a fenti igazságtáblában jelölt sor nem szerepelhet, hanem csak a jelöletlen, I sorok. Ezekben a sorokban viszont valóban a β legalább ott igaz, ahol az α. α β α→β I I I I H H H I I H H I

47 Matematikai logika Példa: Modus ponens: {α, α→β }  = 0 β helyes: Ítéletváltozók Formulák α β α→β (α ∧ (α→β)) (α ∧ (α→β)) → β I I I I I I H H H I H I I H I H H I H I

48 Matematikai logika Feladat: A fenti módszerrel bizonyítsa be, hogy az alábbi következtetési szabályok helyesek! Modus tollens: {α→β, ¬β }  = 0 ¬α Hipotetikus szillogizmus: {α→β, β→γ}  = 0 α→ γ Modus tollendo ponens / diszjunktív szillogizmus (elvéve helyező mód) {α ∨ β, ¬β}  = 0 α Indirekt: {¬α→¬β, β }  = 0 α

49 Matematikai logika Tétel: α  = 0 β akkor és csak akkor, ha α ∧ ¬β azonosan hamis. Biz: α  = 0 β akkor és csak akkor, ha α→β tautológia, vagyis ¬(α→β) kontradikció (azonosan hamis): ¬(α→β)=¬(¬α ∨ β)≡¬¬α ∧ ¬β≡α ∧ ¬β Példa: Modus ponens {α, α→β }  = 0 β helyes: Ítéletváltozók Formulák α β α→β (α ∧ (α→β)) (α ∧ (α→β)) ∧ ¬β I I I I H I H H HH H I I H H H H I H H

50 Matematikai logika Feladat: A fenti módszerrel bizonyítsa be, hogy az alábbi következtetési szabályok helyesek! - Modus tollens: {α→β, ¬β }  = 0 ¬α - Hipotetikus szillogizmus: {α→β, β→γ}  = 0 α→ γ - Modus tollendo ponens / diszjunktív szillogizmus (elvéve helyező mód) {α ∨ β, ¬β}  = 0 α Indirekt: {¬α→¬β, β }  = 0 α

51 Matematikai logika A rezolúció alapelvéhez Tétel: {α ∨ β, γ ∨ ¬β}  = 0 α ∨ γ (diszjunktív szillogizmus általánosabban). Megjegyzés: Az α ∨ β és γ ∨ ¬β formulák ún. klózok. E két klóz rezolvense α ∨ γ. Biz.: igazságtáblával, a következők alapján többféleképpen lehet: a.) def. alapján (házi feladat) b.) α  = 0 β akkor és csak akkor, ha α→β tautológia (házi feladat) c.) α  = 0 β akkor és csak akkor, ha α ∧ ¬β azonosan hamis (előadáson)

52 Matematikai logika Alkalmazás: automatikus tételbizonyítás, rezolúció (PROLOG nyelv ) alapelve A következményfogalom eldöntésére bizonyított tételekben az összes interpretációt meg kell vizsgálni. Ez exponenciális nagyságrendű feladat. Ezért volt forradalmi jelentőségű a rezolúció felfedezése (Robinson, 1965).

53 Matematikai logika KNF Def.: Konjunktív NormálForma, KNF: K i klózok konjunkciója, klóz: literálok diszjunkciója, literál: atom, vagy annak tagadása. KNF: diszjunkciók konjunkciója K 1 ∧ K 2 ∧ … ∧ K n K i = A 1 ∨ A 2 ∨ … ∨ A n Literál Pozitív, ha A Negatív, ha ¬A

54 Matematikai logika Tétel: Minden formulához létezik vele ekvivalens konjunktív normálforma. PÉLDA : α→β≡¬α ∨ β De Morgan ¬(α ∧ β)≡¬ α ∨ ¬β ¬(α ∨ β)≡¬ α ∧ ¬β α ∨ (β ∧ γ)≡( α ∨ β) ∧ ( α ∨ γ) α ∧ (β ∨ γ)≡( α ∧ β) ∨ ( α ∧ γ)

55 Matematikai logika DNF Def.: DNF (diszjunktív normálforma): konjunkciók diszjunkciója Megjegyzés: A KNF és DNF duális: ua. mindkettő, csak ∧ helyett ∨, ∨ helyett ∧.

56 Matematikai logika (Funkcionálisan) teljes rendszerek minden formula kifejezhető a ∨, ¬ műveletekkel. Ezért azt mondjuk, hogy e műveletek teljes rendszert alkotnak. A De Morgan azonosságokból azonnal adódik, hogy ¬(α ∨ β)≡¬ α ∧ ¬β, így ∧, ¬, és hasonlóképpen bizonyíthatóan a ∨, ¬ is funkcionálisan teljes halmaz. A ∧, ∨ műveletekkel viszont nem lehet a ¬-t kifejezni, így a konjunkció és diszjunkció együttesen NEM alkot teljes rendszert. Feladat: Bizonyítsa be, hogy a → és ¬ teljes rendszert alkot! (Hogyan alakítható az implikáció ekvivalens diszjunktív formulává?)

57 Matematikai logika Hozza konjunktív normálformára az alábbi formulát! ¬[(A→B)→((C ∨ A)→(C ∨ B))]≡ ¬[(¬A ∨ B)→(¬(C ∨ A) ∨ (C ∨ B))]≡ ¬[¬(¬A ∨ B) ∨ (¬(C ∨ A) ∨ (C ∨ B))]≡ ¬[¬(¬A ∨ B) ∨ ((¬C ∧ ¬A) ∨ (C ∨ B))]≡ ¬[(A ∧ ¬B) ∨ (¬C ∧ ¬A) ∨ (C ∨ B)]≡ ¬(A ∧ ¬B) ∧ ¬(¬C ∧ ¬A) ∧ ¬(C ∨ B)]≡ (¬A ∨ B) ∧ (C ∨ A) ∧ (¬C) ∧ ¬B A klózok: K1=(¬A ∨ B) K2=(C ∨ A) K3=(¬C) K4=¬B

58 Matematikai logika A rezolúció alapelve Tétel α  = 0 W akkor és csak akkor, ha α ∧ ¬W kontradikció, vagyis α=α 1 ∧ α 2 ∧ … ∧ α n miatt α 1 ∧ α 2 ∧ … ∧ α n ∧ ¬W kontradikció. Azaz a rezolúció alapelvét így alkalmazzuk: Adott a {α 1,α 2, …,α n } formulahalmaz. E tétel alapján el szeretnénk dönteni, hogy {α 1,α 2, …,α n }  = 0 W? W-t is, és a feltételhalmaz formuláit is konjunktív normálformára hozzuk. Mikor igaz egy KNF? Ha minden benne szereplő klóz igaz. A klózokban viszont lehetnek negált és negálatlan, azonos atomok. Ezek együttesen nem lehetnek igazak az egész formulában, ezért ezeket a klózpárokból, amelyekben szerepelnek, elhagyjuk, és a „maradékból” egy klózt képezünk, ez a rezolvens. Az így kapott klózzal bővítjük a formulát. Ezen új formula modelljét (amely interpretációban igaz a formula) keressük.

59 Matematikai logika A fentiek alkalmazása: Adott az {α 1,α 2, …,α n }formulahalmaz. El szeretnénk dönteni, hogy {α 1,α 2, …,α n } |= 0 W? W-t is, és a feltételhalmaz formuláit is konjunktív normálformára hozzuk. Ekkor világos, hogy az α 1 ∧ α 2 ∧ … ∧ α n ∧ ¬W formula is KNF-ben van. Azt kell tehát megnézni, hogy van-e modellje. A fenti megjegyzés értelmében olyan klózokat keresünk, amelyekben azonos atom pozitív és negatív literálja szerepel. Ezekből a fent leírt módon konstruáljuk az új klózt, a rezolvenst. Az eljárás akkor ér véget, ha egy negált és egy negálatlan literál önmaga alkot egy-egy klózt. Ezek rezolvense az üres klóz, az azonosan hamis klóz (NIL-nek is nevezik). Jele: EGY KIS NÉGYZET

60 Matematikai logika Példa: Adott {P 1, P 1 →Q 1, Q 1 → Q 2 }=AB (adatbázis) Kérdés: Q 2 következmény-e? Megoldás: {P 1, P 1 →Q 1, Q 1 → Q 2 } a feltételek halmaza, mindegyiket KNF-re kell hozni: AB={ P 1, ¬P 1 ∨ Q 1, ¬Q 1 ∨ Q 2 } W= Q 2, tagadása: ¬ Q 2 (tagadás ⇒ indirekt feltevés) Fentiek értelmében azt kell belátni, hogy az AB ∪ {¬ Q 2 } formulahalmaz elemeinek nincsen modellje, nincsen olyan interpretáció, amelyben igaz lehetne.

61 Matematikai logika Lássuk: Ha például P 1 igaz ⇒ ¬P 1 nem lehet igaz a 2. klózban, ezért mivel minden klóznak igaznak kell lennie, a Q 1 literálnak igaznak kell lennie ⇒ ¬Q 1 ekkor hamis a 3. klózban, ami szerint tehát Q 2 igaz, de ekkor már ellentmondásra jutottunk, hiszen Q 2 és ¬ Q 2 egyszerre nem lehet igaz. (Azért kellene nekik egyszerre igaznak lenni, mert különböző klózokban szerepelnek, és az egész formula igazságát az összes klóz igaz értéke garantálja. Igy azonban nagyon nehéz bizonyítani, hiszen minden lehetséges értékadást végig kellene nézni. Ezt oldja meg a rezolúció.

62 Matematikai logika Gondoljuk át: Igaz-e, hogy {P 1, P 1 →Q 1, Q 1 → Q 2 } |= 0 Q 2 igaz (minden interpretációjában), tehát a vele ekvivalens: (P 1  P 1 →Q 1  Q 1 → Q 2 )  Q 2 is igaz, és a vele ekvivalens:  (P 1  P 1 →Q 1  Q 1 → Q 2 )  Q 2 is igaz. A formula negáltja:  (  (P 1  P 1 →Q 1  Q 1 → Q 2 ))   Q 2 azaz a (P 1  P 1 →Q 1  Q 1 → Q 2 )   Q 2 formula viszont hamis.

63 Matematikai logika Alakítsuk tovább: (P 1  P 1 →Q 1  Q 1 → Q 2 )   Q 2 P 1  (  P 1  Q 1 )  (  Q 1  Q 2 )   Q 2 A formula KNF-ben van. Hamisnak kell lennie, tehát keressünk ellentmondást!

64 Matematikai logika Rezolúciós levezetés: P1  P1  Q1 Q2Q1P1  P1  Q1  Q1  Q2  Q2

65 Matematikai logika Fontos szabályok Eredeti klózhalmaznak logikai következménye (  = 0 ) a rezolvenssel bővitett klózhalmaz. Az üres klóz az ellenetett literálpárból jön létre. Ha a negált eredeti implikáció normálformájából a rezolvensek kielégitetlen klózhalmazt alkotnak, akkor az eredeti igaz.

66 Matematikai logika Példa: Igazoljuk, hogy az alábbi ϕ formula tautológia! ϕ=[(A→B)→[(C ∨ A)→(C ∨ B)]] Megoldás: ϕ akkor és csak akkor tautológia, ha ¬ϕ kielégíthetetlen ⇒ ¬ϕ-t KNF- re írjuk át. ¬ϕ=¬[(A→B)→[(C ∨ A)→(C ∨ B)]]≡…≡(¬A ∨ B) ∧ (C ∨ A) ∧ (¬C) ∧ (¬B) Végezzük el a rezolúciós levezetést!

67 Matematikai logika Logika a számítástechnikában FÁK

68 Matematikai logika Fák a logikában Itéletlogikai formula szerkezeti fája Egy C formula szerkezeti fája egy olyan véges rendezett fa, melynek csúcsai formulák. 1.A gyökere C. 2.  A csúcsának pontosan egy gyermeke van, az A formula 3.Az A*B csúcsának pontosan két gyermeke van, rendre az A és B formulák (* logikai művelet) 4.Levelei elemi (vagy prím) formulák

69 Matematikai logika Példa: rajzoljuk meg a  (X  Y)  Z formula ítéletlogikai fáját!  (X  Y)  Z  (X  Y)XYXY XY Z

70 Matematikai logika Az X,Y,Z ítéletváltozókat tartalmazó formula szemantikus fája GyökérX1Y1Z1Z2Y2Z3Z4X2Y3Z5Z6Y4Z7 Z8 X  X X Y  Y Y  Y Y Y  Z Z Z

71 Matematikai logika Igazságértékelési fák old Legyen A tetszőleges formula (ítéletlogikai). Az A interpretációira vonatkozó  A i és  A h feltételeket a SZERKEZETI REKURZIÓ alapján így határozzuk meg: a) ha A prímformula, akkor  A i feltételt azok az I interpretációk teljesítik, amelyekben I (A)=i, a  A h feltételt pedig azok, amelyekre I (A)=h.

72 Matematikai logika b) a  (  A) i feltételt azok az I interpretációk teljesítik, amelyekben a  A h feltétel teljesül.  (  A) i AhAh  (  A) h AiAi

73 Matematikai logika c) a  (A  B) i feltételt azok az I interpretációk teljesítik, amelyekben a  A i és a  B i feltételek együttesen teljesülnek.  (A  B) h AhAh BhBh  (A  B) i AiAi BiBi

74 Matematikai logika c) a  (AVB) i feltételt azok az I interpretációk teljesítik, amelyekben a  A i vagy a  B i feltételek teljesülnek.  (AVB) i AiAi BiBi  (AVB) h AhAh BhBh

75 Matematikai logika c) a  (A  B) i feltételt azok az I interpretációk teljesítik, amelyekben a  A h vagy a  B i feltételek teljesülnek.  (A  B) i AhAh BiBi  (A  B) h AiAi BhBh

76 Matematikai logika Példa: Adjuk meg az (Y  Z)  (Z  X) formula igazságtábláját, majd a kiértékelési fáját, és vegyük észre az összefüggéseket! XYZ XXZ  X(Y  Z)(Y  Z)  (Z  X) IIIHHIH IIHHIII IHIHHIH IHHHIHH HIIIIII HIHIIII HHIIIII HHHIIHH XYZ -IH H-I HI- modellek: {(I,I,H),(H,I,I),(H,I,H),(H,H,I)} „lusta tábla”

77 Matematikai logika Az (Y  Z)  (Z  X) formula igazságértékelés-fája 64. old  ((Y  Z)  (Z  X)) i  ((Y  Z) i  (Z  X) i Y iY i  Z H  (  X) i  (X) H  Z i  Z H  (  X) i  (X) H x XYZ -IH H-I HI- Leolvastunk egy „hamist” Z egyszerre lenne igaz és hamis Láthatóak a lusta tábla sorai.

78 Matematikai logika Mit láthatunk még a táblából? Példa: Az (Y  Z)  (Z  X) formula igazságtáblája: XYZ XXZ  X(Y  Z)(Y  Z)  (Z  X) IIIHHIH IIHHIII IHIHHIH IHHHIHH HIIIIII HIHIIII HHIIIII HHHIIHH XYZ -IH H-I HI- Modellek: {(I,I,H),(H,I,I),(H,I,H),(H,H,I)} „lusta tábla”

79 Matematikai logika A diszjunktív normálforma (DNF) előállítása az igazságtáblából (Y  Z)  (Z  X) XYZ XXZ  X(Y  Z)(Y  Z)  (Z  X) IIIHHIH IIHHIII* X  Y  Z IHIHHIH IHHHIHH HIIIIII* XYZXYZ HIHIIII*  X  Y  Z HHIIIII*  X  Y  Z HHHIIHH DNF (X  Y  Z)  (  X  Y  Z)  (  X  Y  Z)  (  X  Y  Z)

80 Matematikai logika A konjunktív normálforma (KNF) előállítása az igazságtáblából (Y  Z)  (Z  X) XYZ XXZ  X(Y  Z)(Y  Z)  (Z  X) IIIHHIH*  X   Y   Z IIHHIII IHIHHIH*  X  Y   Z IHHHIHH*  X  Y  Z HIIIIII HIHIIII HHIIIII HHHIIHH* X  Y  Z KNF (  X   Y   Z)  (  X  Y   Z)  (  X  Y  Z)  (X  Y  Z)

81 Matematikai logika Re zolúció

82 Matematikai logika A rezolúció alapelvéhez Tétel: {α ∨ β, γ ∨ ¬β}  = 0 α ∨ γ Hol használjuk? - Szemantikus következményfogalom, - kielégíthetőség vizsgálata. Mit jelent? ( (α ∨ β)  (γ ∨ ¬β))  ( α ∨ γ) igaz.  α∨βα∨βγ ∨ ¬β(α ∨ β)  (γ ∨ ¬β) α∨γα∨γ ( (α ∨ β)  (γ ∨ ¬β))  ( α ∨ γ) IIIIIIII IIHIHHII IHIIIIII IHHIIIII HIIIIIII HIHIHHHI HHIHIHII HHHHIHHI

83 Matematikai logika A konjunktív normálformát egyszerűsíthetjük a rezolúciós elv alapján ((Y  Z)  (Z  X))  ((  X   Y   Z)  (  X  Y   Z)  (  X  Y  Z)  (X  Y  Z)) KNF-re hozás miatt: (  X   Y   Z)  (  X  Y   Z)  (  X  Y  Z)  (X  Y  Z)  (  X   Z)  (Y  Z)  (  X  Y) a rezolúciós elv alapján LEVEZETHETŐ:

84 Matematikai logika Mutassuk meg igazságtáblával! XYZ XXZ  X(Y  Z)(Y  Z)  (Z  X)  X  Y (Y  Z)  (Z  X)   X  Y IIIHHIHII IIHHIIIII IHIHHIHhI IHHHIHHHI HIIIIIIII HIHIIIIII HHIIIIIII HHHIIHHiI

85 Matematikai logika Hol látszik a ((Y  Z)  (Z  X))  (  X  Y) a fában? (Ya  Z)  (Z  X)   ((Y  Z)  (Z  X)) i  ((Y  Z) i  (Z  X) i Y iY i  Z H  (  X) i  (X) H  Z i  Z H  (  X) i  (X) H x XYZ -IH H-I HI-

86 Matematikai logika Újabb példa ((Y  Z)  (Z  X))  (  X  Y) XYZ XXZ  X(Y  Z)(Y  Z)  (Z  X)  X  Y (Y  Z)  (Z  X)   X  Y IIIHHIHII IIHHIIIII IHIHHIHHI IHHHIHHHI HIIIIIIII HIHIIIIII HHIIIIIII HHHIIHHII

87 Matematikai logika Bizonyítsuk be, hogy {(Y  Z), (Z  X)}  = (  X  Y), használjunk lineáris rezolúciót! {(Y  Z), (Z  X)}  = (  X  Y) igaz, akkor (Y  Z)  (Z  X)  (  X  Y) igaz (Y  Z)  (  Z  X)  (  X  Y) igaz  ((Y  Z)  (  Z  X))  (  X  Y) igaz  (  ((Y  Z)  (  Z  X))  (  X  Y)) hamis (Y  Z)  (  Z  X)   (  X  Y) hamis (Y  Z)  (  Z  X)  X   Y) hamis A Klózok: Y  Z  Z  X X  Y Két párosítható klózzal indítunk, és a kapott rezolvenshez egy újabb, még nem felhasznált klózt párosítunk. YZYZ  Z  X Y  X X Y  Y Y Üres klóz

88 Matematikai logika Az {(Y  Z),(Z  X)} formula-halmaznak következménye-e (Y   Z)? {(Y  Z),(Z  X)}  = 0 (Y V  Z) IGAZ HAMIS Nem vezethető le az üres klóz. HAMIS

89 Matematikai logika Nem vezethető le az üres klóz hamis

90 Matematikai logika Az {(Y  Z),(Z  X)} formula- halmaznak következménye-e (Y  X) {(Y  Z),(Z  X)}  = 0 (Y  X) IGAZ HAMIS

91 Matematikai logika Nem alkalmazható a rezolúciós elv, mert két pár ellentett literálpár van a formulában, nem vezethető le az üres klóz. hamis

92 Matematikai logika Logikai (szemantikai) következményfogalom, alkalmazás Megszerkesztjük a fát Leolvashatjuk a normálformát és a szemantikai következményeket Vagy bizonyíthatjuk, hogy kielégíthetetlen a kapcsolódó formula (lásd a következő példa). Ennek alapja a következő tétel: Legyenek A1, A2,..., An, B tetszőleges (ítéletlogikai) formulák. B akkor lesz az {A1, A2,..., An} formulahalmaz szemantikus következménye, ha az {A1, A2,..., An,  B} formulahalmaz kielégíthetetlen, azaz az A1  A2 ...  An   B formula kielégíthetelen.

93 Matematikai logika Rezolúciós stratégiák összefoglaló Klózhalmazt (diszjunkciókat) kell létrehoznunk Pl. mint egy szemantikus következmény levezetésekor: {formulahalmaz}  F(igaz)  {formulahalmaz}  F (igaz)  {formulahalmaz}  F(hamis) Pl. hogy bizonyítsuk, hogy egy formulahalmaz kielégíthetetlen

94 Matematikai logika Fontos megjegyzések: Rezolúciós elv, Fontos példák: klózpárrezolvense X  Y,  Y  ZXZXZ X   Y,  Y  Z Nincs, mindkét azonos alapú literál negált X   Y, Z   V Nincs, nics azonos alapú literál  X   Y, X  Y  Z Nincs, két komplemens literálpár van X,  X Üres klóz

95 Matematikai logika Példa: vezessük le különböző rezolúciós stratégiákkal az üres klózt az {X  Z,  X  Z,X   Z,  X   Z} formulahalmazból!


Letölteni ppt "Matematikai logika Matematikai logika alapjai Készítette Takács Márta ÓE, NIK, IMRI Az ÓE Informatikus mérnök MsC tanítási segédleteként."

Hasonló előadás


Google Hirdetések