1 / 27

MI 2003/7 - 1

MI 2003/7 - 1. Az egyesítési algoritmus Minden kapitalista kizsákmányoló. Mr. Smith kapitalista. Mr. Smith kizsákmányoló. MI 2003/7 - 2. Formálisan A1.  x (Kap( x )  Kizs( x )) A2. Kap(Mr. Smith) B. Kizs(Mr. Smith) x /Mr. Smith helyettesítés (illesztés). MI 2003/7 - 3.

travis
Download Presentation

MI 2003/7 - 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MI 2003/7 - 1 • Az egyesítési algoritmus Minden kapitalista kizsákmányoló. Mr. Smith kapitalista. Mr. Smith kizsákmányoló.

  2. MI 2003/7 - 2 • Formálisan A1. x (Kap(x)  Kizs(x)) A2. Kap(Mr. Smith) B. Kizs(Mr. Smith) • x/Mr. Smith helyettesítés (illesztés)

  3. MI 2003/7 - 3 • Az  = {1/t1, …, n/tn} halmazt helyettesítésnek nevezzük, ha 1, …, n egymástól különböző változók, t1, …, tn termek és ti  i(1  i  n). Vigyázat, kvantorok jelenléte esetén a hatáskörökre is tekintettel kell lenni - megengedett helyettesítés

  4. MI 2003/7 - 4 • Legyen  = {1/t1, …, n/tn} egy helyettesítés, A egy logikai formula. Az A formulát az A egy példányának nevezzük, és úgy képezzük, hogy az A-ban a 1, …, n változók minden előfordulását egyidejűleg rendre t1, …, tn-nel helyettesítjűk. • Példa: A = P(x,f(x),y),  = {x/y, y/g(a)}

  5. MI 2003/7 - 5 • Helyettesítések kompozíciója Az  = {x1/t1, …, xn/tn} és  = {y1/v1, …, ym/vm} helyettesítések  kompozícióját úgy kapjuk, hogy az {x1/t1, …, xn/tn, y1/v1, …, ym/vm} halmazból töröljük mindazokat a xi/ti elemeket, amelyekre xi=ti, és azokat az yj/vjelemeket,amelyekreyi megegyezik az x1, …, xn valamelyikével. Példa:  = {x/f(y), y/z},  = {x/a, y/b, z/y}

  6. MI 2003/7 - 6 • Az A1, A2, …, An formulák egyesíthetők, ha van olyan  helyettesítés, amelyre A1 = A2 = …= An. Az A1, A2, …, Anlegáltalánosabb egyesítőjének nevezünk egy  egyesítő helyettesítést, ha bármely  egyesítő előállítható -ból egy alkalmas he-lyettesítéssel: -hoz van olyan ’, hogy  = ’ (nevektől eltekintve egyértelmű).

  7. MI 2003/7 - 7 • Az A1, A2, …, An formulák különbségi halmazát úgy kapjuk meg, hogy először meghatározzuk balról jobbra az első olyan pozíciót, amelyen nem egyezik meg az összes A1, A2, …, An formula, majd vesszük az összes különböző részformulát, amelyek ezen a pozíción kezdődnek. Példa: P(x,g(f(y,z),x), P(x,g(a,g(y,z))), P(x,g(a,b)) {f(y,z),a}

  8. MI 2003/7 - 8 • A legáltalánosabb egyesítő meghatározása: 1. Legyen kezdetben  az üres helyettesítés. 2. Amíg a formulák nem válnak azonossá, vagy HIBA nincs, addig

  9. MI 2003/7 - 9 a. Képezzük a formulák D különbségi halmazát. b. Ha D-ben van olyan olyan  változó, és t term, hogy nem szerepel t-ben, akkor - a kifejezésekre alkalmazzuk a {/t} helyettesítést, --ra is alkalmazzuk ezt a {/t} helyettesítést, különben HIBA.

  10. MI 2003/7 - 10 • Példa: A1 = Q(f(a),g(x)), A2 = Q(y,y) HIBA • Példa: A1 = P(x,u,f(g(x))), A2 = P(a,y,f(y)) Eredmény: P(a,g(a),f(g(a)))

  11. MI 2003/7 - 11 • A rezolúció (alapelv változatlan): 1. Az A1, A2, …, An, B formulákat hozzuk klózformára (kiindulási klózhalmaz). 2. Amíg az üres klózhalmaz nem eleme a klózhalmaznak, a következő lépések: a. Válasszunk két rezolválható klózt, b. Képezzük a két klóz rezolvensét, c. Adjuk a rezolvens klózt a halmazhoz.

  12. MI 2003/7 - 12 • Lényeges különbség a rezolválhatóság megállapításánál és a rezolvensnél (egyesítés)!!! • Egy klózban egy literál többször is előfordulhat. A C1 és C2 klózokat akkor mondjuk rezolválhatónak, ha található bennük olyan komplemens literálpár (pl. C1-ben P, C2-ben P), hogy a klózokat

  13. MI 2003/7 - 13 C1= P(t11, …, t1n)...  P(tr1, …, trn)  C1’ C2= P(u11, …, u1n)...  P(us1, …, usn)  C2’ alakba írva, a P(t11, …, t1n),…,P(tr1, …, trn), P(u11, …, u1n), …, P(us1, …, usn) formulák egyesíthetők. Ha  a legáltalánosabb egyesítő, akkor a rezolvens: mindkét klózból elhagyjuk az egyesítésben résztvevő literálokat, a megmaradókat pedig a  alkalmazása után diszjunkcióval kapcsoljuk. 

  14. MI 2003/7 - 14 • A rezolvens tehát: C1’  C2’ • Példa: C1 = P(x1,a)  P(x1, y1)  P(y1, x1) C2 = P(x2,f(x2))  P(x2,a)

  15. MI 2003/7 - 15 • A rezolúciós algoritmus nemdeterminisztikus: - Melyik két klózt rezolváljuk? - Két klózban több komplemens literálpár szerepelhet, melyiket? - Két klóznak több rezolvense is lehet (C1’és C2’ is tartalmazhatja P-t) • Parciálisan eldönthető • Rövidítések (tiszta változó, tautológia…)

  16. MI 2003/7 - 16 • Gyakran kérdésekre kell választ adni, pl.: - Van-e olyan puli, amelyik nem harap? - Ki Péter barátnője? - Melyik folyó mellett van Olaszország fővárosa? - Milyen mozgássorozat oldja meg a Hanoi tornyai problémát?

  17. MI 2003/7 - 17 • Kérdés-felelet probléma. Általános megoldás: egy olyan x elem meghatározása a cél, amelyik kielégít egy bizonyos B(x) állítást. A kérdésből ekkor egy xB(x) bizonyítandó állítást képezünk, és megpróbáljuk belátni, hogy ez következménye az axiómáknak.

  18. MI 2003/7 - 18 • Ha ez sikerült, akkor a rezolúció során alkalmazott egyesítő helyettesítésekből megkapható a keresett elem. Néha nehéz. Jobb: válaszadó eljárás. Itt a célállítás negáltjából származó klózokat kiegészítjük saját negáltjukkal, és így követjük végig az eredeti rezolóciót - a gyökérben megkapjuk a keresett elemet.

  19. MI 2003/7 - 19 • Példa Ha Leona mindenhova követi Jánost, és János a tanyán van, akkor hol van Leona? H(y,x): y az x helyen van (predikátum) 1. x(H(János,x)H(Leona,x)) 2. H(János,tanya) Kérdés: xH(Leona,x)

  20. MI 2003/7 - 20 • Példa Ha x szülője y-nak, és y szülője z-nek, akkor x nagyszülője z-nek. Mindenkinek van szülője. Kérdés: van-e olyan x és z személy, hogy x nagyszülője z-nek? 1. xyz ((S(x,y)S(y,z)N(x,z)) 2. yxS(x,y) 3. xzN(x,z)

  21. MI 2003/7 - 21 • Elsőrendű predikátumkalkulus alkalmazása: PROLOG nyelv. Logikai program elemei: P1.  P2. 12...n , n  1 alakú állítások, valamint P3. ? 12...  m , m  1 alakú kérdés, ahol , 1,2, ...n, , 1, 2,...m nemnegált atomi formulák, P1 és P2 változói univerzálisan, P3 változói egzisztenciális kvantáltak. P1, P2 az axiómák, P3 a bizonyítandó állítás.

  22. MI 2003/7 - 22 • Példa: 1. Az A tárgy kisebb, mint a B tárgy. 2. A Btárgy kisebb, mint a C tárgy. 3. Az A a C mögött van. 4. Ha az x tárgy kisebb, mint az y tárgy, és x takarva van y-nal, akkor x láthatatlan. 5. Ha az u tárgy a v tárgy mögött van, akkor u takarva van v-vel. 6. Van láthatatlan tárgy?

  23. MI 2003/7 - 23 • Logikai program “futása” (interpretálása): • Adott a célok egy 1, 2, ... , m listája, ezeket egyesével megpróbáljuk levezetni a P1 és P2 premisszák segítségével.

  24. MI 2003/7 - 24 • Definíció. Horn-klóz: legfeljebb egy pozitív literál (nem-negált). Lehetséges alakjai: H1.  12...  n , n 0, H2. 12...  m , m 1, ahol , i, jpozitív literálok. • Itt H1 n 1-re P2-vel, n= 0 -ra P1-el, H2 pedig P3 negáltjával ekvivalens.

  25. MI 2003/7 - 25

  26. MI 2003/7 - 26

  27. MI 2003/7 - 27

More Related