LOGIKA (LOGIC).

Slides:



Advertisements
Hasonló előadás
Deduktív adatbázisok.
Advertisements


Adatbázisrendszerek elméleti alapjai 2. előadás
Adatbázis rendszerek I Relációs kalkulus Általános Informatikai Tsz. Dr. Kovács László.
NEMMONOTON KÖVETKEZTETÉS (NONMONOTONIC REASONING).
Erőállóképesség mérése Találjanak teszteket az irodalomban
MATEMATIKA Év eleji felmérés 3. évfolyam
Matematikai logika.
Determinisztikus programok. Szintaxis: X : Pvalt program változók E : Kifkifejezések B : Lkiflogikai kifejezések C : Utsutasítások.
Műveletek logaritmussal
Matematikai logika A diasorozat az Analízis 1. (Mozaik Kiadó 2005.) c. könyvhöz készült. Készítette: Dr. Ábrahám István.
1 Előhang Világunk dolgainak leírásához gyakran használunk kijelentő mondatokat. Pl. Minden anya szereti gyerekeit. Júlia anya és Júlia gyereke Máté. Következmény:
Utófeszített vasbeton lemez statikai számítása Részletes számítás
Euklidészi gyűrűk Definíció.
4. VÉGES HALMAZOK 4.1 Alaptulajdonságok
Kocsisné Dr. Szilágyi Gyöngyi. Elérehet ő ség: aszt.inf.elte.hu/~szilagyi/ aszt.inf.elte.hu/~szilagyi Fogadó óra: hétf ő
Kocsisné Dr. Szilágyi Gyöngyi. Elérehet ő ség: aszt.inf.elte.hu/~szilagyi/ aszt.inf.elte.hu/~szilagyi Fogadó óra: hétf ő
Kocsisné Dr. Szilágyi Gyöngyi
Kocsisné Dr. Szilágyi Gyöngyi
Kocsisné Dr. Szilágyi Gyöngyi. Elérehet ő ség: aszt.inf.elte.hu/~szilagyi/ aszt.inf.elte.hu/~szilagyi Fogadó óra: hétf ő
A tételek eljuttatása az iskolákba
Logika Érettségi követelmények:
MI 2003/5 - 1 Tudásábrázolás (tudásreprezentáció) (know- ledge representation). Mondat. Reprezentá- ciós nyelv. Tudás fogalma (filozófia, pszichológia,
MI 2003/7 - 1 Az egyesítési algoritmus Minden kapitalista kizsákmányoló. Mr. Smith kapitalista. Mr. Smith kizsákmányoló.
Az informatika logikai alapjai
Bizonyítási stratégiák
VÁLOGATÁS ISKOLÁNK ÉLETÉBŐL KÉPEKBEN.
1. IS2PRI2 02/96 B.Könyv SIKER A KÖNYVELÉSHEZ. 2. IS2PRI2 02/96 Mi a B.Könyv KönyvelésMérlegEredményAdóAnalitikaForintDevizaKönyvelésMérlegEredményAdóAnalitikaForintDeviza.
Logika 5. Logikai állítások Miskolci Egyetem Állam- és Jogtudományi Kar Jogelméleti és Jogszociológiai Tanszék március 10.
A digitális számítás elmélete
Determinisztikus véges automaták csukva nyitva m s kbsm csukva nyitva csukva nyitva csukvanyitva 1. Példa: Fotocellás ajtó s b m m= mindkét helyen k= kint.
Matematikai logika alapjai
Bevezetés a matematikába I
Szerkezeti elemek teherbírásvizsgálata összetett terhelés esetén:
Sárgarépa piaca hasonlóságelemzéssel Gazdaság- és Társadalomtudományi kar Gazdasági és vidékfejlesztési agrármérnök I. évfolyam Fekete AlexanderKozma Richárd.
Halmazelmélet és matematikai logika
NOVÁK TAMÁS Nemzetközi Gazdaságtan
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
PROLOG PROGRAMOZÁSI NYELV
LOGIKA (LOGIC).
LOGIKA (LOGIC).
Lineáris egyenletrendszerek (Az evolúciótól a megoldáshalmaz szerkezetéig) dr. Szalkai István Pannon Egyetem, Veszprém /' /
szakmérnök hallgatók számára
Logikai szita Izsó Tímea 9.B.
Természetes és formális nyelvek Jellemzők, szintaxis definiálása, Montague, extenzió - intenzió, kategóriákon alapuló gramatika, alkalmazások.
Ekvivalenciák nyitott mondatok között Két nyitott mondatot ekvivalensnek mondunk, hha tetszőleges világban ugyanazok az objektumok teszik őket igazzá.
Henkin-Hintikka játék (részben ismétlés) Alapfelállás: -Két játékos van, Én és a Természet (TW képviseli). - A játék tárgya egy zárt mondat: P. - Választanom.
Nem igaz, hogy a kocka vagy tetraéder. Nem igaz, hogy a kicsi és piros. a nem kocka és nem tetraéder. a nem kicsi vagy nem piros. Általában: "  (A  B)
„Házasodj meg, meg fogod bánni; ne házasodj meg, azt is meg fogod bánni; házasodj vagy ne házasodj, mindkettőt meg fogod bánni; vagy megházasodsz, vagy.
(nyelv-családhoz képest!!!
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
QualcoDuna interkalibráció Talaj- és levegövizsgálati körmérések évi értékelése (2007.) Dr. Biliczkiné Gaál Piroska VITUKI Kht. Minőségbiztosítási és Ellenőrzési.
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
BINÁRIS FA Definició: A fa olyanösszefüggő gráf, amelyben nincs kör
MI 2003/6 - 1 Elsőrendű predikátumkalkulus (elsőrendű logika) - alapvető különbség a kijelentéslogikához képest: alaphalmaz. Objektumok, relációk, tulajdonságok,
Henkin-Hintikka-játék szabályai, kvantoros formulákra, még egyszer: Aki ‘  xA(x)’ igazságára fogad, annak kell mutatnia egy objektumot, amire az ‘A(x)’
> aspnet_regiis -i 8 9 TIPP: Az „Alap” telepítés gyors, nem kérdez, de később korlátozhat.
Deduktiv adatbázisok. Normál adatbázisok: adat elemi adat SQL OLAP adatbázisok: adat statisztikai adat OLAP-SQL … GROUP BY CUBE(m1,m2,..)
A KÖVETKEZŐKBEN SZÁMOZOTT KÉRDÉSEKET VAGY KÉPEKET LÁT SZÁMOZOTT KÉPLETEKKEL. ÍRJA A SZÁMOZOTT KÉRDÉSRE ADOTT VÁLASZT, VAGY A SZÁMOZOTT KÉPLET NEVÉT A VÁLASZÍV.
1 Az igazság ideát van? Montskó Éva, mtv. 2 Célcsoport Az alábbi célcsoportokra vonatkozóan mutatjuk be az adatokat: 4-12 évesek,1.
1 Relációs kalkulusok Tartománykalkulus (DRC) Sorkalkulus (TRC) - deklaratív lekérdezőnyelvek - elsőrendű logikát használnak - relációs algebra kifejezhető.
Mi a logika? Régebbi elnevezés:
Az informatika logikai alapjai
Analitikus fák kondicionálissal
Fordítás (formalizálás, interpretáció)
Nulladrendű formulák átalakításai
Bevezetés a matematikába I
Mi a logika? Régebbi elnevezés:
Mi a logika? Régebbi elnevezés:
ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)
Előadás másolata:

LOGIKA (LOGIC)

TUDÁSREPREZENTÁCIÓ ÉS KÖVETKEZTETÉS Analógia Hogyan oldunk meg egy problémát hagyományos programozással? Hogyan bírható rá egy számítógép, hogy megoldjon egy intelligenciát igénylő problémát? Melyek a legnehezebb lépések? Mi a tudásreprezentáció? pótlék (inkább következtetünk, mint tevékenykedünk) (erős) szemüveg médium mely lehetővé teszi a hatékony számítást az emberi kifejezést (töredékes) elmélet arról, hogy mit nevezünk intelligens gondolkodásnak

TUDÁSREPREZENTÁCIÓ ÉS KÖVETKEZTETÉS Mit várunk el egy reprezentációs nyelvtől? kifejező, tömör egyértelmű hatékony következtetést enged meg Felhasználási cél is fontos! (pl. osztás arab/római számmal) programozási nyelvek, természetes nyelvek, logika

A LOGIKA, MINT REPREZENTÁCIÓS NYELV LOGIKA ELEMEI szintaxis nyelv szimbólumai (kifejezések, amelyekkel bánni tudunk) hogyan lehet mondatokat formálni szemantika a mondatok a világ mely tényeire vonatkoznak a mondatok jelentése következtetés adott szintaxis és szemantika mellett új mondatok származtatása (mechanikus eljárások alkalmazásával)

ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)

ÍTÉLETKALKULUS – SZINTAXIS jelkészlet elválasztó jelek: ( ) logikai műveleti jelek:      ítéletváltozók (logikai változók): p, q, r, . . . ítéletkonstansok: T, F szintaxis szabályai atomi formula (atom) minden ítéletkonstans atomi formula minden ítéletváltozó atomi formula formula minden atomi formula egyben formula is ha A és B formulák, akkor (A), (A  B), (A  B), (A  B), (A  B) kifejezések is formulák a formulaképzés szabálya rekurzív

ÍTÉLETKALKULUS – PÉLDA állítások: A1: Ha süt a nap, akkor Péter strandra megy. A2: Ha Péter strandra megy, akkor úszik. A3: Péternek nincs lehetősége otthon úszni. A4: Ha süt a nap, akkor Péter nem marad otthon. A1, A2, A3 állításokból következik-e A4? atomok (atomi formulák): p: süt a nap q: Péter strandra megy r: Péter úszik s: Péter otthon marad eredeti állítások szerkezetét tükrözi formulák: F1: p  q F2: q  r F3: (s  r) F4: p  s

ÍTÉLETKALKULUS – SZEMANTIKA logikai formula (wff): szabályos szimbólumsorozat – igazságértéke ad jelentést (szemantika szabályai szerint) formula interpretációja minden ítéletváltozóhoz igaz (T) vagy hamis (F) érték rendelése minden lehetséges módon interpretált formula kiértékelése műveleti jelek szemantikája alapján (igazságtáblák) p q p p  q p  q p  q p  q T F

IMPLIKÁCIÓ p  q Ha a-disznók-repülnek akkor 2=1.  T   F F   F F hamis előtagból bármi következik? Értelmezés lehet: „Ha p igaz, akkor azt állítom, hogy q is igaz, egyébként q-ról nem állítok semmit.” p  q  p  q

FORMULÁK INTERPRETÁCIÓJA Formula: G: (p  q)  (r  s) Lehetséges interpretációk (összesen 24): I1: (p, q, r, s) = (T, T, F, F) I2: (p, q, r, s) = (F, T, T, F) G formula igazságértéke I1 és I2 interpretációban: G(I1) = F G(I2) = T I2 interpretáció kielégíti G formulát, I2 modellje G-nek

ALAPVETŐ TULAJDONSÁGOK ÉS RELÁCIÓK Igazság Egy formula igaz, ha az, amit leír, valóban előfordul a világban. Egy formula igazsága függ a világ állapotától, és az interpretációtól (szemantikától) Érvényes formula (tautológia) A formula igazsága nem függ sem a világ állapotától, sem a szemantikától. minden interpretációban igaz, minden modellben benne van T x Kielégíthetetlen formula Kielégíthetetlen egy formula, ha a világ soha nem olyan, mint amilyennek leírja. minden interpretációban hamis, nincs modellje x F

ALAPVETŐ TULAJDONSÁGOK ÉS RELÁCIÓK Kielégíthető formula van olyan interpretációja, amelyben igaz az értéke, van modellje Kapcsolat a 3 formulaosztály között: x érvényes  x kielégíthetetlen x érvényes  x kielégíthető  Logikai kifejezések modellje (x  y)  M  x  M és y  M (x  y)  M  x  M vagy y  M x  M  x  M

FORMULÁK EKVIVALENCIÁJA Két formula ekvivalens, ha minden interpretációban ugyanaz a logikai értékük. Nevezetes ekvivalenciák, logikai törvények: A  B = (A  B)  (B  A) A  B = A  B A  B = B  A kommutatív A  B = B  A (A  B)  C = A  (B  C) (A  B)  C = A  (B  C) asszociatív A  (B  C) = (A  B)  (A  C) A  (B  C) = (A  B)  (A  C) disztributív

FORMULÁK EKVIVALENCIÁJA Logikai törvények A  F = A A  T = A A  T = T A  F = F A  A = T A  A = F (A) = A kettős tagadás (A  B) = A  B (A  B) = A  B deMorgan A  (A  B) = A A  (A  B) = A abszorpció, elnyelés A  A = A A  A = A idempotencia

LOGIKAI KÖVETKEZMÉNY A W W formula A formulának logikai következménye, ha W igaz minden olyan interpretációban, amelyben A igaz. MI-ben: A1 , . . . , An W bizonyos formulákról tudjuk, hogy igazak (A1, . . . , An) ha W ezek logikai következménye, W is igaz esetek végignézése nélkül hogy lehet eldönteni?? a  (a  b) b a b a  b a  (a  b) T F

LOGIKAI KÖVETKEZMÉNY Logikai következmény fogalmának értelmezése az érvényesség fogalmával: Tétel: A1 , . . . , An W iff (A1  . . .  An)  W érvényes. Bizonyítás: (): ha A1, . . ., An W def. Ai M, W M  (A1  . . .  An)  W igaz (): ha (A1  . . .  An)  W igaz def. M: A1  . . .  An M de W M (implikáció igazságtáblája) Logikai következmény fogalmának értelmezése a kielégíthetetlenség fogalmával: Tétel: A1 , . . . , An W iff A1  . . .  An W kielégíthetetlen. (A1  . . .  An  W) = ((A1  . . .  An)  W) = (A1  . . .  An  W) = (a  b) = a  b (A1  . . .  An)  W = A1  . . .  An  W

LOGIKAI KÖVETKEZMÉNY Elnevezések: (A1  . . .  An)  W tétel A1  . . .  An tétel axiómái, feltételei W következmény, konklúzió

TÉTELBIZONYÍTÁS IGAZSÁGTÁBLÁVAL F1: p  q F2: q F3: p ?: F1  F2 F3 lehetőségek: beláthatjuk, hogy minden olyan interpretációban, amelyben F1F2 igaz, igaz F3 is bebizonyíthatjuk, hogy F1F2F3 érvényes beláthatjuk, hogy F1F2F3 kielégíthetetlen p q F1 F2 F1F2 F3 F1F2F3 F1F2F3 T F    a b c

TÉTELBIZONYÍTÁS QUINE ALGORITMUSSAL a formula egy változójának interpretálása (T, F)  két új formula eljárás folytatása mindaddig, míg a bináris fa levelein csak igazságértékek találhatók ha minden levél T, érvényes a formula (((p  q)  r)  (p  q))  (p r) ((q  r)  q)  r T r  r T T T p=T p=F q=T q=F r=T r=F

TÉTELBIZONYÍTÁS FORMÁLIS LEVEZETÉSSEL Formula formális levezetése egy axiómahalmazból axiómahalmaz (egyszerű, érvényes formulák) levezetési (következtetési) szabályok (érvényes formulákból érvényes formulát hoznak létre) p q Kleen: A  (B  A) (A  (B  C))  ((A  B)  (A  C)) (A  B)  ((A  B)  A) levezetési szabály: modus ponens Modus ponens: A, A  B B A  B A B Ha az A és az A→B formula érvényes, akkor a B formula is érvényes.

LEVEZETÉSI SZABÁLYOK Érvényes kártyák: mássalhangzó magánhangzó és páros szám Modus ponens: A  B, A B (K, E) Modus tollens: A  B, B A (7) mássalhangzó  érvényes magánhangzó  páros  érvényes magánhangzó  érvényes  páros

LEVEZETÉSI SZABÁLYOK a  b a, a  b b levezetési szabályok? F a  b a, a  b b levezetési szabályok? Helyes következtetés: Def. Ha p q, akkor p q az előállított formula logikai következmény legyen a  b b nem helyes (igazságtáblából) a  b a, modus ponens helyes (igazságtáblából) Teljes következtetés: Def. Ha p q, akkor p q mindent előállítson, ami logikailag következik modus ponens nem teljes a  b a  s b  s s ?? a b a  b T F a b a  b T F

LEVEZETÉSI SZABÁLYOK Rezolúció: a  b a  b c  a c  a c  b c  b a1  ...  am  b1  ...  bk c1  ...  cn  d1  ...  dl ahol dj = ai a1  ...  ai  ...  am  c1  ...  cn b1 ...  bk d1  ...  dj  ...  dl a1  ...  am  b1  ...  bk c1  ...  cn  d1  ...  dl ahol dj = ai a1 …  ai …  am  c1 ...  cn  b1...  bk d1 ...  dj ...  dl

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL Rezolúciós eljárás: cáfoló eljárás (ellentmondással történő bizonyítás), mellyel egy konjunktív normálforma ill. egy klózhalmaz kielégíthetetlenségét bizonyítjuk. Konjunktív normálforma: speciális részformulák (klózok) konjunkciója klóz: literálok diszjunkciója ill. egy literál literál: egy ítéletváltozó vagy annak negáltja (p  q)  (q  r)  (s  r)  p  s Implikációs normálforma: klóz: implikáció – bal oldalon atomok konjunkciója, jobb oldalon atomok diszjukciója (p  q)  (q  r)  (s  r  F)  (T  p)  (T  s)

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL minden formula átalakítható normálformára Transzformációs szabályok: A  B = (A  B)  (B  A) ( kiküszöbölése) A  B = A  B ( kiküszöbölése) (A  B) = A  B ( hatáskörének redukálása) (A  B) = A  B ( hatáskörének redukálása) A = A ( hatáskörének redukálása) A  (B  C) = (A  B)  (A  C) (klózok konjunkciójának létrehozása) (((p  q)  (q  r)  (s  r))  (p  s)) (((p  q)  (q  r)  (s  r))  (p  s)) b.) ((p  q)  (q  r)  (s  r)  (p  s)) d.) (p  q)  (q  r)  (s  r)  (p  s) c.) e.) (p  q)  (q  r)  (s  r)  p  s c.) d.) e.)

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL klóz alak, klóz halmaz: C1: p  q C2: q  r C3: s  r C4: p C5: s Lássuk be, hogy C1 . . . C5 klózhalmaz kielégíthetetlen indirekt bizonyítás: tfh létezik modellje (minden klóz igaz) C4 igaz, ha p = T C5 igaz, ha s = T C1 igaz, ha q = T (mivel p = F, C4-ből) C3 igaz, ha r = F (mivel s = F, C5-ből) C2 igaz, ha q = F (mivel r = F, C3- és C5-ből) ellentmondás!

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL A bizonyítási eljárás szemléltetése: C1: p  q C2: q  r C3: s  r C4: p C5: s rezolúciós gráf, cáfolati gráf új klóz előállítása: rezolúcióval p  q s  r q  r q p s r q q r q NIL q NIL r q

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL A1, A2, …, An B ?? A1  A2  …  An   B kielégíthetetlen igazolása rezolúciós eljárással A rezolúciós eljárás lépései: Cél tagadása, az axiómákhoz való hozzáadása Az A1  A2  …  An   B formula klóz formára hozása (kiindulási klózhalmaz) Az üres klóz (NIL) előállításáig: a klózhalmazból két rezolválható klóz választása, a kiválasztott klózok rezolvensének képzése, a rezolvens klóz hozzáadása a klózhalmazba.

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL rezolválható klózok: komplemens literálpárt tartalmaznak komplemens literálpár: egy logikai változó és a negáltja együtt rezolvens klóz: komplemens literálok elhagyása után maradó részek diszjunkcióval összekapcsolva üres klóz: NIL, minden reprezentációban hamis rezolúció tulajdonságai: algoritmusa nemdeterminisztikus C1: p  q p  r C2: q  r p  s C3: s  r s C4: p NIL C5: s helyes (logikai következmény) teljes (minden logikai következmény belátható rezolúcióval)

PREDIKÁTUMKALKULUS (ELSŐRENDŰ LOGIKA)

PREDIKÁTUMKALKULUS Alapok: az elsőrendű logika felosztja a világot objektumokra, az objektumok tulajdonságaira, az objektumok közti relációkra. igaz vagy hamis állítások reprezentálása a kijelentések egy alaphalmaz elemeire vonatkoznak konstansok, változók, függvények, predikátumok minden, létezik

PREDIKÁTUMKALKULUS - SZINTAXIS jelkészlet elválasztó jelek: , ( ) logikai műveleti jelek:      kvantorok:   objektumváltozók, változók: x, y, z, . . . objektumkonstansok, konstansok: a, b, c, . . . függvényszimbólumok: f, g, h, . . . ítéletváltozók (logikai változók): p, q, r, . . . ítéletkonstansok: T, F predikátumszimbólumok: P, Q, R, . . .

PREDIKÁTUMKALKULUS - SZINTAXIS szintaxis szabályai term minden objektumkonstans term minden objektumváltozó term ha f n-argumentumú függvényszimbólum és t1, ... ,tn termek, akkor f(t1, ... ,tn) is term atomi formula minden ítéletkonstans atomi formula minden ítéletváltozó atomi formula ha P n-argumentumú predikátumszimbólum és t1, ... ,tn termek, akkor P(t1, ... ,tn) atomi formula

PREDIKÁTUMKALKULUS - SZINTAXIS szintaxis szabályai formula (jól formált formula, wff) minden atomi formula egyben formula is ha A és B formulák, akkor a A, (A  B), (A  B), (A  B), (A  B) kifejezések is formulák ha A egy formula és x egy változó, akkor a x A, x A kifejezések is formulák wff? szereti(Kati, kutyája(Kati)  macskája(Kati)) szereti(Kati, f drága(f)) szereti(Kati, x) x szereti(Kati, x) x szereti(Kati, x) x [P(x, y)  y Q(x, y)]

PREDIKÁTUMKALKULUS - PÉLDA állítások: A1: Van olyan páciens, aki minden doktorban megbízik. A2: A kuruzslókban egyetlen páciens sem bízik meg. A3: Egyetlen doktor sem kuruzsló. A1 és A2 állításokból következik-e A3? predikátumok: P(x): x egy páciens D(y): y egy doktor K(z): z egy kuruzsló M(x,y): x megbízik y-ban formulák: F1: x {P(x)  y [D(y)  M(x,y)]} F2: x {P(x)  y [K(y)  M(x, y)]} vagy F2: x y {[P(x)  K(y)]  M(x, y)} F3: x [D(x)  K(x)]

PREDIKÁTUMKALKULUS - SZEMANTIKA interpretáció értelmezés alaphalmazának megválasztása (U  ) hozzárendelések: minden konstans szimbólumnak egy elem megfeleltetése U-ból minden n-argumentumú függvényszimbólumhoz egy Un  U leképezés rendelése minden n-argumentumú predikátumszimbólumnak egy Un  {T, F} leképezés megfeleltetése Példa: x [P(f(x,x),a)  P(x,a)] U: természetes számok a: 1 f(x,x): x2 P(x,y): x=y x [(x2=1)  (x=1)]

PREDIKÁTUMKALKULUS - SZEMANTIKA kiértékelés ha A, B formulák igazságértéke ismert, akkor A, (A  B), (A  B), (A  B), (A  B) formulák igazságértékének meghatározása (igazságtábla) x A igazságértéke T, ha A formula minden xU esetén T, egyébként F x A igazságértéke T, ha A formula legalább egy xU esetén T,

PREDIKÁTUMKALKULUS - SZEMANTIKA Kielégíthető formula: van modellje. x [(x2 = 1)  (x = 1)] U: természetes számok  modellje U: egész számok  nem modellje Érvényes formula (tautológia): minden modellben benne van. x p(x)  y p(y) Kielégíthetetlen formula (ellentmondás): nincs modellje. x p(x)  y p(y) formulák kiértékelése az összes lehetséges interpretációban???

FORMULÁK EKVIVALENCIÁJA Logikai törvények: . Qx A(x)  B = Qx (A(x)  B) Q:  vagy  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)) Qx A(x)  Qx B(x) = Qx Qy (A(x)  B(y)) Qx A(x)  Qx B(x) = Qx Qy (A(x)  B(y)) (14) x A(x)  x B(x)  x (A(x)  B(x)) !! x A(x)  x B(x) = x A(x)  y B(y) = x y (A(x)  B(y)) - (15) x A(x)  x B(x)  x (A(x)  B(x)) !! x A(x)  x B(x) = x A(x)  y B(y) = x y (A(x)  B(y)) - (15)

F1 és F2 formulákból következik-e F3? LOGIKAI KÖVETKEZMÉNY F1: x (P(x)  Q(x)) F2: P(a) F3: Q(a) F1 és F2 formulákból következik-e F3? Logikai következmény definíciója alapján: F1 igaz minden x-re, speciálisan a-ra is F2 igaz  F3 is igaz (implikáció) Cáfoló módszer (kielégíthetetlenség): F1  F2  F3 kielégíthetetlen

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL a1  . . .  am  b1  . . .  bk c1  . . .  cn  d1  . . .  dl ahol dj = ai a1  . .  ai . .  am  c1  . .  cn  b1 . .  bk d1  . .  dj  . .  dl Problémák: normálformára hozás kvantorok kezelése egyesítés

NORMÁLFORMÁRA HOZÁS A  B = (A  B)  (B  A) ( kiküszöbölése) A  B = A  B ( kiküszöbölése) (A  B) = A  B ( hatáskörének redukálása) (A  B) = A  B A = A x A(x) = x A(x) x A(x) = x A(x) változók standardizálása - változók átnevezése, hogy az egyes kvantorok által lekötött változók különbözzenek (nem csak formulán belül!) x (P(x)  x Q(x)) x (P(x)  y Q(y))

NORMÁLFORMÁRA HOZÁS egzisztenciális kvantorok kiküszöbölése x P(x) h háza(h, János) P(a) háza(Sk_1, János) Skolem konstans x y P(x,y) sz h háza(h, sz) x P(x, g(x)) sz háza(Sk_2(sz), sz) x1, . . . ,xn y P(y) x1, . . . ,xn P(g(x1, . . . ,xn)) Skolem függvény y x P(x, y) h sz háza(h, sz) x P(x, b) sz háza(Sk_3, sz)

NORMÁLFORMÁRA HOZÁS prenex formára hozás csak -k maradtak (a változókat standardizáltuk)  kiemelése x1 . . . xn A(x1, . . . ,xn) univerzális kvantorok elhagyása klózok kialakítása csak  és  műveletek A  (B  C) = (A  B)  (A  C) klózok konjunkciójának létrehozása konjunkciók elhagyása (klózhalmaz)

EGYESÍTÉS/UNIFIKÁCIÓ x szereti(Fifi, x) y szereti(y, alma) szereti(Fifi, alma) kötési/helyettesítési lista: véges  halmaz, amelyben minden vi változó, minden ti term és vi-k különbözőek  = {v1t1, . . . , vntn}  = {xalma, yFifi} kötés/helyettesítés: p p formula helyettesítése -val S(x, g(x, y)){x1, z345} = S(1, g(1, y)) p és q egyesíthető -val: p = q legáltalánosabb egyesítő: legrövidebb kötési lista, amely egyesít 2 formulát

EGYESÍTÉSI ALGORITMUS H = { P(x, u, f(g(x))), P(a, y, f(y)) } x, y, u: változók, a: konstans, f, g: függvény szimbólum, P: predikátum szimbólum különbségi halmaz: D D = { x, a }  = { xa } H = { P(a, u, f(g(a))), P(a, y, f(y)) } D = { u, y }  = { xa, uy } H = { P(a, y, f(g(a))), P(a, y, f(y)) } D = { g(a), y }  = { xa, uy, yg(a) } H = { P(a, g(a), f(g(a))), P(a, g(a), f(g(a))) } x = f(x) ??? f(f(f…. OCCUR CHECK – ELŐFORDULÁS-ELLENŐRZÉS

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL a1  ...  am  b1  ...  bk c1  ...  cn  d1  ...  dl ahol dj = ai [a1 ...  ai ...  am  c1 ...  cn  b1...  bk d1 ...  dj ...  dl] bináris rezolúció: a rezolválandó literálnak csak 1-1 előfordulását választjuk ki mindkét szülő klózból tulajdonságai: helyes nem teljes nemdeterminisztikus

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL K1: P(x)  P(a) K2: P(y)  P(a) K1 mindkét és K2 első literáljának egyesítése: H = P(x), P(a), P(y)  = xa, ya K3: P(a) K1 első és K2 mindkét literáljának egyesítése: K4: P(a) K3 és K4 klózok rezolválása: NIL bináris rezolúcióval: K1 – 1, K2 – 1, x|y K3: P(a)  P(a) tautológia (törölhető) K1 – 2, K2 – 1, y|a K4: P(x)  P(a) K1 – 2, K2 – 2 K5: P(x)  P(y) K1 – 1, K2 – 2, x|a K6: P(a)  P(y) … NIL nem érhető el

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL FAKTORIZÁCIÓ bináris rezolúció teljessé tehető faktorizációval C klóz egy faktora: C|, ( egy legáltalánosabb egyesítő helyettesítés, amely C két vagy több literálját azonossá teszi) klóz faktorizációja: klóz összes faktorának előállítása klózhalmaz faktorizációja: klózhalmaz összes klózának faktorizációja faktorhalmaz: faktorizáció műveletével kibővített klózhalmaz

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL P(x, a)  P(y, z)  P(z, x) klóz összes faktora: P(y, a)  P(a, y) (1. és 2. literál egyesítése,  = {x|y, z|a}) P(a, a)  P(y, a) (1. és 3. literál egyesítése,  = {z|x, x|a})) P(x, a)  P(x, x) (2. és 3. literál egyesítése,  = {y|z, z|x})) P(a, a) (1., 2. és 3. literál egyesítése,  = {x|y, z|y, y|a})) K1: P(x)  P(a) K2: P(y)  P(a) K1’: P(a) K2’: P(a)

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL A1: Van olyan páciens, aki minden doktorban megbízik. A2: A kuruzslókban egyetlen páciens sem bízik meg. A3: Egyetlen doktor sem kuruzsló. F1: x {P(x)  y [D(y)  M(x,y)]} F2: x {P(x)  y [K(y)  M(x, y)]} F3: x [D(x)  K(x)] F3 negáltja: x [D(x)  K(x)] klóz forma: K1: P(a) K2: D(y) M(a, y) K3: P(x) K(y) M(x, y) K4: D(b) K5: K(b) F1-ből, a: skolem konstans F2-ből F3-ból, b: skolem konstans

TÉTELBIZONYÍTÁS REZOLÚCIÓVAL P(a) D(y) M(a,y) P(x) K(y) M(x,y) D(b) K(b) x|a K(y) M(a,y) y|b M(a,b) NIL y|b M(a,b)

VÁLASZADÁS REZOLÚCIÓVAL ítéletkalkulus: válaszadással nincs probléma (T, F) predikátumkalkulus: x W(x) – T, F x W(x) – T, F x ?? válasz kialakításának automatizálása ?? kérdés-felelet probléma válasz meghatározása logikai következtetést igényel

VÁLASZADÁS REZOLÚCIÓVAL x h(János, x)  h(Fifi, x) h(János, x)  h(Fifi,x) h(János, park) h(János, park) x h(Fifi, x) h(Fifi, x) h(Fifi,x) h(János, x) h(János, x)  h(Fifi,x) NIL h(János, park) cáfolati gráf h(Fifi,x)  h(Fifi,x) NIL  h(Fifi,park) bizonyítási gráf

VÁLASZADÁS REZOLÚCIÓVAL A VÁLASZADÁSI ELJÁRÁS célállítás negálásából származó klózokat kiegészítjük tautológiává (diszjunkcióval saját negáltját hozzáfűzzük – ez a helyettesítésben igen, a rezolválásban nem vesz részt) cáfolati gráffal azonos szerkezetű bizonyítási gráfot hozunk létre a bizonyítási gráf gyökérelemében találjuk a választ

VÁLASZADÁS REZOLÚCIÓVAL Ha a válaszban Skolem konstans vagy Skolem függvény van ?? A1: Minden x, y és z személyre, ha x szülője y-nak és y szülője z-nek, akkor x nagyszülője z-nek. A2: Mindenkinek van szülője. A3: Van-e olyan x és z személy, hogy x nagyszülője z-nek? F1: x y z (S(x,y)  S(y,z))  N(x,z) K1: S(x,y)  S(y,z)  N(x,z) F2: x y S(y,x) K2: S(g(w),w) F3: x z N(x,z) K3: N(u, v) N(u, v)  N(u, v) S(x, y)  S(y, z)  N(x, z) S(u, y)  S(y, v)  N(u, v) S(g(w), w) S(u, g(v))  N(u, v) S(g(w), w) NIL  N(g(g(v)), v)

VÁLASZADÁS REZOLÚCIÓVAL Ha univerzálisan kötött változók a célállításban: negáció során -ból  lesz (Skolem konstans vagy Skolem függvény a válaszban) A1: Mindenki gyermeke szülőjének. A2: Ha x gyermeke y-nak, akkor y szülője x-nek. A3: Ki egy tetszőleges x-nek a szülője? F1: x G(x, s(x)) K1: G(x, s(x)) F2: x y G(x, y)  S(y, x) K2: G(z, y)  S(y, z) F3: x y S(y, x) K3: S(u, a) a: Skolem konstans S(u, a)  S(u, a) G(z, y)  S(y, z) G(a, u)  S(u, a) G(x, s(x)) NIL  S(s(a), a)

VÁLASZADÁS REZOLÚCIÓVAL F1: P(z, u, z)  P(a, u, u) F2: x z y P(x, z, y) K1: P(z, u, z)  P(a, u, u) K2: P(x, g(x), y) g: Skolem függvény (változóval helyettesíthető, de az egyesítés során ez nem helyettesíthető) P(x, w, y)  P(x, w, y) P(z, u, z)  P(a, u, u) P(z, w, z)  P(a, w, w) NIL  P(z, w, z)  P(a, w, w)

REZOLÚCIÓS STRATÉGIÁK

REZOLÚCIÓ HATÉKONYSÁGÁNAK NÖVELÉSE a rezolúció nemdeterminisztikus stratégiák a bizonyítás irányába történő kereséshez K1: P(x)  Q(x) K2: R(y)  Q(y) K3: R(a) K4: U(a) K5: U(z)  P(z) cáfolati gráf üres klóz egy levezetése része a teljes rezolúciós gráfnak NIL R(a) R(a) U(z)  P(z) U(a) P(a) P(x)  Q(x) Q(a) R(y)  Q(y)

REZOLÚCIÓ HATÉKONYSÁGÁNAK NÖVELÉSE U(a) U(z)  P(z) P(x)  Q(x) R(y)  Q(y) R(a) P(a) U(z)  Q(z) P(y)  R(y) Q(a) Q(a) R(a) Q(a) U(z)R(z) U(z)R(z) P(a) U(a) . . . NIL . . . R(a) . . . NIL . . . teljes rezolúciós gráf részlete teljes rezolúciós gráf: kiindulási klózhalmaz elemei + minden lehetséges rezolvens klóz véges vagy végtelen üres klóz többször lehet

REZOLÚCIÓ HATÉKONYSÁGÁNAK NÖVELÉSE rezolúció algoritmusa nemdeterminisztikus melyik két klózt rezolváljuk kiválasztott klózpárban több illeszthető komplemens literálpár esetén melyiket rezolváljuk milyen egyesítési listát használjunk rezolúciós stratégia korlátozza a rezolvensképzésre választható klózpárok halmazát és/vagy szabályozza a rezolvensképzés sorrendjét

REZOLÚCIÓ SZÉLESSÉGI KERESÉSSEL 1. szintű rezolvensek (kiindulási klózhalmaz rezolvensei) 2. szintű rezolvensek (kiindulási klózhalmaz + 1. szintű rezolvensek rezolvensei) . . . szabályozza a rezolvensképzés sorrendjét legrövidebb cáfolati gráfok egyike teljes memóriaigény!

TÁMOGATÓ HALMAZ STRATÉGIA támogató halmaz: a bizonyítandó célállítás negáltjából származó klózok és ezek leszármazottai korlátozza a rezolvensképzésre választható klózpárok halmazát teljes U(z)  P(z) U(a) P(x)  Q(x) R(y)  Q(y) R(a) P(a) U(z)  Q(z) Q(a) U(z)R(z) Q(a) R(a) U(a) R(a) R(a) NIL

LINEÁRIS INPUT STRATÉGIA korlátozó feltétel: a rezolvensképzésben részt vevő klózok legalább egyike a kiinduló klózhalmazból való U(a) U(z)  P(z) P(x)  Q(x) R(y)  Q(y) R(a) P(a) U(z)  Q(z) P(y)  R(y) Q(a) Q(a) Q(a) U(z)R(z) U(z)R(z) P(a) R(a) R(a) U(a) U(a) NIL

LINEÁRIS INPUT STRATÉGIA nem teljes K1: Q(x)  P(x) K2: Q(y)  P(y) K3: Q(z)  P(z) K4: Q(w)  P(a) Prolog (Horn klózok körében teljes)

ŐSRE KORLÁTOZOTT STRATÉGIA korlátozó feltétel: a rezolvensképzésben részt vevő egyik klóz a kiinduló klózhalmazból való vagy a másik klóz egy őse (lineáris input stratégia "gyengített" változata) teljes NIL Q(x)  P(x) Q(w)  P(a) Q(y)  P(y) Q(z)  P(z) () P(x) Q(y) P(a)

egységklóz: egy literálból áll EGYSÉGKLÓZ STRATÉGIA egységklóz: egy literálból áll a rezolvensképzésben előnyben részesíti az egységklózt (legalább az egyik szülő egységklóz) rövidebb rezolvens klóz – legalább egy literállal csökkenti a másik szülő klóz hosszát a ...  a  ... ...  a  ... a

EGYSÉGKLÓZ STRATÉGIA nem teljes U(a) U(z)  P(z) P(x)  Q(x) R(y)  Q(y) R(a) P(a) Q(a) Q(a) P(a) NIL U(a) R(a) NIL NIL nem teljes javítás: mélységi korlátig egységklóz stratégia mélységi korlát után más stratégiára áttérés mélységi korlát??

EGYSZERŰSÍTŐ STRATÉGIÁK klózhalmaz méretének csökkentése: klózok elhagyása a klózhalmazból literálok elhagyása a klózból ha az eredeti klózhalmaz kielégíthetetlen volt, egyszerűsítés után is kielégíthetetlen marad Tautológiák elhagyása p(x)  b(y)  b(y) p(f(x))  q(y)  p(f(x)) p(x)  p(y) !!

EGYSZERŰSÍTŐ STRATÉGIÁK Befoglaló klózok elhagyása D a C befoglaló klóza, ha létezik  helyettesítés úgy, hogy C| része D-nek. p(x) p(y)  q(z) p(x) p(a) p(x)  q(a) p(f(a))  q(a)  r(y) p(x) p(x)  p(f(x)) befoglaló klózok Idegen literált tartalmazó klózok elhagyása idegen literál: nem lehet rezolválni . . .  a  . . . . . .  a  . . . nincs az adatbázisban klóz törlése  új törlések

REZOLÚCIÓ - PÉLDA V-t meggyilkolták gyanúsítottak: X, Y, Z X: "ártatlan vagyok" ártatlan(X)  ártatlan(X) "Y barátja V-nek" ártatlan(X)  barát(Y, V) (1) "Z gyűlölte V-t" ártatlan(X)  szereti(Z, V) (2) Y: "nem voltam a városban" ártatlan(Y)  városban(Y) (3) "nem ismerem V-t" ártatlan(Y)  ismeri(Y, V) (4) Z: "ártatlan vagyok„ ártatlan(Z)  ártatlan(Z) "X és Y V-vel volt" ártatlan(Z)  vele(X, V) (5) ártatlan(Z)  vele(Y, V) (6)

REZOLÚCIÓ - PÉLDA "V-t a városban ölték meg" vele(gy, V)  városban(gy) (7) "barát  ismeri" barát(i, j)  ismeri(i, j) (8) "szereti  ismeri" szereti(i, j)  ismeri(i, j) (9) mindenki igazat mond a gyilkos hazudhat ártatlan(X)  ártatlan(Y) (10) ártatlan(X)  ártatlan(Z) (11) ártatlan(Y)  ártatlan(Z) (12) Kérdés: ártatlan(gy) ártatlan(gy)  ártatlan(gy) (13)

REZOLÚCIÓ - PÉLDA á(X)  b(Y,V) b(i, j)  i(i,j) á(Z)  ve(Y,V) ve(gy,V)  vá(gy) á(X)  i(Y,V) á(Y)  i(Y,V) á(Z)  vá(Y) á(Y)  vá(Y) á(X)  á(Y) á(X)  á(Z) á(Z)  á(Y) á(Y)  á(Z) á(Y) á(gy)á(gy) NIL á(Y)