Intelligens Rendszerek I. Tudásábrázolás formális logikával

Hasonló dokumentumok
ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)

A logikai következmény

Predikátumkalkulus. 1. Bevezet. 2. Predikátumkalkulus, formalizálás. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák.

Logikai ágensek. Mesterséges intelligencia március 21.

Predikátumkalkulus. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. Vizsgáljuk meg a következ két kijelentést.

Elsőrendű logika. Mesterséges intelligencia március 28.

Magyarok: Bereczki Ilona, Kalmár László, Neumann, Péter Rózsa, Pásztorné Varga Katalin, Urbán János, Lovász László

LOGIKA. Magyarok: Bereczki Ilona, Kalmár László, Neumann, Péter Rózsa, Pásztorné Varga Katalin, Urbán János, Lovász László.

Elsőrendű logika szintaktikája és szemantikája. Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1

Logika es sz am ıt aselm elet I. r esz Logika Hatodik el oad as 1/33

Matematikai logika és halmazelmélet

Matematikai logika NULLADRENDŰ LOGIKA

Logika és informatikai alkalmazásai kiskérdések február Mikor mondjuk, hogy az F formula a G-nek részformulája?

Logika es sz am ıt aselm elet I. r esz Logika Negyedik el oad as 1/26

AZ INFORMATIKA LOGIKAI ALAPJAI

Diszkrét matematika I.

Logika és informatikai alkalmazásai

Logika és informatikai alkalmazásai

Diszkrét matematika I.

Ítéletkalkulus. 1. Bevezet. 2. Ítéletkalkulus

Az informatika logikai alapjai

Alapfogalmak-szemantika

1. Tétel - Az ítéletkalkulus alapfogalmai

Diszkrét matematika MATEMATIKAI LOGIKA

Logika es sz am ıt aselm elet I. r esz Logika Harmadik el oad as 1/33

Logika es sz am ıt aselm elet I. r esz Logika 1/36

Logikai következmény, tautológia, inkonzisztens, logikai ekvivalencia, normálformák

Logika és informatikai alkalmazásai

Logika és informatikai alkalmazásai

Halmazelmélet és logika

Automatikus következtetés

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Az informatika logikai alapjai

1. Az elsőrendű logika szintaxisa

Logika es sz am ıt aselm elet I. r esz Logika M asodik el oad as 1/26

A matematika nyelvér l bevezetés

Ítéletkalkulus. 1. Bevezet. 2. Ítéletkalkulus

Logika és informatikai alkalmazásai

Logikai ágens, lehetőségek és problémák 2

Logikai alapok a programozáshoz

Logika és informatikai alkalmazásai

Logika és informatikai alkalmazásai

Az informatika logikai alapjai

Logikai alapok a programozáshoz

Logika és informatikai alkalmazásai

Az informatika logikai alapjai

3. Magyarország legmagasabb hegycsúcsa az Istállós-kő.

Logika és informatikai alkalmazásai

Logikai alapok a programozáshoz. Nagy Károly 2014

Logika és informatikai alkalmazásai

Dr. Jelasity Márk. Mesterséges Intelligencia I. Előadás Jegyzet (2008. október 6) Készítette: Filkus Dominik Martin

Példa 1. A majom és banán problémája

A matematika nyelvéről bevezetés

LOGIKA ÉS ÉRVELÉSTECHNIKA

Logika és informatikai alkalmazásai

Diszkrét matematika 1. középszint

Algoritmusok Tervezése. Fuzzy rendszerek Dr. Bécsi Tamás

A TANTÁRGY ADATLAPJA

Intelligens Rendszerek I. Tudásábrázolás szemantikus hálókkal, keretekkel és forgatókönyvvel

Az informatika logikai alapjai előadások

Logika és informatikai alkalmazásai. Wednesday 17 th February, 2016, 09:03

Matematikai logika. 3. fejezet. Logikai m veletek, kvantorok 3-1

Ésik Zoltán (SZTE Informatikai Tanszékcsoport) Logika a számtastudományban Logika és informatikai alkalmazásai Varterész Magdolna, Uni-Deb

Formális szemantika. Kifejezések szemantikája. Horpácsi Dániel ELTE Informatikai Kar

Logika és informatikai alkalmazásai

VII. Keretalapú ismeretábrázolás

2019/02/11 10:01 1/10 Logika

Logika kiskáté. Mihálydeák Tamás és Aszalós László

Logika kiskáté. Mihálydeák Tamás és Aszalós László

1. A matematikai logika alapfogalmai. 2. A matematikai logika műveletei

Számítási intelligencia

DISZKRÉT MATEMATIKA. Elsőrendű Logika. Minden madár gerinces. SZEMANTIKA

Kijelentéslogika, ítéletkalkulus

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Logika

Logika és informatikai alkalmazásai

LOGIKA ÉS ÉRVELÉSTECHNIKA

DISZKRÉT MATEMATIKA. Elsőrendű Logika. Minden madár gerinces.

BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai

2. Ítéletkalkulus szintaxisa

Automatikus tételbizonyítás

Dunaújvárosi Főiskola Informatikai Intézet

Az informatika logikai alapjai

Mesterséges Intelligencia MI

Memo: Az alábbi, "természetes", Gentzen típusú dedukciós rendszer szerint készítjük el a levezetéseket.

5.3. Logika a relációkhoz

A matematikai logika alapjai

Kijelentéslogika, ítéletkalkulus

III. Szabályalapú logikai következtetés

Logika nyelvészeknek, 12. óra A típuselmélet alapjai. Lehetőség van a kvantorfogalom mellett a funktorfogalom általánosítására is.

Felmentések. Ha valaki tanár szakos, akkor mivel neki elvileg a hálóban nincs logika rész, felmentést kaphat a logika gyakorlat és vizsga alól.

Felmentések. Logika (1. gyakorlat) 0-adrendű szintaktika 2009/10 II. félév 1 / 21

Matematikai logika. Nagy Károly 2009

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Logika

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

1. tétel Halmazok és halmazok számossága. Halmazműveletek és logikai műveletek kapcsolata.

Programok értelmezése

Bizonyítási módszerek ÉV ELEJI FELADATOK

Mit tanultunk eddig? Mit tanultunk eddig? Mit tanultunk eddig? Mit tanultunk eddig? 4/14/2014. propozicionális logikát

2004/2005 Logikai alapok a programozáshoz. (Kidolgozott vizsgakérdések) Előadó: Pásztorné Dr. Varga Katalin

Logika és számításelmélet. 2011/11 11

Átírás:

Intelligens Rendszerek I. Tudásábrázolás formális logikával 2007/2008. tanév, I. félév Dr. Kovács Szilveszter E-mail: szkovacs@iit.uni-miskolc.hu Miskolci Egyetem Informatikai Intézet 106. sz. szoba Tel: (46) 565-111 / 21-06 mellék

A tudásábrázolás elvárt jellemzői Patrick Winston szerint 1. A fontos dolgokat világosan adja meg. 2. Fedje fel a természetes korlátokat, megkönnyítve a számítások néhány fajtáját. 3. Legyen teljes. 4. Legyen tömör. 5. Legyen átlátható számunkra. 6. Legyen alkalmas gyors feldolgozásra. 7. Rejtse el a részleteket, de tegye elérhetővé azokat szükség esetén. 8. Létezzen rá számítógépi eljárás. A jó tudásábrázolás az MI feladatok megoldásánál fél siker. Dr. Kovács Szilveszter M.I. 9. / 2.

Tudástípusok Deklaratív Strukturált Procedurális Dr. Kovács Szilveszter M.I. 9. / 3.

Deklaratív tudás Csak ismeretek, összefüggések és alkalmazási utasítások nélkül Leírása: logikai kifejezések fogalmak objektumok Technikák: formális logika O-T-É hármas Dr. Kovács Szilveszter M.I. 9. / 4.

Tudásábrázolási módszerek Szimbolikus (formális) logika (ítéletkalkulus, elsőrendű logika) Szabályalapú rendszerek Szemantikus hálók Keretek, script-ek Neurális hálózatok Modellalapú Hibrid Deklaratív Strukturált Procedurális Dr. Kovács Szilveszter M.I. 9. / 5.

Tudásábrázolás formális logikával A logikáról: A logika a bölcselés tudománya, a helyes gondolkodás művészetének tana. A logika osztályozása: Logika Arisztotelészi (hagyományos) Propozíciós Logika (Ítéletkalkulus) Szimbolikus (formális) Predikátum logika (Elsőrendű logika) Nem klasszikus szimbolikus logika: - modális - temporális - többértékű -intuicionista - valószínűségi - Fuzzy logika Dr. Kovács Szilveszter M.I. 9. / 6.

udásábrázolás formális logikával: propozíciós logika Egyéb elnevezések: kijelentéskalkulus, ítéletkalkulus, nulladrendű predikátum-kalkulus. Propozíció: egy kijelentő mondat formában megadott állítás, mely az adott kontextusban egyértelmű igaz, vagy hamis logikai értékkel bír. A propozíciós logika olyan egyszerű nyelvtani kapcsolatokat alkalmaz a legegyszerűbb "atomi mondatok" között, mint az és, vagy, nem. Atomi mondatok: A= A víz száz fokon forr. B= A macskák ugatnak. Az ilyen atomi összetevők (objektumok) egyértelműen megítélhetők az igaz, vagy hamis értékek valamelyikével. (Általános tapasztalat szerint A igaz, B hamis). Dr. Kovács Szilveszter M.I. 9. / 7.

udásábrázolás formális logikával: propozíciós logika A propozíciós logika tárgya, célja összetett szerkezetek kiértékelésére formális szabályt adni. A kiértékelésben az atomi összetevők (objektumok) igazságértékeit kell csak figyelembevenni, jelentésüktől eltekintünk. Atomi kijelentések helyett szimbólumok: Esik az eső A Eltekintünk a természetes nyelvi jelentéstől Nem természetes átalakítás, pl.: A: Jóska megbetegedett. B: Jóska elment az orvoshoz. Hétköznapi értelemben A és B jelentése eltér B és A összetett kijelentésétől. Csak az igaz, vagy hamis értéke fontos számunkra A- nak és B-nek. Dr. Kovács Szilveszter M.I. 9. / 8.

A propozíciós logika szintaxisa Jelkészlet Elválasztójelek:, ( ) Logikai operátorok (műveleti jelek): {csökkenő precedenciasorrendben} negáció 'nem' konjunkció 'és' diszjunkció 'vagy implikáció 'ha... akkor... 'következik ekvivalencia 'akkor és csak akkor 'azonos' Logikai változók (ítéletváltozók): p, q, r, Logikai konstansok (ítélet-, predikátumkonstansok): T, F (True, False), (igaz, hamis). Dr. Kovács Szilveszter M.I. 9. / 9.

A propozíciós logika szintaxisa A propozíciós logika (kijelentéskalkulus, ítéletkalkulus) formuláit a jelkészlet elemeiből a szintaxis szabályai szerint építjük fel: Atomi formula (atom) Minden ítéletkonstans atom : T, F Minden ítéletváltozó atom : p, q, r, Formula (jól formált formula): Minden atomi formula egyben formula Ha A és B formulák, akkor a A, A B, A B, A B, A B kifejezések is formulák. Dr. Kovács Szilveszter M.I. 9. / 10.

A propozíciós logika szemantikája Egy logikai formulának az igazságértéke ad jelentést, mely igazságértéket a szemantika szabályai szerint kapja meg. A jelentésadás lépései: 1. Interpretálás 2. Kiértékelés A formula interpretálása: minden egyes ítéletváltozójához az igaz, vagy a hamis értéket rendeljük minden lehetséges módon. Egy hozzárendelés egy interpretációt ad. Az interpretációk száma a propozíciós logikában véges: 2 n ahol n a változók száma. pl.: A := (p q) (r ( s)) két lehetséges interpretációja: I 1 : (p,q,r,s) = (T,T,F,F) I 2 : (p,q,r,s) = (F,T,T,F)... Dr. Kovács Szilveszter M.I. 9. / 11.

A propozíciós logika szemantikája Kiértékelés Az interpretált formula kiértékelését a logikai műveleti jelek szemantikája alapján végezzük: Dr. Kovács Szilveszter M.I. 9. / 12.

A propozíciós logika szemantikája Kiértékelés A formula kielégíthető, ha létezik olyan interpretációja, ami igaz. A formula kielégíthetetlen, ha nem létezik olyan interpretációja, ami igaz. A formula érvényes, ha valamennyi interpretációja igaz. Egy következtetési folyamat teljes, ha az összes igaz következmény levezetésére képes. Pl.: Ha süt a nap, nem tanul Péter. süt a nap : p tanul Péter : q A:= p ( q) A lehetséges 4 interpretáció egyike: p= T, q= F, a kiértékelt formula: T ( F); T T; T, az A állítás kielégíthető, de nem érvényes (p= T, q= T) Dr. Kovács Szilveszter M.I. 9. / 13.

Logikai azonosságok a propozíciós logikában Összetett kijelentések kiértékelését, illetve egyszerűsítését, vagy kijelentések egyenértékűségének belátását segítik a logikai azonosságok. Igazságtáblával igazolhatók, pl.: A, B, C esetén 2 3 =8 eset, mindkét oldalon ugyanazt adja. A B = ( A B ) ( B A) A B = A B Funkcionálisan teljes logikai primitívek pl. a metszet, az unió és a tagadás segítségével az összes többi logikai művelet is kifejezhető. Dr. Kovács Szilveszter M.I. 9. / 14.

Logikai azonosságok a propozíciós logikában A False = A A True = A A True = True A False = False A A = True A A = False Univerzális határok Univerzális határok Univerzális határok Univerzális határok Kiegészítés Kiegészítés Dr. Kovács Szilveszter M.I. 9. / 15.

Logikai azonosságok a propozíciós logikában Kettős tagadás: A = A Idempotencia: A A = A Kommutativitás: A B = B A (felcserélhetőség) A B = B A Asszociativitás: (A B) C = A (B C) (társíthatóság) (A B) C = A (B C) Abszorpció: A (A B) = A (elnyelés) A (A B) = A Disztributivitás: A (B C) = (A B) (A C) (széttagolhatóság) A (B C) = (A B) (A C) DeMorgan összefüggés: (A B) = A B (A B) = A B Dr. Kovács Szilveszter M.I. 9. / 16.

Logikai azonosságok a propozíciós logikában B1. Idempotence B2. Commutativity B3. Associativity B4. Absorption B5. Distributivity B6. Universal bounds B7. Complementarity B8. Involution B9.Dualization a+a=a, a a=a a+b=b+a (a+b)+c=a+(b+c), (a b) c=a (b c) a+(a b)=a, a (a+b)=a a (b+c)=(a b)+(a c), a+(b c)=(a+b) (a+c) a+0=a, a+1=1 a 1=a, a 0=0 a+ a=1, a a=0, 1=0 (a+b)= a b (a b)= a + b Dr. Kovács Szilveszter M.I. 9. / 17.

Kielégíthetetlen és érvényes kifejezések A kielégíthetetlen logikai kifejezések és az érvényes kifejezések fontos szerepet játszanak a tételbizonyításban. A tétel azt jelenti, hogy állításokból logikailag következik a konklúzió. Tautologikus törvény: A B = A, ha A tautológia, A B = B, ha A tautológia. A logikai kifejezés tautológia, azaz érvényes kifejezés akkor, ha minden lehetséges helyettesítése igaz. Kielégíthetetlenségi törvény: A B = B, ha A kielégíthetetlen, A B =A, ha A kielégíthetetlen. A logikai kifejezés kontradikció, azaz kielégíthetetlen kifejezés akkor, ha minden lehetséges helyettesítésre hamis értéket ad. Természetesen a formulák többsége egyes interpretációkban hamis, más interpretációkban igaz, azaz kielégíthető. Dr. Kovács Szilveszter M.I. 9. / 18.

Megjegyzés: háromértékű logika A harmadik logikai érték: ½ : nem meghatározott ab Łukasiewicz Bochvar Kleene Heyting Reichenbach 00 0011 0011 0011 0011 0011 0½ 0½1½ ½½½½ 0½1½ 0½10 0½1½ 01 0110 0110 0110 0110 0110 ½0 0½½½ ½½½½ 0½½½ 0½00 0½½½ ½½ ½½11 ½½½½ ½½½½ ½½11 ½½11 ½1 ½11½ ½½½½ ½11½ ½11½ ½11½ 10 0100 0100 0100 0100 0100 1½ ½1½½ ½½½½ ½1½½ ½1½½ ½1½½ 11 1111 1111 1111 1111 1111 Dr. Kovács Szilveszter M.I. 9. / 19.

Tételbizonyítás a propozíciós logikában Egy propozíciós logikai formula érvényességének igazolására alkalmas módszerek: Igazságtáblás Formális levezetés Rezolúció A tétel igaz állításokból és egy, azokból állítólag következő konklúzióból áll. A tételbizonyítás feladata formális szabályok gépies alkalmazásán keresztül igazolni, hogy a konklúzió a premisszák következménye. Dr. Kovács Szilveszter M.I. 9. / 20.

Következtetési szabályok Modus ponens És kiküszöbölés És bevezetés Vagy bevezetés Dupla negáció kiküszöbölés Egységrezolúció Rezolúció Dr. Kovács Szilveszter M.I. 9. / 21.

Következtetési szabályok Modus ponens (implikáció kiküszöbölés) ha tudjuk, hogy az α βimplikáció igaz és α igaz, akkor következtethető (igaz) a β értéke α β, α β És kiküszöbölés ha tudjuk, hogy α 1 α 2 α 3 α n igaz, akkor következtethető (igaz) az α i értéke α 1 α 2 α 3 α n α i Dr. Kovács Szilveszter M.I. 9. / 22.

Következtetési szabályok És bevezetés ha tudjuk, hogy α 1, α 2, α 3,, α n igaz, akkor következtethető az α 1 α 2 α 3 α n értéke α 1,α 2,α 3,..., α n α 1 α 2 α 3 α n Vagy bevezetés ha tudjuk, hogy α i igaz, akkor következtethető (igaz) az α 1 α 2 α 3 α n értéke α i α 1 α 2 α 3 α n Dr. Kovács Szilveszter M.I. 9. / 23.

Következtetési szabályok Dupla negáció kiküszöbölés ha tudjuk, α értékét, akkor következtethető (igaz) az α értéke α α Egységrezolúció ha tudjuk, hogy az α β igaz és a β hamis, akkor következtethető (igaz) az α értéke α β, β α Dr. Kovács Szilveszter M.I. 9. / 24.

Tételbizonyítás a propozíciós logikában A rezolúció szabálya: α β, β γ α γ Mivel β nem lehet egyszerre igaz és hamis, ezért valamelyik premisszában, előfeltételben a másik tagnak (α, vagy γ ) igaznak kell lennie, tehát az α γ igaz. A rezolúció módszere kiemelkedik a többi közül, mivel ez a bizonyítási módszer alkalmazható a predikátum logikában is. Implikációként felírva: α β, β γ (az implikáció tranzitivitása) α γ α β= α Dr. Kovács Szilveszter M.I. 9. / 25.

Tételbizonyítás a propozíciós logikában A rezolúció módszerével egy tételről (állításról) egyértelműen belátható ha az kielégíthetetlen. A rezolúciós módszer lépései: A kielégíthetetlenség bizonyításához konjunktív normál forma alakra (KNF) hozzuk az összetett formulát és a rezolúció ismételt alkalmazásával, fokozatos egyszerűsítéseken keresztül jutunk el az ellentmondáshoz. (KNF elég csak egy részéről belátnunk, hogy kielégíthetetlen) A rezolúció alkalmazása a propozíciós logikában (ítéletkalkulus) korlátozott, mivel bonyolultabb problémák leírására ez a logika nem ad eszközöket. Dr. Kovács Szilveszter M.I. 9. / 26.

Tételbizonyítás a propozíciós logikában A konjunktív normálforma Klózok konjunkciója, ÉS kapcsolata Az eredeti formulával ekvivalens Egyszerű felépítése miatt gépiesen kezelhető. A klóz literálok diszjunkciója (VAGY kapcsolata), vagy egyetlen literál. A literál egy ítéletváltozó (logikai változó), vagy annak negáltja. Példa: Dr. Kovács Szilveszter M.I. 9. / 27.

Tételbizonyítás a propozíciós logikában Formulák konjunktív normálformára hozásának lépései: 1. Azonosságok kiküszöbölése: A B = ( A B ) ( B A) 2. Implikációk kiküszöbölése: A B = A B 3. A negálás hatáskörének redukálása: (A B) = A B (A B) = A B 4. Klózok konjunkciójának létrehozása: A (B C) = (A B) (A C) 5. Implikációs normál formára alakítás: A B C D átalakul A B C D A diszjunktív normál formából elhagyva a konjunkció operátorokat, a formula literálokra esik szét, melyek halmazára alkalmazzuk a rezolúció szabályát ciklusban. Ily módon a rezolúció egy olyan könnyen automatizálható eljárás, melynek segítségével egy klózhalmaz, illetve a neki megfelelő konjunktív normál forma kielégíthetetlenségét belátjuk. A klózhalmaz egyszerűsítése rezolválható klózpárokon keresztül történik. Rezolválható klózpár: egyetlen ellentett literálpárt tartalmaznak, pl: p A, p B ahol A és B közvetlenül tovább már nem rezolválható klózok (A B). Dr. Kovács Szilveszter M.I. 9. / 28.

Tételbizonyítás a propozíciós logikában A rezolúciós folyamat során a rezolválható párok rezolválása eredményeként adódó rezolvens klózt a halmazhoz adjuk. A klózhalmaz kielégíthetetlenségét az jelzi, hogy végül hamis klózt kapunk. A rezolúció algoritmusa: Procedure Rezolúció 1. KLÓZHALMAZ feltöltése 2. do 3. Rezolválható klózpár C i, C j kiválasztása a KLÓZHALMAZ-ból 4. Rezolválás: C ij R(C i,c j ) 5. KLÓZHALMAZ bővítése C ij rezolvenssel 6. while C ij False end Dr. Kovács Szilveszter M.I. 9. / 29.

Tételbizonyítás a propozíciós logikában Példa: KNF: (p q) ( p r) ( r s) q s p q p r q r r s q s q Rezolúció: α β, β γ α γ s s False A rezolúció teljességének tétele garantálja, hogy egy kielégítetlen formula klózhalmazából kiindulva, minden lehetséges módon képezve a klózpárok rezolvensét, véges sok lépésben eljutunk az üres klózhalmazhoz. Dr. Kovács Szilveszter M.I. 9. / 30.

Tételbizonyítás a propozíciós logikában Példa: KNF: (p q) ( p r) ( r s) q s Implikációs normál forma: (q p) (p r) (r s False) (True q) (True s) q p p r q r r s False q s False True q a b = a b a b c d = (a b) (c d) a b ( False) = (a b) False False c d = True (c d) True s False True s True True False Rezolúció: α β, β γ α γ Dr. Kovács Szilveszter M.I. 9. / 31.

Tételbizonyítás a propozíciós logikában Ha egy tudásbázisból következik egy állítás: (TB Állítás) : igaz, átírva konjunkcióra: (TB Állítás) : hamis A bizonyítandó tétel tagadott alakját a tudásbázishoz adva az egészről azt kell bizonyítanunk, hogy kielégíthetetlen Jó rá a rezolúció! Ehhez konjunktív normál forma alakra (KNF) hozzuk az összetett formulát és a rezolúció ismételt alkalmazásával, fokozatos egyszerűsítéseken keresztül jutunk el az ellentmondáshoz. Dr. Kovács Szilveszter M.I. 9. / 32.

Predikátum logika További elnevezések: elsőrendű logika, elsőrendű predikátumkalkulus, vagy egyszerűen predikátumkalkulus. A világ objektumokból áll, melyeknek saját azonosítójuk van. Predikátum: objektumok sajátságainak és az objektumok közötti kapcsolatok, viszonyok, relációk szimbolikus formában való megadására alkalmas állítás, mely egy adott interpretációban egyértelmű igaz, vagy hamis minősítéssel bír. Dr. Kovács Szilveszter M.I. 9. / 33.

Predikátum logika A predikátum logika jellemzői: Kijelentéseink tartalmát is leírja, mivel az állítások az individuumkonstansok, individuumváltozók és individuumfüggvények révén egy tartomány (alaphalmaz, domain) elemeire vonatkozhatnak. Az ítélet-, vagy logikai függvények, azaz a predikátumok használatával indivíduum paraméterektől függő igazságú állítások fogalmazhatók meg. Új logikai operátorok, a kvantorok segítségével kifejezhetjük a "minden" és a "létezik" fordulatokat is. Dr. Kovács Szilveszter M.I. 9. / 34.

Predikátum logika Az propozíciós logikában is volt formula (amely igaz/hamis értékkel bírt), de az csak ítéletkonstans, ill. ítéletváltozók logikai kapcsolatából állt össze Predikátum logika: itt az objektumok (amik a logikai értékkel bírnak) termek (konstansok, változók, és függvényeik) relációja. Az interpretáció módja eltér a propozíciós logikáétól, és ebből eredően a predikátum logikában egy formulának végtelen sok interpretációja lehetséges az alaphalmaz, és az azon értelmezett függvények és predikátumok tetszőleges választhatósága miatt. Magasabb rendű logika: megengedi az objektumok relációját is. Dr. Kovács Szilveszter M.I. 9. / 35.

Predikátum logika Bonyolultabb tételek bizonyíthatók, mint a propozíciós logikában: Pl.: Premisszák, ismert tények: (1) Van olyan hallgató, aki minden tárgyat szeret. (2) A szócséplést egyik hallgató sem szereti. ------------------------------------------------------------------------ Igaz-e a fenti állítások ismeretében a következő állítás? Bizonyítandó állítás: (4) Egyik tárgy sem szócséplés. Dr. Kovács Szilveszter M.I. 9. / 36.

A predikátum logika szintaxisa Jelkészlet: Elválasztójelek:, ( ) [ ] Logikai operátorok (műveleti jelek): Kvantorok: univerzális kvantor ("minden"): egzisztenciális kvantor ("létezik" vagy "van olyan"): (precedencia: ) Elemkonstansok (individuumkonstansok): a, b, c,...,vagy nevek (például: János, asztal). Elemváltozók (individuum változók): x, y, z... Függvényszimbólumok (individuumfüggvények): f, g, h,..., vagy például: testvére(józsi ) Laci Itéletkonstansok (logikai konstansok): True, False. Itéletváltozók (logikai változók): p, q, r... Predikátumszimbólumok (logikai függvény): P, Q, R,..., vagy például: testvérek( x, y ), P(x,y). Dr. Kovács Szilveszter M.I. 9. / 37.

A predikátum logika szintaxisa A jelkészlet elemeiből a kifejezések 3 osztálya alkotható meg: Term-ek, Atomi formulák (Atomok) és Jólformált formulák (Formulák). Term (individuum konstans, individuum változó, individuum függvény): Minden elemkonstans (individuum konstans) term. Pl.: a,b,...,asztal, szék, stb. Minden elemváltozó (individuum változó) term. Pl.: x, y. Ha f egy n-argumentumú függvényszimbólum és t1,...,tn term-ek, akkor f(t1,...,tn) is term. Pl.: f(a,x), gyereke(pál,x), színe(haj,időskorban) ősz, színe(haj,fiatalkorban) szőke. Dr. Kovács Szilveszter M.I. 9. / 38.

A predikátum logika szintaxisa Atomi formula (kiértékelve True, vagy False): Minden ítéletkonstans atomi formula. ( True, False ) Minden ítéletváltozó atomi formula. ( p, q, r, ) Ha P egy n-argumentumú predikátumszimbólum (logikai függvény) és t 1,...,t n term-ek, akkor P(t 1,...,t n ) atomi formula. Pl.: házaspár(pál,irén) True. Dr. Kovács Szilveszter M.I. 9. / 39.

A predikátum logika szintaxisa Formula (jólformált formula): Minden atomi formula egyben formula. (True, p, P(a,b) ) Ha A ésbformulák, akkor a ( A), (A B), (A B), (A B), (A B) kifejezések is formulák. Ha az A egy formula és az x egy elem (individuumváltozó), akkor a ( x)a, ( x)a kifejezések is formulák. Pl.: ( x) testvére (x,pál) Precedenciasorrend:, pl.: ((( x)a) (B) helyett: ( x)a B Példa: Vagy van egy részeg, vagy nem volt már ital. A:= részeg(x)=r(x), C= volt ital. ( x)r(x) C. Dr. Kovács Szilveszter M.I. 9. / 40.

A predikátum logika szintaxisa Kötött változó: Minden előfordulása a formulában kvantor hatása alatt áll. ( x) P(x,y) x kötött változó, y nem kötött változó. ( x) [P(x,y) ( y) Q(x,y)] mindkét x kötött [] miatt, y első előfordulása nem kötött, második előfordulása kötött. Mondat: olyan formula, melyben minden változó összes előfordulása kötött. Csak mondatokkal foglalkozunk. Példa mondatra: ( x) [P(x) ( y) Q(x,y)]. Dr. Kovács Szilveszter M.I. 9. / 41.

Feladat: Állítások: Példa a formulázásra (1) Van olyan hallgató, aki minden tárgyat szeret. (2) A szócséplést egyik hallgató sem szereti. ------------------------------------------------------------------ (3) Egyik tárgy sem szócséplés Formalizálás: Alkalmazott predikátumok: H(x): az x egy hallgató T(y): az y egy tárgy C(y): az y egy szócséplés S(x,y): az x szereti y-t. A formalizált állítások: F1: ( x)[h(x) ( y)(t(y) S(x,y))] F2: ( x)[h(x) ( y)(c(y) S(x,y))] F3: ( x)[t(x) C(x)] Dr. Kovács Szilveszter M.I. 9. / 42.

A predikátumkalkulus szemantikája Az elsőrendű predikátumkalkulus formuláinak is hasonlóan adunk jelentést, mint az ítélet-kalkulusban: először interpretáljuk, majd kiértékeljük a formulát. (Eredmény: True, vagy False). Interpretáció: Individuumtartomány (az értelmezés alaphalmazának) megválasztása: jele D, nem üres. Hozzárendelések: Minden individuumkonstans-szimbólumnak feleltessük meg D egy elemét. (a:= asztal ) Minden n-argumentumú individuumfüggvényhez (pl.: f(a,b) ) rendeljünk hozzá egy D n D leképezést. ( gyermeke(a,b) c, gyermeke(pál,irén) Jutka ). Minden n-argumentumú predikátumfüggvénynek feleltessünk meg egy D 2 {T,F} leképezést, ahol T a logikai igaz, F pedig a logikai hamis értéket jelöli. (Pl.: házaspár(pál,irén) True ). Dr. Kovács Szilveszter M.I. 9. / 43.

A predikátumkalkulus szemantikája Kiértékelés: Ha az A és B formulák igazságértéke ismert, akkor a ( A), (A B), (A B), (A B), (A B) formulák igazságértékét a logikai műveleti jelek propozíciós logikánál megadott igazságtáblái alapján határozzuk meg. A ( x)a formula igazságértéke pontosan akkor T az adott interpretációban, ha az A formula igazságértéke minden x D esetén True, egyébként ( x)a értéke False. A ( x)a formula igazságértéke pontosan akkor True az adott intrepretációban, ha az A formula igazságértéke legalább egy x D esetén True; egyébként ( x)a értéke False. Dr. Kovács Szilveszter M.I. 9. / 44.

A predikátum formula igazságértéke Predikátum formula igazságértéke az interpretáció függvénye Pl: ( x) [P( f (x,x), b) P(x, b)] formula esetén Értelmezések: a., D a természetes számok halmaza. Megfeleltetések: b := 1 f(x,y) := x y ( f a szorzást jelölő függvény) P := egyenlő ( P legyen az egyenlőség relációja) Ezekkel a formula: ( x) [(x 2 = 1) (x = 1)] T= igaz, a természetes számok körében. b., D az egész számok halmaza. Megfeleltetések: mint fent. A formula értéke F=hamis, mert x = -1 esetén x 2 = 1 -ből nem következik, hogy x = 1. Dr. Kovács Szilveszter M.I. 9. / 45.

Predikátum-logikai formulák kielégíthetősége Kielégíthető az a formula, amelyik valamely interpretációban igaz. Érvényesnek nevezünk egy formulát, ha minden interpretációban igaz. Például a ( x)p(x) ( y) P(y). Kielégíthetetlen az a formula, amely minden interpretációban hamis értékű. Például a ( x)p(x) ( y) P(y). Az érvényes, illetve a kielégíthetetlen formulák a fontosak számunkra, ugyanis a tételbizonyítást egy formula érvényességének, illetve kielégíthetetlenségének a belátására lehet visszavezetni. Probléma: az elsőrendű predikátumkalkulus egy formuláját nem tudjuk az összes lehetséges interpretációban kiértékelni, mivel végtelen sok alaphalmazt lehet megadni. Megoldás: a rezolúciós eljárás, mellyel egy formula érvényessége, vagy kielégíthetetlensége belátható. Dr. Kovács Szilveszter M.I. 9. / 46.

Logikai azonosságok a predikátum kalkulusban Két formula ekvivalens, ha minden interpretációban ugyanaz az igazságértékük. A propozíciós logikában megadott azonosságok itt is érvényesek További azonosságok: Q jelölheti a, vagy a jelek bármelyikét. Jelöljön A(x) olyan formulát, amelyben az x változó előfordul, B pedig olyat, amely az x-et nem tartalmazza. (Qx)A(x) B = (Qx)(A(x) B) (Qx)A(x) B = (Qx)(A(x) B) (( x)a(x)) = ( x)( A(x) ) (( x)a(x)) = ( x)( A(x) ) ( x) A(x) ( x) B(x) = ( x) (A(x) B(x)) ( x) A(x) ( x) B(x) = ( x) (A(x) B(x)) (Q1x) A(x) (Q2x) B(x) = (Q1x) (Q2y) (A(x) B(y)) (átnevezés!) (Q1x) A(x) (Q2x) B(x) = (Q1x) (Q2y) (A(x) B(y)). Dr. Kovács Szilveszter M.I. 9. / 47.

Rezolúció a predikátum logikában Bonyolultabb tételek bizonyíthatók, mint a propozíciós logikában, ugyanakkor a bizonyítás lépései is jóval összetettebbek. A következőkben egy egyszerű példát mutatunk, amely rámutat a predikátum logikán belüli rezolúció egyik erősségére: A bizonyítás folyamán individuumváltozó - individuumkonstans hozzárendeléseket is végez, amely révén arra is választ kapunk, hogy milyen feltételek mellett igaz a tétel. Pl.: Feladat: Értik-e a hallgatók a rezolúciót? Premisszák, ismert tények: (1) A hallgatók értelmesek. (2) Az értelmesek mindent értenek, ami egyszerű. (3) Az értelmeseknek a rezolúció egyszerű. ------------------------------------------------------------------------ Igaz-e a fenti állítások ismeretében a következő állítás? Bizonyítandó állítás: (4) A hallgatók értik a rezolúciót. Dr. Kovács Szilveszter M.I. 9. / 48.

Rezolúció a predikátum logikában A rezolúció módszerével egy tételről (állításról) egyértelműen belátható ha az kielégíthetetlen. A kielégíthetetlenség bizonyításához konjunktív normál forma alakra (KNF) hozzuk az összetett formulát és a rezolúció ismételt alkalmazásával, fokozatos egyszerűsítéseken keresztül jutunk el az ellentmondáshoz. Ha a KNF klózok egy része ellentmondó (ezt vizsgálja a rezolúcióval), akkor az egész formula kielégíthetetlen. Dr. Kovács Szilveszter M.I. 9. / 49.

Tételbizonyítás a predikátum logikában Ha egy tudásbázisból következik egy állítás: (TB Állítás) : igaz, átírva konjunkcióra: (TB Állítás) : hamis A bizonyítandó tétel tagadott alakját a tudásbázishoz adva az egészről azt kell bizonyítanunk, hogy kielégíthetetlen Jó rá a rezolúció! Ehhez konjunktív normál forma alakra (KNF) hozzuk az összetett formulát és a rezolúció ismételt alkalmazásával, fokozatos egyszerűsítéseken keresztül jutunk el az ellentmondáshoz. Dr. Kovács Szilveszter M.I. 9. / 50.

Rezolúció a predikátum logikában Pl.: Feladat: Értik-e a hallgatók a rezolúciót? Premisszák, ismert tények: (1) A hallgatók értelmesek. (2) Az értelmesek mindent értenek, ami egyszerű. (3) Az értelmeseknek a rezolúció egyszerű. ------------------------------------------------------------------------ Igaz-e a fenti állítások ismeretében a következő állítás? Bizonyítandó állítás: (4) A hallgatók értik a rezolúciót. Formulázás: Alkalmazott predikátumok: hallgató(x) - az x az egy hallgató értelmes(x) - az x értelmes érti(x,y) - az x érti az y-t egyszerű(y) - az y egyszerű Dr. Kovács Szilveszter M.I. 9. / 51.

Rezolúció a predikátum logikában (1) A hallgatók értelmesek. (2) Az értelmesek mindent értenek, ami egyszerű. (3) Az értelmeseknek a rezolúció egyszerű. Bizonyítandó állítás: (4) A hallgatók értik a rezolúciót. A premisszák és következmény formalizált alakban: (1) x hallgató(x) értelmes(x) (2) x,y értelmes(x) egyszerű(y) érti(x,y) (3) x értelmes(x) egyszerű (Rezolúció) (4) x hallgató(x) érti(x,rezolúció) Dr. Kovács Szilveszter M.I. 9. / 52.

Rezolúció a predikátum logikában A premisszák és következmény formalizált alakban: (1) x hallgató(x) értelmes(x) (2) x,y értelmes(x) egyszerű(y) érti(x,y) (3) x értelmes(x) egyszerű (Rezolúció) (4) x hallgató(x) érti(x,rezolúció) A premisszák és a negált következmény formalizált alakban: (1) hallgató(x) értelmes(x) (2) értelmes(x) egyszerű(y) érti(x,y) (3) értelmes(x) egyszerű (Rezolúció) (4) hallgató(x) érti(x,rezolúció) Negálva: (4): hallgató(x) érti(x,rezolúció) Dr. Kovács Szilveszter M.I. 9. / 53.

Rezolúció a predikátum logikában A klózhalmaz: ( hallgató(x) értelmes(x)) ( értelmes(x) egyszerű(y) érti(x,y)) ( értelmes(x) egyszerű (Rezolúció)) hallgató(x) érti(x,rezolúció) A rezolúciós folyamat lépései: hallgató(x) értelmes(x) hallgató(x) Rezolúció: α β, β γ α γ értelmes(x) értelmes(x) egyszerű(y) érti(x,y) érti(x,rezolúció) egyszerű(y) érti(x,y) y Rezolúció (helyettesítés) egyszerű(rezolúció) értelmes(x) egyszerű (Rezolúció) hallgató(x) értelmes(x) értelmes(x) hallgató(x) hallgató(x) False Dr. Kovács Szilveszter M.I. 9. / 54.

Példa: Rezolúció a predikátum logikában Predikátum kalkulus: KNF: Dr. Kovács Szilveszter M.I. 9. / 55.

Példa: Rezolúció a predikátum logikában Dr. Kovács Szilveszter M.I. 9. / 56.

MI orintált programozási nyelvek: PROLOG PROLOG (Programming in Logic, Logika alapú programozás) Alain Colmerauer, Bob Kowalski, 1970. Predikátum konstanson alapuló általános célú programnyelv, amely azonban legelőnyösebben logikai problémák megoldására alkalmazható. A PROLOG létrehozására kihatott az a tapasztalat, amelyet a korábbi MI programozási nyelvekkel szereztek: minél több a rendszerbe épített lehetőség, a rendszer annál inkább lelassul. Deklaratív programnyelv: elegendő megadnunk csak a problématerületre vonatkozó tényeket, szabályokat és a megválaszolandó kérdést, ill. minősítendő állítást, és a program generálja a megoldáshoz vezető lépéseket és szolgáltatja a választ. Dr. Kovács Szilveszter M.I. 9. / 57.

A PROLOG programozási nyelv Jellemzői: Az eljárások és a tények a mintaillesztés során kerülnek elő. Betartja a bemenőállítások sorrendjét. A keresést automatikus visszalépéssel (back track) hajtja végre, amelyet azonban a programozó a! (cut, vágás) operátorral módosíthat. Ez a lehetőség ellentmond a logikai programozás ideális koncepciójának: a programozó feladata csak a logikai probléma megadása, a problémaleírás algoritmikus kiértékelését pedig a gépnek kell elvégeznie. Kowalski képlete: algoritmus = logika + vezérlés Jelentése a következő: egy algoritmus mindig két komponenst tartalmaz implicit formában: a logikai összetevőt, amely megadja a kérdéses problémára vonatkozó tudást, a vezérlési összetevőt, mely megtestesíti a megoldási stratégiát az adott probléma esetére Dr. Kovács Szilveszter M.I. 9. / 58.

A PROLOG programozási nyelv További jellemzők: Bevezetésre került a symbol típus (domain), hogy a predikátumlogika individuumkonstansai, -változói és - függvényei a valóság egy részletét leképezhessék. Fontos adatszerkezet a lista. A listafeldolgozás a mintaillesztésen és a rekurzión alapul. A függvények a predikátumfüggvényeken alapulnak, és nincs különbség a bemenő és a kimenő változók között. A bemeneti állítások (szabályok, clauses) formátuma korlátozott: P if Q and R and S. fej törzs A fej egyetlen predikátum, a törzs pedig atomi formulák (többnyire predikátumok, azaz logikai függvények) negációt nem tartalmazó konjunkciója (csak and lehet). Dr. Kovács Szilveszter M.I. 9. / 59.

A PROLOG programozási nyelv További jellemzők: Mivel a törzs atomi formulák konjunkciója, azaz Horn-halmaz, így azt mondhatjuk, hogy a PROLOG a Horn halmazokra a rezolúció elvét alkalmazza. A felhasználóra hagyja a rezolúciós stratégia megvalósítását: néhány megszorítást tett a bemenőállításokra, és az illesztés a bemenőállítások (clauses, tények és szabályok) megadott sorrendjében hajtódik végre. A rendszer így tömörebb lett és gyorsabb végrehajtást tesz lehetővé. Dr. Kovács Szilveszter M.I. 9. / 60.

A PROLOG programozási nyelv Pl: Ismertek az alábbi tények: Cleopátra szebb Ginánál. Gina szebb Ursulánál. Kérdés: Ki sokkal szebb Ursulánál? A feladat megválaszolására alkalmas PROLOG program: Dr. Kovács Szilveszter M.I. 9. / 61.

A PROLOG működése Szemléltetés fagráffal Dr. Kovács Szilveszter M.I. 9. / 62.

A PROLOG működése Szemléltetés fagráffal (az első helyettesítés rögtön sikeres) Az első tény behelyettesítése a mondat első helyére Dr. Kovács Szilveszter M.I. 9. / 63.

A PROLOG működése Szemléltetés fagráffal (az első helyettesítés sikertelen) Dr. Kovács Szilveszter M.I. 9. / 64.

Ajánlott irodalom Jelen előadás fóliái részben az alábbi források alapján készültek: Dr. Dudás László: Mesterséges Intelligencia Módszerek, Miskolci Egyetem, Alkalmazott Informatikai Tanszék, http://www.ait.iit.uni-miskolc.hu/~dudas/mieaok Stuart J. Russel Peter Norvig: Mesterséges Intelligencia modern megközelítésben, Panem-Prentice-Hall, Budapest, 2000, ISBN 963 545 241 1 Fekete I. - Gregorics T. - Nagy S.: Bevezetés a mesterséges intelligenciába, LSI Oktatóközpont, Budapest, 1990. Michael Negnevitsky: Artificial Intelligence: A Guide to Intelligent Systems, Addison Wesley, Pearson Education Limited, 2002. ISBN 0201-71159-1 Dr. Kovács Szilveszter M.I. 9. / 65.