Kocsisné Dr. Szilágyi Gyöngyi LOGIKA 4. Előadás Kocsisné Dr. Szilágyi Gyöngyi
A MATEMATIKAI LOGIKA ALKALMAZÁSSZEMLÉLETŰ TÁRGYALÁSA TECHNIKAI ADATOK 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
TEMATIKA Bevezetés A 0. rendű logika (Itéletkalkulus) Szintaxis Szemantika 0. rendű logikai törvények Szemantikus következmény Normálformák Automatikus tételbizonyítás (szemantikus, szintaktikus) Az 1. rendű logika (Predikátumkalkulus) 1. rendű logikai törvények Szintaktikus megközelítés ( Rezolúció)
FEJTÖRŐ 1. Ha fúj a szél, akkor Kati a munkahelyére megy. 2. Ha Kati a munkahelyére megy, akkor dolgozik. 3. Katinak nincs lehetősége otthon dolgozni. Formalizáljon. Következmény-e: 4. Ha fúj a szél, akkor Kati nem marad otthon. F: Fúj a szél M: Kati a munkahelyére megy D: Kati dolgozik O: Kati otthon van 1. F M 2. M D 3. (OD) 4. F O
0. rendű logikai törvények 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
KAPCSOLATUK Az ítéletlogikai formulák szemantikai tulajdonságuk alapján az alábbi ábra szerint osztályozhatók:
Szemantikus következményfogalom 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 ).
PONTOSAN AKKOR TÖRVÉNYEK Tétel:: I: I |=o { A1, ... , An } I |=o A1...An Tétel:: { A1, ... , An } |=o B A1...AnB kielégíthetetlen Tétel:(dedukciós) Az {F1, F2, ..., Fn}=0G akkor és csak akkor, ha {F1, F2, ..., Fn-1}=0 (Fn G). Tétel:(eldöntésprobléma) Az {F1, F2, ..., Fn}=0G akkor és csak akkor, ha =0F1(F2(...( Fn-1(Fn G))...) tautológia. Tétel: Az {F1, F2, ..., Fn}=0G akkor és csak akkor, ha = (F1...Fn ) G tautológia
AUTOMATIKUS TÉTELBIZONYITÁS Egy feladat kiinduló állításaiból (axiómák) egy újabb állításra következtetünk (konklúzió) Több megfogalmazása lehetséges A szemantikus következményfogalom írja le {F1, F2, ..., Fn}=0G, ahol - F1, F2, ..., Fn: a tétel axiómái / feltételei / premisszái - G: következmény / konklúzió a pontosan akkor törvények alapján Például: Definíció: Tétel A bizonyítandó (F1...Fn ) G formulát tételnek nevezzük. Definíció: Tételbizonyítás Annak belátása, hogy (F1...Fn ) G tautológia. Definíció: Automatikus Tételbizonyítás Olyan eljárás, amellyel mechanikusan lehet matematikai tételeket belátni. Speciális esetben döntési probléma formában történik a megfogalmazás (tautológia-e: igen / nem)
ELDÖNTÉSPROBLÉMA Eldöntésprobléma: Egy olyan feladat, melynek megoldása egy eldöntendő kérdésre adott igen, nem válasz. Döntési eljárás / Kalkulus: Az eldöntésprobléma megoldására kidolgozott módszer. Kérdés: Létezik-e olyan univerzális döntési eljárás, mely egy általában végtelen osztály minden elemét eldönti, azaz egy igen / nem választ képes adni a vele kapcsolatban felmerült döntési problémára
AUTOMATIKUS TÉTELBIZONYITÁS 1. Szintaktikus megközelítés Formai jellegű, a formulák jelentése nem játszik szerepet. Formális nyelv: az állításaink leírására Axiómák: olyan formulák, melyeket igaznak fogadunk el. Következtetési / Levezetési szabályok: olyan leképezések, melyek egy vagy több formulából újabb formulát állítanak elő A levezetési szabályokkal nyerhető formulákat nevezzük az axiomatikus elmélet tételeinek. Cél: adott formuláról megállapítani, hogy tétel-e. Kérdés: a matematikai diszciplináknak melyek az axiómái Például: Hilbert féle formális bizonyítás, Gentzen stílusú kalkulus, REZOLÚCIÓ 2. Szemantikus megközelítés
AUTOMATIKUS TÉTELBIZONYITÁS 2. Szemantikus megközelítés Figyelembe vesszük a formula jelentését is. Formális nyelv: az állításaink leírására Szabályok: Ezek adnak jelentést a formulának (interpretáció, kiértékelés) Az a feladat, hogy a formula azonosan igaz voltát / kielégíthetetlenségét eldöntsük. Például: Igazságtábla, Lusta kiértékelés, Igazságértékelés, Wang algoritmusa, Quine-McCluskey algoritmusa (KDNF és KKNF egyszerűsítése), Szemantikus fa és klózillesztés
KIELÉGITHETŐSÉG ELDÖNTÉSE 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.
KÖVETKEZMÉNY ELDÖNTÉSE 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. )
A szintaktikus és a szemantikus módszer ugyanoda vezet-e ? FEJTÖRŐ A szintaktikus és a szemantikus módszer ugyanoda vezet-e ?
A LOGIKA TÖRTÉNETE Egy kalkulussal szemben azok a legfontosabb követelések merültek fel, hogy legyen Ellentmondásmentes (konzisztens): levezethető-e egy állítás és annak tagadása is teljes: minden állítást vagy igazolni, vagy cáfolni lehessen helyes: minden ami levezethető, az valóban tétel (következmény) eldönthetőség: létezik olyan algoritmus, amely az elmélet bármely állításáról eldönti, hogy levezethető-e vagy sem Eredmények (17. század és utána): Leibniz: automatikus tételbizonyítás megalapozása Tarski: Az elemi geometria eldönthető Zermelo-Fraenkel féle halmazelméletben a Kiválasztási axióma sem nem bizonyítható, sem nem cáfolható Kurt Gödel nemteljességi tételei: minden elég erős formális elméletben van eldönthetetlen állítás (a közönséges aritmetika nem formalizálható teljes rendszerben formális elmélet nem tudja igazolni a saját konzisztenciáját. Church és Turing egymástól függetlenül: Negatív válasz az eldönthetőségi problémára G. Boole: algebrai módszerekkel vizsgálta a logikát De Morgan: a matematika különböző területeinek logikai megalapozása Ezek a tételek azt is jelentik, hogy a logika kevés ahhoz, hogy minden tudáshoz keretet adjon.
Gödel Teljességi tétele Gödel teljességi tétele a matematikai logika fontos tétele, azt mondja ki, hogy ha egy elsőrendű elméletben egy tetszőleges mondat minden modellben igaz, akkor bizonyítható is. Az igazság tétel A tétel szerint, ha egy L elsőrendű nyelvben megadott T elméletnek (zárt formulák halmazának) van modellje, akkor konzisztens (ellentmondásmentes). Ez nyilvánvaló, hiszen a modellben minden T-ből levezethető állításnak igaznak kell lennie, márpedig a modellen nem teljesülhet egyszerre egy zárt formula és tagadása. A teljességi tétel A teljességi tétel az igazság tétel megfordítása: Ha egy L elsőrendű nyelvben megadott T elmélet (zárt formulák halmaza) konzisztens, akkor van modellje. A teljességi tétel másik alakja Ha egy L elsőrendű nyelvben T elmélet és F zárt formula, amire teljesül T = F, azaz F igaz T minden modelljében, akkor F levezethető T-ből. Ez az állítás ekvivalens a teljességi tétel fenti alakjával
Gödel 1. nemteljességi tétele Tétel – Gödel első nemteljességi tétele Minden ellentmondásmentes, a természetes számok elméletét tartalmazó, formális-axiomatikus elméletben megfogalmazható olyan mondat, mely se nem bizonyítható, se nem cáfolható. Terminológiai megjegyzések 1 – Formális-axiomatikus elmélet alatt bármilyen formalizált (például elsőrendű nyelvre épített) axiomatikus-deduktív elméletet érthetünk,. 2 – Ellentmondásos egy axiomatikus elmélet, ha van benne olyan mondat, mely bizonyítható is és cáfolható is. Amennyiben kizárt, hogy akármelyik mondat bizonyítható és cáfolható is legyen, akkor azt mondjuk, hogy az elmélet ellentmondásmentes. 3 – Azon, hogy tartalmazza a természetes számok elméletét, azt értjük, hogy szerepeljenek a formális nyelvben olyan kifejezések, melyek megfeleltethetők a természetes számoknak, az összeadásnak, a szorzásnak úgy, hogy a Peano-aritmetika axiómái megfogalmazhatók és egyben levezethetők is legyenek az elméletben. Ezt a feltételt még úgy is meg szokták fogalmazni, hogy az elmélet elegendően erős. 4 – Megfogalmazható, azaz létezik a formális nyelvnek ilyen mondata. (Ez a fajta létezés ráadásul konstruktív abban az értelemben, hogy valamilyen eljárással véges lépésben kikereshető az összes mondat közül – bár a kikeresés idejére vonatkozóan nem feltétlenül lehet felső korlátot megadni.) 5 – Bizonyítható, azaz formalizált axiomatikus-deduktív elméletek levezethetőség kritériumának megfelel. 6 – Cáfolható egy S mondat, ha negációja (azaz a 'nem S' mondat) bizonyítható.
Gödel 2. nemteljességi tétele Gödel második nemteljességi tétele Gödel első nemteljességi tételének egy lényeges kiterjesztése. Míg az első nemteljességi tétel azt mondja ki, hogy minden „valamirevaló” elméletnek van megoldhatatlan problémája, addig ez a tétel konkrét példát mutat: minden „valamirevaló” elméletben bizonyíthatatlan, hogy maga az elmélet ellentmondásmentes.
FEJTÖRŐ A matematikusok a szintaktikus vagy a szemantikus megközelítést alkalmazzák?
KKNF és KDNF előállítása 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: 2n 2n 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?
KKNF és KDNF előállítása 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.
KKNF és KDNF előállítása Definíciók: 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.
KKNF és KDNF előállítása 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 x1,x2,…,xn az igazságtáblán szereplő ítéletváltozók.
KDNF előállítása Kitüntetett diszjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait ahol α=i. 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. Az így kapott teljes elemi konjunkciók diszjunkciója ki1˅ki2˅…˅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 ki1˅ki2˅…˅kiα formula pontosan az i1,i2,…,iα igazságkiértékelések mellett igaz.
KDNF előállítása Kitűntetett diszjunktív normálforma előállítása az igazságtábla az elemi konjunkciók x y z α h i **** (¬x˄¬y˄¬z) (¬x˄y˄¬z) (¬x˄y˄z) (x˄¬y˄¬z) (x˄y˄¬z) 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)˅ (x˄y˄¬z) (=α)
KKNF előállítása Kitűntetett konjunktív normálforma előállítása Válasszuk ki az igazságtábla azon sorait, ahol α =h. Minden ilyen sorhoz rendeljünk hozzá egy x1’˅x2’’˅…˅xn’’=dt teljes elemi diszjunkciót úgy, hogy az x1’’ literál xi vagy ¬xi legyen aszerint, hogy ebben a sorban xi oszlopában h vagy i áll. Az így kapott teljes elemi diszjunkciók konjunkciója di1˄di2˄…˄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 di1˄di2˄…˄ diα formula pontosan az i1,i2,…,iα igazságértékelések mellett hamis.
KKNF előállítása Kitűntetett konjunktív normálforma előállítása. az igazságtáblája az elemi diszjunkciók x y z α h i **** (x˅y˅¬z) (¬x˅y˅¬z) (¬x˅¬y˅¬z) A fenti α leképezést leíró kitűntetett konjunktív normálforma (x˅y˅¬z)˄ (¬x˅y˅¬z)˄ (¬x˅¬y˅¬z) (=α)
KKNF és KDNF egyszerűsítése A normálforma egyszerűsítése (Quine-McCluskey) Legyen k egy elemi konjunkció és x egy ítéletváltozó, ekkor a k1=k˄x, k2=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.
KKNF és KDNF egyszerűsítése Az alábbiakban megadunk egy algoritmust KDNF-ek egyszerűsítésére. Felírjuk a KDNF-ben szereplő összes elemi konjunkciót. 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. 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. 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.
KKNF és KDNF egyszerűsítése Példa: A 2.2. példabeli KDNF egyszerűsítése. A konjunkciólista: 1. ¬x˄¬y˄¬z # 2. ¬x˄y˄¬z 3. ¬x˄y˄z Minden konjunkció egyszerűsítve lett. 4. x˄¬y˄¬z 5. x˄y˄¬z Az első egyszerűsítés eredménye 1. ¬x˄¬z (1,2) # 2. ¬y˄¬z (1,4) 3. ¬x˄y (2,3) ------ Bekerül a DNF-be 4. y˄¬z (2,5) 5. x˄¬z (4,5) A második egyszerűsítés eredménye 1. ¬z (1,5) ----összevonhatók 2. (2,4) Az eredmény: ¬z ˅ (¬x˄y).
KKNF és KDNF egyszerűsítése Ha egy leképezés tautológia, akkor a KDNF-re alkalmazott McCluskey algoritmus eredménye az üres konjunkció vagy tele klóz (jele ▪). Például ¬z ˅ z egyszerűsítése után marad ▪ Ha egy leképezés azonosan hamis,, akkor KKNF-re alkalmazott McCluskey algoritmus eredménye az üres diszjunkció vagy üres klóz Jele: Például ¬z ˄ z egyszerűsítése után marad
Automatikus tételbizonyítás: McCluskey algoritmusával (szemantikus) {F1, F2, ..., Fn}=0G bizonyítandó 1. Előállítani a megfelelő formulát, ami ha azonosan hamis, akkor a vizsgált formula következmény (korábbi pontosan akkor tételek) F1...FnG 2. KKNF alakra hozni 3. KKNF-re alkalmazni McCluskey algoritmusát Ha egy leképezés azonosan hamis, akkor KKNF-re alkalmazott McCluskey algoritmus eredménye az üres diszjunkció. Nagyon nem hatékony!!!
FEJTÖRŐ Minimális információ elve: Az állítások halmaza az összes információt reprezentálja, ami belőle levezethető „Csak azt szabad, amit megengednek.” Maximális információ elve: Az állítások halmaza az összes vele összegyeztethető információt reprezentálja „Mindent szabad, amit nem tiltanak.” Az automatikus tételbizonyítás melyik elven működik?
Automatikus tételbizonyítás: Rezolúció 1965. J.A. Robinson -- EELTERJEDT, HATÉKONY, SZINTAKTIKUS Bizonyítandó: {B1, B2, … , Bn} |=0B 1. Felírjuk a Bi-k és a ¬B konjunktív normálformáit, és előállítjuk a bennük szereplő klózok (elemi diszjunkciók) K=(C1, C2, … , CM) klózhalmazát. 2. Rezolúcióval bizonyítjuk a klózhalmaz kielégíthetetlenségét 3. Ha a K klózhalmaz kielégíthetetlen, akkor a B1, B2, …, Bn feltételek teljesülése esetén a B tétel fennáll.
Automatikus tételbizonyítás: Rezolúció Ha az {F1, F2, ..., Fn}=0G, akkor és csak akkor {F1,F2,..., Fn-1,Fn,G} következésképen F1F2...FnG kielégíthetetlen. Átírva KNFF1KNFF2...KNFFn-1KNFFn KNFG kielégíthetetlen ezért {KNFF1,KNFF2,...,KNFFn-1,KNFFn, KNFG} kielégíthetetlen Más szóval a belőle kapott S klózhalmaz kielégíthetelen Példa: (XY) (XZ) (XZ) (YZ) Z, A kapott klózhalamaz: {XY, XZ, XZ, YZ, Z} Elnevezések: n-változós klóz n-argumentumos klóz 1-változós klóz egységklóz 0-változós klóz üres klóz
Rezolúció Zérusrendben Definíciók: C1 és C2 klózok rezolvense létezik, ha bennük pontosan egy olyan azonos alapú literál van, amelyek egymás negáltjai. Tehát C1=C1’ ˅ L1 , C2=C2’ ˅ L2 és L1=¬L2. A C1, C2 rezolvense a C=C1’ ˅C2’ klóz. qn-nek a K-klózhalmazból való rezolúciós levezetése a q1,q2,…,qn klózsorozat, ha qi∈ K, vagy qi a qj, qt rezolvense (j, t<i). - A K klózhalmaznak van rezolúciós cáfolata, ha rezolúciós levezetéssel levezethető belőle az üres klóz (▫). 2.15.Példa. Néhány példa klózpárokra, amelyeknek van, illetve, amelyeken nincs rezolvensük. klózpár rezolvens a) A˅¬B, B˅¬C A˅¬C b) A˅¬B, ¬B˅¬C nincs, a közös literál azonosan negált c) A˅¬B, D˅¬C nincs, mivel nincs közös literál d) ¬A˅¬B, A˅B˅¬C nincs, mivel egynél több literál tér el negáltságát tekintve e) ¬B, B ▫, az üres klóz
Rezolúció Zérusrendben Tétel: Rezolúciós elv helyessége és teljessége A K klózhalmazból levezethető az üres klóz, akkor és csak akkor, ha K kielégíthetetlen. Tétel: (Helyesség) Ha a K klózhalmazból levezethető az üres klóz, akkor a K klózhalmaz kielégíthetetlen. (könyv 230 old.) Tétel: (Teljesség) Ha a K klózhalmaz kielégíthetetlen, akkor a K klózhalmaznak van rezolúciós cáfolata. (könyv 230-231 old.) Definíció: klózhalmaz levezetési fája Egy K klózhalmaz levezetési fája egy olyan bináris fa, amely a rezolúciós levezetés lépéseit mutatja. A fa leveleihez a K-beli klózokat, a belső csúcsaihoz a megfelelő rezolvenseket rendeljük. Az élek címkéi a rezolválásban résztvevő, a klóz illesztésének megfelelő literálok
Rezolúció Zérusrendben C1: P ˅ Q C2: Q ˅ R Q C3: S ˅ R C4: P R Q ▫ C5: S A kapott rezolvensek mind tautologikus következményei K-nak.
Stratégiák: Lineáris rezolúció Definíció: lineáris rezolúciós levezetés Egy K klózhalmazból való lineáris rezolúciós levezetés egy q1, r1, q2, r2, … , qn klózsorozat, ha a qi a qi-1 és az ri-1 rezolvense. A qi klózókat centrális vagy központi klózoknak, az ri klózokat pedig mellék klózoknak nevezik. A lineáris rezolúció jól áttekinthető, helyes és teljes kalkulus Lineáris rezolúció levezetési fája. K={B˅¬C, A˅C, ¬A˅¬B, ¬A˅C, ¬C}
Stratégiák: Lineáris Input rezolúció Definíciók: lineáris input rezolúció Egy K klózhalmazból való lineáris input rezolúciós levezetés egy q1, r1, q2, r2, … , qn klózsorozat, ha a lineáris rezolúciós levezetés, és minden j-re rj∈K. A lineáris input rezolúció helyes, de nem teljes kalkulus, mivel van olyan kielégíthetetlen klózhalmaz amelyből lineáris input rezolúcióval nem vezethető le az üres klóz. Definíció: Egy klózt Horn-klóznak nevezünk, ha legfeljebb egy nem negált literált tartalmaz. Horn- klózok: ¬A˅¬B˅¬C, ¬A˅B˅¬C, A, ¬A. Nem Horn- klózok: A˅B˅C, A˅B˅¬C. Tétel: Ha egy kielégíthetetlen K klózhalmaz csak Horn- klózokat tartalmaz, akkor a K klózhalmazból lineáris input rezolúcióval is levezethető az üres klóz
Stratégiák: Lineáris Input rezolúció Lineáris input rezolúció levezetési fája K={B˅¬C, A˅C, ¬A˅¬B, ¬A˅C, ¬C}
Stratégiák: Egységrezolúció Egységrezolúciós stratégia esetén rezolvens csak akkor képezhető, ha legalább az egyik klóz egységklóz (helyes, de nem teljes) A lineáris input és az egységrezolúciós stratégia teljes a Horn logikában. lineáris input levezetés egységrezolúciós levezetés 1. BC S 1. BC S 2. AB S 2. C S 3. AC rez(1,2) 3. B rez(1,2) 4. AC S 4. AB S 5. C rez(3,4) 5. A rez(3,4) 6. C S 6. AC S 7. rez(5,6) 7. C rez(5,6) 8. rez(2,7)
SZEMANTIKUS FA ÉS KLÓZILLESZTÉS Egy klózhalmaz kielégíthetetlen, ha a benne szereplő ítéletváltozók bármely igazságértékelése mellett van legalább egy hamissá váló klóz. Mivel egy klóz akkor és csak akkor hamis, ha minden literálja hamis, a klózhalmazok kielégíthetetlenségét az összes interpretációk végignézésével is egyszerű eldönteni. Ez egy újabb szemantikus módszert ad az automatikus tételbizonyításra. Ezt segíti a szemantikus fa. Definíció: Bináris, teljes szemantikus fa Legyenek x1, x2,…,xn logikai változók. Az x1,x2,…,xn összes interpretációját tartalmazó bináris, teljes szemantikus fa, egy olyan n-szintű bináris fa, amelyben a szintek és a logikai változók között egy-egyértelmű megfeleltetést definiálunk. Az xi-hez rendelt szinten az élpárokban az egyik élhez xi, a másik élhez ¬ xi címkét írunk.
SZEMANTIKUS FA ÉS KLÓZILLESZTÉS Az A, B, C logikai változók teljes szemantikus fája
SZEMANTIKUS FA ÉS KLÓZILLESZTÉS Jelentse az xi címke azt, hogy xi igaz és a ¬xi címke azt, hogy az xi hamis. Ekkor a teljes szemantikus fa egy ága az x1, x2,…,xn egy interpretációját (igazságértékelését) adja, a teljes szemantikus fa ágai pedig az összes lehetséges igazságértékelést tartalmazzák. A fa gyökerétől egy N nevű csúcsig vezető utat l(N)-el jelöljük. Egy Cs=L1˅L2˅…˅Lk klózt hamissá tevő interpretációkat a szemantikus fában a következőképpen keressük meg. Válasszuk ki a szemantikus fa azon ágait, amelyeken a Cs-beli literálok mind negált alakban szerepelnek. Azok az interpretációk, amelyeket ezek az ágak reprezentálnak, nem elégítik ki Cs-t. Az a folyamat, amikor egy C klózhoz megkeresünk egy olyan utat a szemantikus fában, amelyen C minden literálja negálva szerepel, a C-nek az illető ágra való illesztése.
SZEMANTIKUS FA ÉS KLÓZILLESZTÉS Klózok illesztése szemantikus fára K={B˅¬C, A˅C, ¬A˅¬B, ¬A˅C, ¬C} Például a K={B˅¬C, A˅C, ¬A˅¬B, ¬A˅C, ¬C}–ben B˅¬C-t az l(c3) és l(c7) utakhoz tartozó két igazságértékelés, ¬A˅¬B-t az l(b2) úthoz tartozó két igazságértékelés nem elégíti ki.
SZEMANTIKUS FA ÉS KLÓZILLESZTÉS
SZEMANTIKUS FA ÉS KLÓZILLESZTÉS Definíció: Legyen S egy K klózhalmaz szemantikus fája, l(N) a gyökérből az N csúcshoz vezető út és N’ az N előtti csúcs ezen az úton. Az N-et cáfoló csúcsnak nevezzük, ha egy K-beli klóz az N pontban hamis, de az N’-ben még nem. N’-t levezető csúcsnak nevezzük ha mindkét rákövetkező csúcs cáfoló csúcs. (Lásd előző ábra) Definíció: A szemantikus fa egy útját, amely cáfoló csúcsban végződik, zárt ágnak nevezzük (jele ▪ ) . Definíció: Egy szemantikus fa zárt, ha minden ága zárt. Tétel: Egy K klózhalmaz kielégíthetetlen akkor és csak akkor, ha szemantikus fája zárt. Ha egy K klózhalmaz szemantikus fája zárt, akkor a klózhalmazban szereplő logikai változók (prímformulák) minden igazságértékeléshez van olyan Cs∈K klóz, amely az illető igazságértékelés mellett hamis. Ugyanis a Cs∈K klóz, amely egy adott cáfoló csúcsban válik hamissá, hamis mindazon igazságértékelés mellett, amelyeket a cáfoló csúcsig vezető úthoz és az alatta lévő részfa ágaihoz rendelt címkesorozatok reprezentálnak. Ha egy klózhalmaz kielégíthetetlenségét szemantikus fával vizsgáljuk, akkor a szemantikus fának a cáfoló csúcsok alatti részfáit már nem kell felépíteni, hiszen a cáfoló csúcsban hamissá váló klóz értékét a mélyebb szintekhez tartozó logikai változók értéke nem befolyásolja.
TEMATIKA Bevezetés A 0. rendű logika (Itéletkalkulus) Szintaxis Szemantika 0. rendű logikai törvények Szemantikus következmény Normálformák Automatikus tételbizonyítás (szemantikus, szintaktikus) Az 1. rendű logika (Predikátumkalkulus) 1. rendű logikai törvények Szintaktikus megközelítés ( Rezolúció)
1. Rendű logika Finomabb elemzést tesz lehetővé, nagyobb kifejező erővel rendelkezik! Példa: Panni kirándulni ment. individum predikátum Nevek: individum név vagy leírás, amiről állítunk valamit Predikátumok: A mondat többi része, amit állítunk; önmagában is értelmes kifejezés vagy kifejezés szerkezet. mondat {i,h} Olyan logikai függvény, melyeknek a változószáma megegyezik a mondat individumszámával. , : zR(z, g(z)) ( Q(g(x)) xR(x,x))
1. Rendű logika Nyelv=abc + szintaxis + szemantika. Logikai rész: , , , , , , Indivídum változók (X, Y, …) Elválasztó jelek („(„ „)”) (ítélet változók) Logikán kívüli rész: Függvény, predikátum és konstans szimbólumok Elemfajták halmaza
1. Rendű logika Szintaxis - jól formált kifejezés előállításának szabályai Definíció: Term - matematikai leképezés szimbolizálása 1. Egy indivíduum változó x jól formált term (jft) 2. Ha f egy n változós függvényszimbólum és t1, t2, ..., tn jft-ek, akkor f(t1, t2, ..., tn) jft. 3. Minden jft az 1., 2 véges sokszori alkalmazásával áll elő. Definíció: Formula - logikai leképezés szimbolizálása 1. . Ha P egy n változós predikátumszimbólum és t1, t2, ..., tn jft-ek, akkor P(t1, t2, ..., tn) jól formált formula (jff). (atomi formula, primformula) 2. Ha A, B jff-ák, akkor (A) jff., (zárójeles) A, jff. (negációs formula) AB jff., (konjunkciós formula) AB jff., (diszjunkciós formula) AB jff., (implikációs formula) AB jff. (ekvivalencia formula) ---------------------------------------------------------------------------------0-rendű formulák 3. xA, xA jff-ák. (kvantált formula, prim formula) ---------------------------------------------------------------------------------1. rendű formulák 4. Minden jff az 1., 2 és 3 véges sokszori alkalmazásával áll elő.
1. Rendű logika: Hatáskörök, típusok Logikai műveleti jelek hatásköre A kvantorok (, ) prioritása a legerősebb az összes logikai műveletei jel között. A , hatásköre a legszűkebb részformula jobbra. A hatókörök megállapításánál ezt a szabályt kell figyelembe venni, és az Ítéletkalkulusnál megismert szabályokkal együtt kell alkalmazni. Példa xP(x)y(Q(x,y)P(y)zQ(y,z))
1. Rendű logika Egy formulában egy x változó egy előfordulása: Változó előfordulás típusa Egy formulában egy x változó egy előfordulása: szabad, ha nem esik x-re vonatkozó kvantor hatáskörébe kötött ha x-re vonatkozó kvantor hatáskörébe esik. Példa xP(x)y(Q(x,y)P(y)zQ(y,z)) A fenti formulában x első előfordulása kötött, második előfordulása viszont szabad. Y mindegyik előfordulása kötött. Z mindegyik előfordulása kötött (egy van).
1. Rendű logika Formula minősítése Egy x változó egy formulában: Változó minősítése Egy x változó egy formulában: kötött változó ha x minden előfordulása kötött, szabad változó ha x minden előfordulása szabad, vegyes változó ha x -nek van szabad és kötött előfordulása is. Példa xP(x)y(Q(x,y)P(y)zQ(y,z)) A formulában : x vegyes, y kötött, z kötött Formula minősítése Egy formula zárt, ha minden változója kötött. Egy formula nyitott, ha legalább egy indivíduum változónak van legalább egy szabad előfordulása. Egy formula kvantormentes, ha nem tartalmaz kvantort. Példa A fenti formula nyitott, mert például x-nek van szabad előfordulása
1. Rendű logika Definíció: Legyen S egy K klózhalmaz szemantikus fája, l(N) a gyökérből az N csúcshoz vezető út és N’ az N előtti csúcs ezen az úton. Az N-et cáfoló csúcsnak nevezzük, ha egy K-beli klóz az N pontban hamis, de az N’-ben még nem. N’-t levezető csúcsnak nevezzük ha mindkét rákövetkező csúcs cáfoló csúcs. (Lásd előző ábra) Definíció: A szemantikus fa egy útját, amely cáfoló csúcsban végződik, zárt ágnak nevezzük (jele ▪ ) . Definíció: Egy szemantikus fa zárt, ha minden ága zárt. Tétel: Egy K klózhalmaz kielégíthetetlen akkor és csak akkor, ha szemantikus fája zárt. Ha egy K klózhalmaz szemantikus fája zárt, akkor a klózhalmazban szereplő logikai változók (prímformulák) minden igazságértékeléshez van olyan Cs∈K klóz, amely az illető igazságértékelés mellett hamis. Ugyanis a Cs∈K klóz, amely egy adott cáfoló csúcsban válik hamissá, hamis mindazon igazságértékelés mellett, amelyeket a cáfoló csúcsig vezető úthoz és az alatta lévő részfa ágaihoz rendelt címkesorozatok reprezentálnak. Ha egy klózhalmaz kielégíthetetlenségét szemantikus fával vizsgáljuk, akkor a szemantikus fának a cáfoló csúcsok alatti részfáit már nem kell felépíteni, hiszen a cáfoló csúcsban hamissá váló klóz értékét a mélyebb szintekhez tartozó logikai változók értéke nem befolyásolja.
1. Rendű logika Definíció: Legyen S egy K klózhalmaz szemantikus fája, l(N) a gyökérből az N csúcshoz vezető út és N’ az N előtti csúcs ezen az úton. Az N-et cáfoló csúcsnak nevezzük, ha egy K-beli klóz az N pontban hamis, de az N’-ben még nem. N’-t levezető csúcsnak nevezzük ha mindkét rákövetkező csúcs cáfoló csúcs. (Lásd előző ábra) Definíció: A szemantikus fa egy útját, amely cáfoló csúcsban végződik, zárt ágnak nevezzük (jele ▪ ) . Definíció: Egy szemantikus fa zárt, ha minden ága zárt. Tétel: Egy K klózhalmaz kielégíthetetlen akkor és csak akkor, ha szemantikus fája zárt. Ha egy K klózhalmaz szemantikus fája zárt, akkor a klózhalmazban szereplő logikai változók (prímformulák) minden igazságértékeléshez van olyan Cs∈K klóz, amely az illető igazságértékelés mellett hamis. Ugyanis a Cs∈K klóz, amely egy adott cáfoló csúcsban válik hamissá, hamis mindazon igazságértékelés mellett, amelyeket a cáfoló csúcsig vezető úthoz és az alatta lévő részfa ágaihoz rendelt címkesorozatok reprezentálnak. Ha egy klózhalmaz kielégíthetetlenségét szemantikus fával vizsgáljuk, akkor a szemantikus fának a cáfoló csúcsok alatti részfáit már nem kell felépíteni, hiszen a cáfoló csúcsban hamissá váló klóz értékét a mélyebb szintekhez tartozó logikai változók értéke nem befolyásolja.