Kocsisn Dr Szilgyi Gyngyi Elrehetsg aszt inf elte

  • Slides: 57
Download presentation
Kocsisné Dr. Szilágyi Gyöngyi

Kocsisné Dr. Szilágyi Gyöngyi

Elérehetőség: • aszt. inf. elte. hu/~szilagyi/ • szilagyi@aszt. inf. elte. hu Fogadó óra: hétfő

Elérehetőség: • aszt. inf. elte. hu/~szilagyi/ • szilagyi@aszt. inf. elte. hu Fogadó óra: hétfő 10 -12 2. 620 szoba Jegyzet: Pásztorné Varga Katalin, Várterész Magda: A MATEMATIKAI LOGIKA ALKALMAZÁSSZEMLÉLETŰ TÁRGYALÁSA

Bevezetés A 0. rendű logika (Itéletkalkulus) • Szintaxis • Szemantika • 0. rendű logikai

Bevezetés A 0. rendű logika (Itéletkalkulus) • Szintaxis • Szemantika • 0. rendű logikai törvények • Szemantikus következmény • Normálformák • Szintaktikus megközelítés (Bizonyításelmélet, Rezolúció) Az 1. rendű logika (Predikátumkalkulus) • Szintaxis • Szemantika • 1. rendű logikai törvények • Szemantikus következmény • Szintaktikus megközelítés (Bizonyításelmélet, Rezolúció)

Mit jelent a következő formula? ( Z X) Y Igaz vagy hamis?

Mit jelent a következő formula? ( Z X) Y Igaz vagy hamis?

NYELV = ABC + SZINTAXIS + SZEMANTIKA Két módon: 1) Szemantika megadásának lépései: a)

NYELV = ABC + SZINTAXIS + SZEMANTIKA Két módon: 1) Szemantika megadásának lépései: a) Interpretáció (az ABC elemeihez rendel i / h értéket) b) Boole értékelés (szerkezeti rekurzió elve alapján a formulákhoz rendel i / h értéket ) • Igazságtábla (kiterjesztett, egyszerű; mohó / lusta kiértékelés) • Szemantikus fa 2) Szemantika megadása Igazságértékelés függvény és fa megadása a szerkezeti rekurzió elve alapján

 Egyszerű állítás interpretáció Összetett állítás Boole-értékelés { i , h } Formula jelentése

Egyszerű állítás interpretáció Összetett állítás Boole-értékelés { i , h } Formula jelentése mindig igazságérték! Definíció: Interpretáció: I: Vv {i, h} Definíció: Boole-értékelés BI(C) BI a formulákon értelmezett függvény. BI(C) a C formulához hozzárendeli annak helyettesítési értékét az adott I interpretációban. BI(C)-definíciója szerkezeti rekurzióval: 1. A C formula ítéletváltozó 2. A C formula negációs A C formula (A B) alakú BI(C)= I(C) BI( A)= BI(A) BI(A B)= BI(A) BI(B)

EGY FORMULA • Van-e olyan interpretáció, ahol igaz • Minden interpretációban igaz • Egyetlen

EGY FORMULA • Van-e olyan interpretáció, ahol igaz • Minden interpretációban igaz • Egyetlen interpretációban sem igaz KÉT FORMULA • Az interpretációkban egyformán viselkednek-e

Definíció: I interpretáció kielégít egy B formulát(könyv 69. oldal) Azt mondjuk, hogy az ítéletlogikában

Definíció: I interpretáció kielégít egy B formulát(könyv 69. oldal) Azt mondjuk, hogy az ítéletlogikában egy I interpretáció kielégít egy B formulát (I =0 B, I modellje B-nek), ha a formula helyettesítési értéke igaz az I interpretációban. Definíció: formula kielégíthetősége Azt mondjuk, hogy egy B formula kielégíthető, ha legalább egy interpretáció kielégíti ( létezik modellje).

Definíció: formula kielégíthetetlensége Azt mondjuk, hogy egy B formula kielégíthetetlen, ha egyetlen interpretáció sem

Definíció: formula kielégíthetetlensége Azt mondjuk, hogy egy B formula kielégíthetetlen, ha egyetlen interpretáció sem elégíti ki (nincs modellje). Definíció: tautológia Azt mondjuk, hogy egy B formula tautológia ( =0 B), ha minden interpretáció kielégíti. A tautológiát ítéletlogikai törvénynek is nevezik.

X X

X X

X X Igazságtáblája X X i i

X X Igazságtáblája X X i i

Az ítéletlogikai formulák szemantikai tulajdonságuk alapján az alábbi ábra szerint osztályozhatók:

Az ítéletlogikai formulák szemantikai tulajdonságuk alapján az alábbi ábra szerint osztályozhatók:

TÉTEL Ez a tétel alapozza meg, hogy a következőkben felsorolt formulák mind tautológiák.

TÉTEL Ez a tétel alapozza meg, hogy a következőkben felsorolt formulák mind tautológiák.

TÉTEL bővítés előtaggal implikációlánc-törvény

TÉTEL bővítés előtaggal implikációlánc-törvény

reductio ad absurdum a kétszeres tagadás törvénye a kizárt harmadik törvénye ellentmondás törvénye az

reductio ad absurdum a kétszeres tagadás törvénye a kizárt harmadik törvénye ellentmondás törvénye az azonosság törvénye tranzitivitás ellentmondásból bármi következik Peirce-törvény

Kielégíthetőség eldöntése: • igazságtáblával • Ha van olyan sor A igazságtáblájában, ahol a Boole-értéke

Kielégíthetőség eldöntése: • igazságtáblával • Ha van olyan sor A igazságtáblájában, ahol a Boole-értéke „i”. igazságértékelés fával Ha Ai nem üres, azaz (A)i fában nem minden ág ellentmondásos. Kielégíthetetlenség eldöntése: • igazságtáblával • Ha A igazságtáblájában minden sor Boole-értéke „h”. igazságértékelés fával Ha (A)i fában minden ág ellentmondásos, tehát Ai üres. Tautológia tulajdonság eldöntése: • igazságtáblával • Ha A igazságtáblájában minden sor Boole-értéke „i”. igazságértékelés fával Ha (A)h fa minden ága ellentmondásos, tehát Ah üres.

EGY FORMULA • Van-e olyan interpretáció, ahol igaz • Minden interpretációban igaz • Egyetlen

EGY FORMULA • Van-e olyan interpretáció, ahol igaz • Minden interpretációban igaz • Egyetlen interpretációban sem igaz KÉT FORMULA • Az interpretációkban egyformán viselkednek-e

DEFINÍCIÓ

DEFINÍCIÓ

 • Két formula tautologikusan ekvivalens, ha közös igazságtáblájukban a formulákhoz tartozó oszlopokban minden

• Két formula tautologikusan ekvivalens, ha közös igazságtáblájukban a formulákhoz tartozó oszlopokban minden sorban ugyanaz az igazságérték található. • Két formula akkor és csak akkor tautologikusan ekvivalens, ha az általuk leírt logikai művelet ugyanaz.

LEMMA:

LEMMA:

TÉTEL

TÉTEL

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) .

TÉTEL (Könyv 74. oldal) Egyszerűsítési szabályok: 1. (X d) ( X d) ~0 d

TÉTEL (Könyv 74. oldal) Egyszerűsítési szabályok: 1. (X d) ( X d) ~0 d . 2. (X k) ( X k) ~0 k, ahol d elemi diszjunkció és k elemi konjunkció.

Legyen F = {A 1, A 2, …, A} formulahalmaz. Definíció: Azt mondjuk, hogy

Legyen F = {A 1, A 2, …, A} formulahalmaz. Definíció: Azt mondjuk, hogy az ítéletlogikában egy I interpretáció kielégít egy F formulahalmazt (I =0 F), ha a formulahalmaz minden formulájának helyettesítési értéke i az I interpretációban. Definíció: Azt mondjuk, hogy egy F formulahalmaz kielégíthető, ha legalább egy interpretáció kielégíti. Definíció: Azt mondjuk, hogy egy F formulahalmaz kielégíthetetlen, ha bármely interpretációban legalább egy formulája h (nincs olyan interpretáció, ami kielégítené).

TÉTEL Legyen F = {A 1, A 2, …, An} formulahalmaz. I =0 F

TÉTEL Legyen F = {A 1, A 2, …, An} formulahalmaz. I =0 F pontosan akkor, ha I =0 A 1 A 2 … An.

Helyesek –e a fenti következtetések? Miért?

Helyesek –e a fenti következtetések? Miért?

Definíció: Tautológikus következmény A formula hamaznak a B formula tautológikus következménye ( |=o B),

Definíció: Tautológikus következmény A formula hamaznak a B formula tautológikus következménye ( |=o B), ha I: I |=o , akkor I |=o B ( vagyis minden modellje B-nek is modellje ). Speciális esetek: • B tautológia: -nak következménye B • kielégíthetetlen: nem beszélünk következmény fogalomról.

Tétel: : I: I |=o { A 1, . . . , An }

Tétel: : I: I |=o { A 1, . . . , An } I |=o A 1. . . An Tétel: : { A 1, . . . , An } |=o B A 1. . . An B kielégíthetetlen Tétel: (dedukciós)(könyv 80. old 4. 4. 7. tétel) Az {F 1, F 2, . . . , Fn} =0 G akkor és csak akkor, ha {F 1, F 2, . . . , Fn-1} =0 (Fn G). Tétel: (eldöntésprobléma)(könyv 80. old 4. 4. 8. tétel) Az {F 1, F 2, . . . , Fn} =0 G akkor és csak akkor, ha =0 F 1 (F 2 (. . . ( Fn-1 (Fn G)). . . ) tautológia.

Helyes Következtetési formák Definíció: Helyes következtetési forma Az ( { A 1, . .

Helyes Következtetési formák Definíció: Helyes következtetési forma Az ( { A 1, . . . , An }, B ) helyes következtetési forma, ha • { A 1, . . . , An } kielégíthető és • { A 1, . . . , An } tautológikus következménye B.

Helyes Következtetési formák

Helyes Következtetési formák

Helyes Következtetési formák Példa: Bizonyítsuk be, hogy az ( { A B, A },

Helyes Következtetési formák Példa: Bizonyítsuk be, hogy az ( { A B, A }, B ) helyes következtetési forma! igazságtábla: van = (A B) A-t kielégítő sor ( Tétel 1). A B A - B következmény i i i * I i h h h i i h h I h h i h h h lusta kiértékelés ”A” feltételformula I(A)=i Mivel A B feltételformula és I(A)=i I(B)=i, tehát van -t kielégítő interpretáció. És B következmény, hiszen minden -t kielégítő I-re: I(B)=i.

Helyes Következtetési formák Példa folytatás: Bizonyítsuk be, hogy az ( { A B, A

Helyes Következtetési formák Példa folytatás: Bizonyítsuk be, hogy az ( { A B, A }, B ) helyes következtetési forma! igazságértékelés: van -t kielégítő interpretáció és B következmény, tehát helyes a következtetési forma. ((A B) A)i (A B)i (A)i (A)h x (B)i

Visszafele következtetés

Visszafele következtetés

Igazság értékeléssel Visszafele következtetés

Igazság értékeléssel Visszafele következtetés

Előre következtetés

Előre következtetés

Előre következtetés

Előre következtetés

MÓDSZER( def. ) • igazságtábla ( Tk. 77. old. ) • lusta kiértékelés (

MÓDSZER( def. ) • igazságtábla ( Tk. 77. old. ) • lusta kiértékelés ( Tk. 77. old. ) • igazságértékelés ( Tk. 78. old. ) VISSZAKÖVETKEZTETÉS def. szerint • igazságtábla • lusta kiértékelés • igazságértékelés tétel szerint ( Lemma 2 ) • igazságtábla ( Tk. 83. old. ) • lusta kiértékelés ( Tk. 83. old. ) • igazságértékelés ( Tk. 84. old. ) ELŐREKÖVETKEZTETÉS( tétel ) • igazságtábla ( Tk. 85. old. ) • lusta kiértékelés ( Tk. 85. old. )

Bevezetés: A DNF-ek egyszerűsítési algoritmusainak kutatása az 50 -70 es évekre tehető. Ez volt

Bevezetés: A DNF-ek egyszerűsítési algoritmusainak kutatása az 50 -70 es évekre tehető. Ez volt az az időszak, amikor az elektronikus berendezések tervezése korábban funkcionális (˄, ˅, ¬, ¬˄, ¬˅ funkciókat realizáló) elemek alapján, később a programozható logikai mátrixok (PLA), valamint memóriaelemek felhasználásával történt. • Egy n-változós A formula az igazságtáblájával megadott b: {i, h}n {i, h} leképezést (logikai műveletet) ír le. • A lehetséges interpretációk száma: 2 n 2 n • Az n változós logikai műveletek száma: 2 • Melyik logikai műveletek kellenek ahhoz, hogy egy adott nyelven mindegyik logikai művelethez tartozzon legalább egy logikai formula?

Definíció: A logikai összekötőjelek halmazát funkcionálisan teljes művelethalmaznak nevezzük, ha e logikai összekötő jelhalmaz

Definíció: A logikai összekötőjelek halmazát funkcionálisan teljes művelethalmaznak nevezzük, ha e logikai összekötő jelhalmaz elemeinek és ítéletváltozóinak felhasználásával tetszőleges {i, h}n→{i, h} leképezéshez lehet konstruálni a leképezést leíró jólformált formulát. Tetszőleges {i, h}n→{i, h} leképezés leírható csak (¬, ˄, ˅) műveleti jeleket tartalmazó jólformált formulával, vagyis hogy a (¬, ˄, ˅) funkcionálisan teljes művelethalmaz.

Definíciók: 1. Literálnak nevezünk egy x prímformulát/ítéletváltozót vagy annak a negáltját, ¬x-et. A literál

Definíciók: 1. Literálnak nevezünk egy x prímformulát/ítéletváltozót vagy annak a negáltját, ¬x-et. A literál alapja a prímformula jele. 2. Azonos alapú literálok azok a literálok, amelyek ugyanazt a prímformulát tartalmazzák. X és ¬x 3. Különböző literálok a különböző alapú literálok. X és Y 4. Elemi konjukciónak nevezzük különböző literálok konjukcióját. X ˄ ¬x ˄ Y ˄ Z 5. Elemi diszjunkciónak nevezzük különböző literálok diszjunkcióját. Az elemi diszjunkciót klóznak is nevezzük. X ˅ ¬x ˅ Y ˅ Z 6. Teljes elemi konjukciónak nevezzük az olyan elemi konjukciót, amelyben a leképezésben szereplő minden ítéletváltozóból alkotott literálpár valamelyike szerepel. 7. Teljes elemi diszjunkciónak nevezzük az olyan elemi diszjunkciót, amelyben a leképezésben szereplő minden ítéletváltozóból alkotott literálpár valamelyike szerepel.

Definíciók: 8. Diszjunktív normálforma (DNF) elemi konjunkciók diszjunkciója. (X ˄ ¬x) ˅ (Y ˄

Definíciók: 8. Diszjunktív normálforma (DNF) elemi konjunkciók diszjunkciója. (X ˄ ¬x) ˅ (Y ˄ Z) 9. Konjuktív normálforma (KNF) elemi diszjunkciók (vagy klózok) konjunkciója. (X ˅ ¬x) ˄ (Y ˅ Z) 10. Kitűntetett diszjunktív normálforma (KDNF) teljes elemi konjunkciók diszjunkciója. 11. Kitűntetett konjuktív normálforma (KKNF) teljes elemi diszjunkciók konjunkciója. A továbbiakban megadunk két algoritmust, amellyel tetszőleges {i, h}n→{i, h} leképezéshez az azt leíró speciális alakú formula állítható elő. • Ezek a kitűntetett diszjunktív normálforma és a kitűntetett konjuktív normálforma. • Tekintsük az α={i, h}n→{i, h} leképezés igazságtábláját. Legyenek x 1, x 2, …, xn az igazságtáblán szereplő ítéletváltozók.

Kitüntetett diszjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait ahol α=i. 1. Minden

Kitüntetett diszjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait ahol α=i. 1. Minden ilyen sorhoz rendeljünk hozzá egy x’ 1˄x’ 2˄…˄x’n=ks teljes elemi konjunkciót úgy, hogy az x’i literál xi vagy ¬xi legyen aszerint, hogy ebben a sorban x’ 1 oszlopában i vagy h áll. 2. Az így kapott teljes elemi konjunkciók diszjunkciója ki 1˅ki 2˅…˅kiα az α leképezést leró kitűntetett diszjunktív normálforma. Vegyük észre, hogy ks csak az igazságtábla hozzátartozó sorának megfelelő igazságértékelésre igaz, és így a ki 1˅ki 2˅…˅kiα formula pontosan az i 1, i 2, …, iα igazságkiértékelések mellett igaz.

Kitűntetett diszjunktív normálforma előállítása az igazságtábla az elemi konjunkciók x y z α h

Kitűntetett diszjunktív normálforma előállítása az igazságtábla az elemi konjunkciók x y z α h h h i **** (¬x˄¬y˄¬z) h h i h i **** (¬x˄y˄¬z) h i i i **** (¬x˄y˄z) i h h i **** (x˄¬y˄¬z) i h i i h i **** (x˄y˄¬z) i i i h A fenti α leképezést leíró kitűntetett diszjunktív normálforma (¬x˄¬y˄¬z)˅ (¬x˄y˄z)˅ (x˄¬y˄¬z)˅ (x˄y˄¬z) (=α)

Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. 1.

Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. 1. Minden ilyen sorhoz rendeljünk hozzá egy x 1’˅x 2’’˅…˅xn’’=dt teljes elemi diszjunkciót úgy, hogy az x 1’’ literál xi vagy ¬xi legyen aszerint, hogy ebben a sorban xi oszlopában h vagy i áll. 2. Az így kapott teljes elemi diszjunkciók konjunkciója di 1˄di 2˄…˄diα az alfa leképezést leíró kitűntetett konjunktív normálforma. Vegyük észre, hogy dt csak az igazságtábla hozzátartozó sorának megfelelő igazságértékelésre hamis, és így a di 1˄di 2˄…˄ diα formula pontosan az i 1, i 2, …, iα igazságértékelések mellett hamis.

Kitűntetett konjunktív normálforma előállítása. az igazságtáblája az elemi diszjunkciók x y z α h

Kitűntetett konjunktív normálforma előállítása. az igazságtáblája az elemi diszjunkciók x y z α h h h i h **** (x˅y˅¬z) h i i i i h h i i h **** (¬x˅y˅¬z) i i h i i i i h **** (¬x˅¬y˅¬z) A fenti α leképezést leíró kitűntetett konjunktív normálforma (x˅y˅¬z)˄ (¬x˅¬y˅¬z) (=α)

A normálforma egyszerűsítése • Legyen k egy elemi konjunkció és x egy ítéletváltozó, ekkor

A normálforma egyszerűsítése • Legyen k egy elemi konjunkció és x egy ítéletváltozó, ekkor a k 1=k˄x, k 2=k˄¬x konjunkciókra a (k˄x)˅(k˄¬x)=k˄(x˅¬x)=k˄(i)=k egyszerűsítési szabály alkalmazható. • Ezt az egyszerűsítési szabályt alkalmazzuk a kitűntetett diszjunktív normálformák egyszerűsítésére. • Az egyszerűsítési szabály alkalmazásával a k˄x, k˄¬x kunjunkciópárt a k konjunkcióval helyettesítjük, és így a formulában szereplő konjunkciók száma is csökken. • Az egyszerűsítések során a KDNF-ből egy DNF áll elő. • A duális egyszerűsítési szabály hasonló módon alkalmas a kitűntetett konjunktív normálformák egyszerűsítésére, ahol k elemi diszjunkció, x ítéletváltozó és az egyszerűsítési szabály (k˅x)˄(k˅¬x)=k˅(x˄¬x)=k˅(h)=k.

Az alábbiakban megadunk egy algoritmust KDNF-ek egyszerűsítésére. 1. Felírjuk a KDNF-ben szereplő összes elemi

Az alábbiakban megadunk egy algoritmust KDNF-ek egyszerűsítésére. 1. Felírjuk a KDNF-ben szereplő összes elemi konjunkciót. 2. Megvizsgáljuk a konjunkciólistában szereplő összes lehetséges elemi konjunkciópárt, hogy alkalmazható-e rájuk a (k˄x)˅(k˄¬x)=k egyszerűsítés. Ha igen, akkor a két kiválasztott konjunkciót #-al megjelöljük, és az eredmény konjunkciót beírjuk egy új konjunkciólistába. Azok az elemi konjunkciók, amelyek az eljárás végén nem lesznek megjelölve, nem voltak egyszerűsíthetők, tehát belekerülnek az egyszerűsített diszjunktív normálformába. 3. Ha az új konjunkciólista nem üres, akkor megvizsgáljuk, hogy van-e olyan konjunkciópár, amelyekre a k˅k=k összefüggés alkalmazható. A lehetséges összevonások után kapott új konjunkciólista átveszi a konjunkciólista szerepét és a 2. lépés következik. 4. Az eljárás befejeződik, és az algoritmus során kapott, de meg nem jelölt elemi konjunkciókat a ˅ művelettel összekapcsoló formula az eredeti KDNF-el egyenértékű egyszerűsített DNF.

Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. 1.

Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. 1. Minden ilyen sorhoz rendeljünk hozzá egy x 1’˅x 2’’˅…˅xn’’=dt teljes elemi diszjunkciót úgy, hogy az x 1’’ literál xi vagy ¬xi legyen aszerint, hogy ebben a sorban xi oszlopában h vagy i áll. 2. Az így kapott teljes elemi diszjunkciók konjunkciója di 1˄di 2˄…˄diα az alfa leképezést leíró kitűntetett konjunktív normálforma. Vegyük észre, hogy dt csak az igazságtábla hozzátartozó sorának megfelelő igazságértékelésre hamis, és így a di 1˄di 2˄…˄ diα formula pontosan az i 1, i 2, …, iα igazságértékelések mellett hamis.

Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. 1.

Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. 1. Minden ilyen sorhoz rendeljünk hozzá egy x 1’˅x 2’’˅…˅xn’’=dt teljes elemi diszjunkciót úgy, hogy az x 1’’ literál xi vagy ¬xi legyen aszerint, hogy ebben a sorban xi oszlopában h vagy i áll. 2. Az így kapott teljes elemi diszjunkciók konjunkciója di 1˄di 2˄…˄diα az alfa leképezést leíró kitűntetett konjunktív normálforma. Vegyük észre, hogy dt csak az igazságtábla hozzátartozó sorának megfelelő igazságértékelésre hamis, és így a di 1˄di 2˄…˄ diα formula pontosan az i 1, i 2, …, iα igazságértékelések mellett hamis.