Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

LOGIKA (LOGIC).

Hasonló előadás


Az előadások a következő témára: "LOGIKA (LOGIC)."— Előadás másolata:

1 LOGIKA (LOGIC)

2 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

3 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

4 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)

5 ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)

6 Í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

7 Í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

8 Í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

9 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

10 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

11 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

12 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

13 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

14 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

15 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

16 LOGIKAI KÖVETKEZMÉNY Logikai következmény fogalmának értelmezése az érvényesség fogalmával: A1 , , An W iff (A1   An)  W érvényes. Logikai következmény fogalmának értelmezése a kielégíthetetlenség fogalmával: A1 , , An W iff A1   An W kielégíthetetlen. Elnevezések: (A1   An)  W tétel A1   An tétel axiómái, feltételei W következmény, konklúzió

17 TÉTELBIZONYÍTÁS IGAZSÁGTÁBLÁVAL
F1: p  q F2: q F3: p ?: F1  F 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

18 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

19 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.

20 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

21 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

22 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

23 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)

24 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.)

25 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 C 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!

26 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

27 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.

28 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)

29 PREDIKÁTUMKALKULUS (ELSŐRENDŰ LOGIKA)

30 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

31 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, . . .

32 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

33 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)]

34 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)]

35 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)]

36 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,

37 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???

38 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)

39 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

40 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

41 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))

42 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)

43 NORMÁLFORMÁRA HOZÁS prenex formára hozás csak -k maradtak (a változókat standardizáltuk)  kiemelése x 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)

44 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

45 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

46 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

47 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) a1  ...  am  b1  ...  bk c1  ...  cn  d1  ...  dl ahol dj = ai [a1 ...  ai ...  am  c1 ...  cn  b1...  bk d1 ...  dj ...  dl]

48 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)

49 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)

50 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)


Letölteni ppt "LOGIKA (LOGIC)."

Hasonló előadás


Google Hirdetések