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 Matematikai logika
Források Pásztorné Varga Katalin , Várterész Magda, A matematikai logika alkalmazáselméletű tárgyalása, Panem Kiadó Kft. - 2003 - ISBN: 9789635453641 Ésik Zoltán (SZTE Informatikai Tanszékcsoport) Logika a számtastudományban Logika és informatikai alkalmazásai Varterész Magdolna, Uni-Deb http://www.inf.unideb.hu/~varteres/logika/Logikafo.pdf Pásztorné Varga Katalin előadásfóliák (ELTE) Bércesné Novák Ágnes Elsőrendű logika, doksi.hu www.banki.hu/jegyzetek/mat/szma/szma_1_felev/bmf-logika.pdf 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 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 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. 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. 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. 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 2n sora van. Az I és H rögzített igazságértékű (Igaz, Hamis)- ítélet-konstansok. 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. Matematikai logika
IGAZSÁGTÁBLÁK, Alapformulák szemantikája 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 Igaz Hamis 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ók Formula A B A∧B I H interpretáció kiértékelés 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 A B AB I H Ítéletváltozók kiértékelés Matematikai logika
Implikáció Igazságtábla A B AB I H Ítéletváltozók 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 A B AB I H Ítéletváltozók kiértékelés Matematikai logika
Igazságtábla A B AB I H 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 A B AB I H Ítéletváltozók kiértékelés Matematikai logika
Bevezethetőek-e további kétváltozós műveletek? 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. Matematikai logika
1. példa: Adja meg az ((A∨B) ∧C) → (A∧¬B) formula kiértékelését minden interpretációban! H 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! A B C (A∨B) (A∨C) (A∨B) ∧ (A∨C) B ∧C A∨(B∧C) (A∨B) ∧ (A∨C) A∨(B∧C) I H Matematikai logika
3. példa: Adja meg az ( (A → B)) (AB) formula kiértékelését minden interpretációban! H i Matematikai logika
4. példa: Adja meg az ( A)A formula kiértékelését minden interpretációban! H 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. Matematikai logika
A kétértékű logikában érvényes az ún 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. Matematikai logika
Mi a tautológia tagadása? Mi a kontradikció tagadása? 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 Matematikai logika
Adjuk meg az (A →B) és a (¬AB) formulák kiértékelését minden interpretációban! (A →B) (¬AB) I H Matematikai logika
Adjuk meg az (A →B) és a (A¬B) formulák kiértékelését minden interpretációban! (A →B) (A¬B) I H 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: α ≡β Matematikai logika
Igazoljuk, hogy ekvivalensek a következő formulák (A →B) ↔ (¬ AB) és (¬(A →B)) ↔ (A¬B) és ¬ (A B) ↔ (¬ A∧¬B)) 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 Matematikai logika
5.b. A∧(B∨C)≡(A∧B)∨(A∧C) 6.b.A∧¬A≡H 7.b A ∧ I ≡ A 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 Matematikai logika
5.a. A∨(B∧C)≡(A∨B)∧(A∨C) 6.a. A∨¬A≡I 7.a. A ∨ H ≡ A 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 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. 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. 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. Matematikai logika 33
Helyes következtetési szabályok 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 gerinces Következmény A példát nem tudjuk nulladrendű formulákkal jól modellezni (minden?). 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 Matematikai logika
Formalizálás A= Elfogy a benzin, B=az autó leáll. A megfelelő séma: A _____________ B 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ó 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 β Matematikai logika
Az elsőrendű logikában a következményfogalom jele: =1 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 β. 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ó 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. 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 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) 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 α 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 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 Matematikai logika
Modus tollens: {α→β, ¬β } =0¬α Hipotetikus szillogizmus: 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 α 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 H H H I I H H H H I H H Matematikai logika
- Modus tollens: {α→β, ¬β } =0 ¬α - Hipotetikus szillogizmus: 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 α 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) 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). Matematikai logika
KNF Def.: Konjunktív NormálForma, KNF: Ki klózok konjunkciója, klóz: literálok diszjunkciója, literál: atom, vagy annak tagadása. KNF: diszjunkciók konjunkciója K1∧K2∧…∧Kn Ki= A1∨A2∨…∨An Literál Pozitív, ha A Negatív, ha ¬A Matematikai logika
Tétel: Minden formulához létezik vele ekvivalens konjunktív normálforma. PÉLDA : α→β≡¬α∨β De Morgan ¬(α∧β)≡¬ α∨¬β ¬(α∨β)≡¬ α∧¬β α∨(β∧γ)≡( α∨β)∧( α∨γ) α∧(β∨γ)≡( α∧β)∨( α∧γ) 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 ∧. 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á?) 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 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. 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 Matematikai logika
Példa: Adott {P1, P1→Q1, Q1→ Q2}=AB (adatbázis) Kérdés: Q2 következmény-e? Megoldás: {P1, P1→Q1, Q1→ Q2 } a feltételek halmaza, mindegyiket KNF-re kell hozni: AB={ P1, ¬P1∨Q1, ¬Q1∨ Q2} W= Q2 , tagadása: ¬ Q2 (tagadás ⇒ indirekt feltevés) Fentiek értelmében azt kell belátni, hogy az AB∪{¬ Q2} formulahalmaz elemeinek nincsen modellje, nincsen olyan interpretáció, amelyben igaz lehetne. Matematikai logika
Lássuk: Ha például P1 igaz ⇒ ¬P1 nem lehet igaz a 2 Lássuk: Ha például P1 igaz ⇒ ¬P1 nem lehet igaz a 2. klózban, ezért mivel minden klóznak igaznak kell lennie, a Q1 literálnak igaznak kell lennie ⇒¬Q1 ekkor hamis a 3. klózban, ami szerint tehát Q2 igaz, de ekkor már ellentmondásra jutottunk, hiszen Q2 és ¬ Q2 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ó. Matematikai logika
Gondoljuk át: Igaz-e, hogy {P1, P1→Q1, Q1→ Q2} |=0 Q2 igaz (minden interpretációjában), tehát a vele ekvivalens: (P1 P1→Q1 Q1→ Q2) Q2 is igaz, és a vele ekvivalens: (P1 P1→Q1 Q1→ Q2) Q2 is igaz. A formula negáltja: ((P1 P1→Q1 Q1→ Q2)) Q2 azaz a (P1 P1→Q1 Q1→ Q2) Q2 formula viszont hamis. Matematikai logika
Alakítsuk tovább: (P1 P1→Q1 Q1→ Q2) Q2 A formula KNF-ben van. Hamisnak kell lennie, tehát keressünk ellentmondást! Matematikai logika
Rezolúciós levezetés: P1 P1Q1 Q2 Q1 Q1Q2 Q2 Matematikai logika
Fontos szabályok Az üres klóz az ellenetett literálpárból jön létre. 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. 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! Matematikai logika
Logika a számítástechnikában FÁK 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. A gyökere C. A csúcsának pontosan egy gyermeke van, az A formula Az A*B csúcsának pontosan két gyermeke van, rendre az A és B formulák (* logikai művelet) Levelei elemi (vagy prím) formulák Matematikai logika
Példa: rajzoljuk meg a (XY)Z formula ítéletlogikai fáját! Matematikai logika
Az X,Y,Z ítéletváltozókat tartalmazó formula szemantikus fája Gyökér X1 Y1 Z1 Z2 Y2 Z3 Z4 X2 Y3 Z5 Z6 Y4 Z7 Z8 X X Y Y Y Y Z Matematikai logika Z
Igazságértékelési fák 62-63.old Legyen A tetszőleges formula (ítéletlogikai). Az A interpretációira vonatkozó Ai és Ah feltételeket a SZERKEZETI REKURZIÓ alapján így határozzuk meg: a) ha A prímformula, akkor Ai feltételt azok az I interpretációk teljesítik, amelyekben I(A)=i, a Ah feltételt pedig azok, amelyekre I(A)=h. Matematikai logika
b) a (A)i feltételt azok az I interpretációk teljesítik, amelyekben a Ah feltétel teljesül. Matematikai logika
c) a (AB)i feltételt azok az I interpretációk teljesítik, amelyekben a Ai és a Bi feltételek együttesen teljesülnek. (AB)h Ah Bh (AB)i Ai Bi Matematikai logika
c) a (AVB)i feltételt azok az I interpretációk teljesítik, amelyekben a Ai vagy a Bi feltételek teljesülnek. (AVB)i Ai Bi (AVB)h Ah Bh Matematikai logika
c) a (AB)i feltételt azok az I interpretációk teljesítik, amelyekben a Ah vagy a Bi feltételek teljesülnek. (AB)i Ah Bi (AB)h Ai Bh Matematikai logika
Példa: Adjuk meg az (YZ) (ZX) formula igazságtábláját, majd a kiértékelési fáját, és vegyük észre az összefüggéseket! „lusta tábla” X Y Z X ZX (YZ) (YZ) (ZX) I H X Y Z - I H Matematikai logika modellek: {(I,I,H),(H,I,I),(H,I,H),(H,H,I)}
Az (YZ) (ZX) formula igazságértékelés-fája 64. old Leolvastunk egy „hamist” Z egyszerre lenne igaz és hamis ((YZ) (ZX))i ((YZ) i (ZX)i Y i ZH (X)i (X)H Z i X Y Z - I H H I - Láthatóak a lusta tábla sorai. Matematikai logika x
Mit láthatunk még a táblából? Példa: Az (YZ) (ZX) formula igazságtáblája: „lusta tábla” X Y Z X ZX (YZ) (YZ) (ZX) I H X Y Z - I H Matematikai logika Modellek: {(I,I,H),(H,I,I),(H,I,H),(H,H,I)}
A diszjunktív normálforma (DNF) előállítása az igazságtáblából (YZ) (ZX) H * XYZ XYZ XYZ XYZ Matematikai logika DNF (XYZ) (XYZ) (XYZ) (XYZ)
A konjunktív normálforma (KNF) előállítása az igazságtáblából (YZ) (ZX) H * X Y Z X Y Z X Y Z X Y Z Matematikai logika KNF (X Y Z) (X Y Z) (X Y Z) (X Y Z)
Rezolúció 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. α∨β γ∨¬β (α∨β) (γ∨¬β) α∨γ ((α∨β) (γ∨¬β))( α∨γ) I H Matematikai logika
A konjunktív normálformát egyszerűsíthetjük a rezolúciós elv alapján KNF-re hozás miatt: ((YZ) (ZX)) ((X Y Z) (X Y Z) (X Y Z) (X Y Z)) a rezolúciós elv alapján LEVEZETHETŐ: (X Y Z) (X Y Z) (X Y Z) (X Y Z) (X Z) (Y Z) (X Y) Matematikai logika
Mutassuk meg igazságtáblával! X Y Z X ZX (YZ) (YZ) (ZX) X Y (YZ) (ZX) I H h i Matematikai logika
Hol látszik a ((YZ) (ZX)) (X Y) a fában? (Ya Z) (ZX) ((YZ) (ZX))i ((YZ) i (ZX)i Y i ZH (X)i (X)H Z i X Y Z - I H H I - Matematikai logika x
Újabb példa ((YZ) (ZX)) (X Y) I H Matematikai logika
Bizonyítsuk be, hogy {(YZ), (ZX)} = (X Y), használjunk lineáris rezolúciót! {(YZ), (ZX)} = (X Y) igaz, akkor (YZ)(ZX) (X Y) igaz (YZ)(ZX) (X Y) igaz ((YZ)(ZX)) (X Y) igaz (((YZ)(ZX)) (X Y)) hamis (YZ)(ZX) (X Y) hamis (YZ)(ZX) X Y) hamis A Klózok: YZ ZX 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. YZ ZX YX X Matematikai logika Y Y Üres klóz
Az {(YZ),(ZX)} formula-halmaznak következménye-e (Y Z)? Nem vezethető le az üres klóz. {(YZ),(ZX)} =0 (Y V Z) IGAZ IGAZ Matematikai logika HAMIS HAMIS
Nem vezethető le az üres klóz hamis hamis hamis hamis Matematikai logika Nem vezethető le az üres klóz
Az {(YZ),(ZX)} formula-halmaznak következménye-e (YX) IGAZ Matematikai logika IGAZ HAMIS
hamis hamis hamis hamis 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.
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 A1A2 ... An B formula kielégíthetelen. 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 Matematikai logika
Fontos megjegyzések: Rezolúciós elv, Fontos példák: klózpár rezolvense XY,YZ XZ X Y,YZ 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 Matematikai logika
Példa: vezessük le különböző rezolúciós stratégiákkal az üres klózt az {XZ,XZ,X Z, X Z} formulahalmazból! Matematikai logika