420 likes | 628 Views
LOGIKA 7. Előadás. Kocsisné Dr. Szilágyi Gyöngyi. Elérehetőség : aszt.inf.elte.hu /~szilagyi / szilagyi@ aszt.inf.elte.hu Fogadó óra: hétfő 10-12 2.620 szoba Jegyzet: Pásztorné Varga Katalin, Várterész Magda: A MATEMATIKAI LOGIKA ALKALMAZÁSSZEMLÉLETŰ TÁRGYALÁSA
E N D
LOGIKA 7. Előadás Kocsisné Dr. Szilágyi Gyöngyi
Elérehetőség: • aszt.inf.elte.hu/~szilagyi/ • szilagyi@aszt.inf.elte.hu Fogadó óra: hétfő 10-12 2.620 szoba Jegyzet: Pásztorné Varga Katalin, Várterész Magda: A MATEMATIKAI LOGIKA ALKALMAZÁSSZEMLÉLETŰ TÁRGYALÁSA http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_a_matematikai_logika_alkalmazasszemleletu_targyalasa/adatok.html TECHNIKAI ADATOK
Bevezetés A 0. rendű logika (Itéletkalkulus) • Szintaxis • Szemantika • 0. rendű logikai törvények (kielégíthető, kielégíthetetlen, azonosan igaz) • Szemantikus következmény • Normálformák • Automatikus tételbizonyítás (szemantikus, szintaktikus) Az 1. rendű logika (Predikátumkalkulus) • Szintaxis • Szemantika • 1. rendű logikai törvények (kielégíthető, kielégíthetetlen, azonosan igaz) • Szemantikus következmény • Szintaktikus megközelítés ( Rezolúció) TEMATIKA
Az 1. rendű logika (Predikátumkalkulus) • Szintaxis • abc, term, formula, szintaktikai definíció, • egyértelmű elemzés, szerkezeti indukció és rekurzió • Műveletek hatásköre, változó előfordulás-változó-formula minősítése • Logikai összettetség • Alapkifejezés, prímformula, prímkomponens • Változó átnevezés, Termhelyettesítés • Szemantika • Interpretáció (abc elemei: logikán kívüli rész) • változó kiértékelés( ) • L-értékelés (term és formula) • Term és formula értéktáblája • Quine-féle táblázat • Kielégíthetőség: kielégíthető, kielégíthetetlen, logikailag igaz, tautológia • 1. rendű logikai törvények • Szemantikus következmény • Szintaktikus megközelítés ( Rezolúció) TEMATIKA
NYELV = ABC + SZINTAXIS + SZEMANTIKA Abc Logikai rész: • , , , , , , • Indivídum változók (X, Y, …) – megszámlálhatóan végtelen, adott fajtájúak • Elválasztó jelek („(„ „)”) • (ítélet változók) Logikán kívüli rész: • Függvény, predikátum és konstans szimbólumok • Elemfajták halmaza Abc
A nyelv ábécéjének értelmezése (interpretációja - modellezése). • Az ítéletlogika ábécéjében csak az ítéletváltozókat kell interpretálni. • Az ítéletváltozók befutják az állítások halmazát. • Ha megmondjuk melyik ítéletváltozó melyik állítást jelenti, akkor a változó igazságértékét megadtuk. • Ennek rögzítését interpretációnak nevezzük: Emlékeztető: Formula • minden ítéletváltozó ( Vv) JFF • ha AJFF akkor AJFF • ha A,BJFF akkor (A○B)JFF minden formula előáll az előző három eset véges sokszori alkalmazásával. Egyszerű állításÖsszetett állítás interpretáció Boole-értékelés { i , h } { i , h } Formula jelentése mindig igazságérték! SZEMANTIKA: Zérusrendben
1. Interpretáció (I) + 2. változó kiértékelés ( ) + 3. L-értékelés (I + -n alapuló) Szemantika: 1 rendben
Nyelv szignaturája: <P1, P2, …, Pn; F1, F2, …, Fk; m1,…, mn;mn+1…, mn+k , k1, k2, …, kq> I Struktúra szignaturája: <U, R1, R2, …, Rn; M1, M2, …, Mk;m1,…, mn; mn+1…, mn+k c1, c2, …, cq> x,y, ... Individum változók A formalizált egyyfajtájúnyelv szignaturájaés a matematikai struktúra szignaturájaközötti kapcsolat. 1. Interpretáció : szignaturák
1. Interpretáció (I) + 2. változó kiértékelés ( ) + 3. L-értékelés (I + -n alapuló) Szemantika: 1 rendben
Definíció: : változó kiértékelés( ) : VU, ahol V: indivíduum változók halmaza, U: univerzum |x|I, jelöli: az U univerzumbeli (x) individuumot V U u2 x 2. Változó kiértékelés: indivíduum változók u1 y
1. Interpretáció (I) + 2. változó kiértékelés ( ) + 3. L-értékelés (I + -n alapuló) Szemantika: 1 rendben
A L-értékelés Egy olyan leképezés, amely egy formulához hozzárendeli annak jelentését: {i,h}. A formula valamely L(Vv) = <Tp, Pr , Fn, Kn, > formalizált nyelven íródott 1. lépés. Választunk egy S = <U, R, M, C> matematikai struktúrát, amelynek a típusa megegyezik az L nyelv típusával 2. lépés. a logikán kívüli szimbólumokat a megfelelő relációkkal illetve műveletekkel azonosítjuk (I) 3. lépés. Kiértékeljük a formulában szereplő termeket, a nem kötött változóinak az összes lehetséges változókiértékelése mellett 4. lépés. Kiértékeljük a formulát a nem kötött változóinak az összes lehetséges változókiértékelése mellett L-értékelés: Informális (I, )
Definíció: Termek = I, L-értékelése 1. xsindividuumváltozó: |xs|I, a (x)U ( egy változókiértékelés) c konstansszimbólum: |c|I, az U-beli cI elem. 2. |f(t1, t2, ..., tn)| I, = fI (|t1| I, , |t2| I, , ..., |tn|I, ) L-értékelés (term)
Példa: logikai nyelvstruktúra nyelve I: L= (=, P1, P2 ; a, b, f1, f2) S= N ( =, <, > ; 0, 1, +, * ) (2, 2, 2 ; 0, 0, 2, 2 ) (2, 2, 2 ; 0, 0, 2, 2 ) • = I, Term interpretációja: t = (f1(x, f2(x,y))) = f1 (x, f2 (x,y)) = + ( x, * (x ,y)) = x+ x*y L-értékelés (Példa: term)
Definíció: Formulák =I,L-értékelése 1. |P(t1, t2, ..., tn))|I,= i, ha (|t1|I, , |t2|I, , ..., |tn|I,)PI , ahol PI jelöli a PI relációigazhalmazát. 2. |A|I, =|A|I, |AB|I, = |A|I, |B|I, |AB|I, = |A|I, |B|I, |AB|I, = |A|I, |B|I, 3. |xA|I,= i, ha |A|I,*= i minden * x variánsára |xA|I, = i, ha |A|I,*= i legalább egy * x variánsára (A a formula törzse/mátrixa) L-értékelés (formula)
Példa: Kvantormentes formula interpretációja: =I, • (P1(t, f1(y, f2(x,y))))= P1 (t, (f1(y, f2(x,y))) )= • P1 (t, f1 (y, f2 (x,y)))= • < (+ (x,* (x,y)),+(y,*(x,y)) = • < ( x+ x*y, y+ x*y) = • (x+ x*y)<( y+ x*y) L-értékelés (kvantormentes formula)
Egzisztenciális formula interpretálása: =I, • (x P1(a, f1(x,x))) =i, ha (P1(a, f1(x,x))) (x/u)=i legalább egy uU • ebben az interpretációban, ha 0<(x+x) = i legalább egy uN • Mivel az x=1-re a formula törzse i, ezért a x(0<(x+x)) formula is i. • Univerzális formula interpretálása: =I, (xP1(a, f1(b,x))) = i, ha (P1(a, f1(b,x))) (x/u)=i minden uU Mivel minden egészre a formula törzse i, ezért a x(0<(1+x)) formula értéke i. L-értékelés (kvantált formula)
Egy 1. rendű formula primformulái • az atomi formulák ( p(t1, ..., tn) ) és a • kvantált formulák Egy 1. rendű formula primkomponenseia formula azon primformulái, amelyekből a formula logikai összekötőjelek segítségével épül fel. Példa: P(X) prímformula, de csak akkor prímkomponens, ha magában szerepel a formulában: P(X) Q(X) -ben: P(X) prímkomponens is xP(x) Q(X) -ben: P(X) nem prímkomponens, csak prímformula Az igazságtáblában (0. rendű logika) az első sorba az állításváltozók (ezek a formula prímkomponensei) és a formula kerülnek. A változók alá igazságértékeiket írjuk. A formula alatt a megfelelő helyettesítési értékek találhatók. Term és formula értéktáblája: Ismétlés
Egy 1. rendű formula értéktáblájábanaz első sorba • a szabad indivíduumváltozók • a primkomponensek és a • formula kerülne. Mivel a primformulák több esetben paraméteres állítások, ezért az interpretációban az indivíduum változók kiértékelése után válnak állításokká. Ezért az értéktábla első sorába még a formulában lévő indivíduum változókat is felsoroljuk a primformulák elé. • Az indivíduum változók alá azok lehetséges kiértékelései kerülnek • Aprimformulák alá a megfelelő helyettesítési értékek kerülnek • A formula alatt a prímformulák értékeinek megfelelő helyettesítési értékek találhatók. Term és formula értéktáblája
ADOTT INTERPRETÁCIÓBAN EGY ADOTT VÁLTOZÓKIÉRTÉKELÉS ESETÉN NÉZI A FORMULA ÉRTÉKÉT Példa A formulaxP(x)yQ(w,y)P(v)zQ(w,z) A primkomponensek: xP(x), y(Q(w,y), P(v), zQ(w,z)). A szabad indivíduumváltozók: v, w. Legyen az interpretáló struktúra: U={1, 2, 3}, P={1,3} Q={(1,2),(1,3), (2,1), (2,2), 2,3)}, Ekkor (xP(x)) = h, a többiek paraméteres állítások Az értéktábla: Term és formula értéktáblája
A PRIMKOMPONENSEK ÖSSZES LEHETSÉGES ÉRTÉKÉT NÉZI Példa A formulaxP(x)yQ(w,y)P(v)zQ(w,z) A primkomponensek: xP(x), y(Q(w,y), P(v), zQ(w,z)). A Quine tábla: Formula Quine táblája
Definíció: Kielégíthetőség Definíció: Kielégíthetetlenség Azt mondjuk, hogy G formula, illetve F formulahalmaz kielégíthetetlen (nem kielégíthető),ha L-hez nincs olyan I interpretáció, hogy I= G illetve, hogy I= F. • Más szóval egy G formula kielégíthetetlen ha minden interpretációban a G értéktáblájának minden sorában G helyettesítési értéke h(amis). • Az F formulahalmaz kielégíthetetlen, ha az F közös érték táblájában minden sorban van legalább egy eleme F-nek, amelynek a helyettesítési értéke h(amis). Kielégíthetőség
Definíció: Logikailag igaz formula Logikailag igaz formula
Definíció: Tautológia Azt mondjuk, hogy egy G formula tautológia, ha G Quine táblájában a prímkomponensekhez rendelhető összes lehetséges igazságérték hozzárendelés esetén a formula helyettesítési értéke i. Jelölés: =0A TÉTEL: Definíció: Logikai ekvivalencia Az A és B elsőrendű formulák logikailag ekvivalensek ha A=B és B=A. Tautológia, Logikailag igaz
DEFINICIÓ: Logikai vagy szemantikus következmény Azt mondjuk, hogy a G formula logikai (szemantikus) következménye az Fformulahalmaznak, ha minden olyan I interpretációra amelyre I= F a I= G is fennáll. Jelölés: F= G. TÉTEL F-nek szemantikus következménye G, akkor és csak akkor, ha az F {G} kielégíthetetlen Eldöntésprobléma: tetszőleges 1.rendű formulahalmazról eldönteni, hogy kielégíthetetlen-e Eldöntésprobléma
1. ÉRTÉKTÁBLÁVAL F= G, ha minden olyan interpretáló struktúrában, ahol az F, G közös értéktáblájában minden olyan sorban, ahol az F elemeinek helyettesítési értéke i(gaz), a G helyettesítési értéke is i(gaz). 2. REZOLÚCIÓVAL F {G} kielégíthetetlenségének bizonyításával. Eldöntésprobléma megoldás
Az F1F2...FnG elsőrendű formulát logikailag ekvivalens módon át kell írni elsőrendű klózok konjunkciójává. Elsőrendű klóz: xy(P(x)Q(x,f(y)) kifejtése U={a,b,c} felett alapklózok konjunkciójává: (P(a)Q(a,f(a)) (P(a)Q(a,f(b)) (P(a)Q(a,f(c)) (P(b)Q(b,f(a)) (P(b)Q(b,f(b)) (P(b)Q(b,f(c)) (P(c)Q(b,f(a)) (P(c)Q(b,f(b)) (P(c)Q(b,f(c)) Lépések: 1. Prenex alakra hozás 2. Skolem alakra hozás 3. Klózokra bontás (K: Klózhalmaz) 4. A Herbrand univerzum és Bázis: a klózhalmazalapelőfordulásainak generálása 5. Herbrand tétele alapján pontosan akkor vezethető le az üres klóz, ha K kielégíthetetlen 6. Az alaprezolúció segítségével az üres klóz levezetése Alaprezolúció
Definíció: Prenex formula Egy B=Q1x1Q2x2…QsxsA formulát prenex formulának nevezünk, ha az A formula kvantormentes. A formula Q1x1Q2x2…Qsxs részét a formula prefixumának, az A részét a formula magjának vagy mátrixának nevezik. Prenex-konjunktívnormálformájú illetve prenex-diszjunktív normálformájú egy prenex formula, ha a magja KNF illetve DNF. • Megmutatjuk, hogy tetszőleges elsőrendű formula átalakítható prenex formulává. • Ehhez megadunk néhány, a kvantorokra vonatkozó azonosságot, • majd egy algoritmust, amely biztosítja tetszőleges formula prenex formulává alakítását az említett azonos átalakítások felhasználásával. 1. Prenex alakra hozás
Általános De Morgan – szabályok: 1. ¬xA=x¬A 2. ¬xA=x¬A Kvantorkiemelésiszabályok: (A[x] jelentése, x szerepel A-ban) 1. xA[x]˄B=x(A[x]˄B), 2. xA[x]˅B=x(A[x]˅B) 3. xA[x]˄B=x(A[x]˄B), 4. xA[x]˅B=x(A[x]˅B) 5. xA[x]˄xB[x]=x(A[x]˄B[x]), a ˅ műveletre nem áll fenn. 6. xA[x]˅xB[x]=x(A[x]˅B[x]), az ˄ műveletre nem áll fenn. 7. Q1xA[x]˄Q2xB[x]=Q1xQ2y(A[x]˄B[x/y]) y nem szerepelt 8. Q1xA[x]˅Q2xB[x]=Q1xQ2y(A[x]˅B[x/y]) a formulában 1. Prenex alakra hozás
Algoritmustetszőleges formula prenex alakra való átírására • A formulában szereplő logikai összekötőjelek átírása ¬, ˄, ˅ logikai műveletekre. • A De Morgan- és az általános De Morgan- szabályok alkalmazása addig, amíg a ¬ hatásköre minden esetben atomi formula nem lesz. • A kvantorkiemelési szabályok alkalmazása addig, amíg az összes kvantor a formula elé nem kerül. 1. Prenex alakra hozás
Definíció: Skolem – formulának Egy prenex formulát Skolem – formulának nevezünk, ha a prefixumában csak univerzális kvantorok szerepelnek és a formula magja konjunktív normálformájú. Megjegyzés: Egy olyan prenex formulához amelyben Qj a legkisebb indexű egzisztenciális kvantor, vagyis a formula alakja x1...xj-1xjQj+1xj+1…QnxnA=x1…xj-1xjB, konstruálhatunk egy olyan f(x1,x2,…,xj-1) függvényt, amely az interpretáló struktúrában az (x1,x2,…,xj-1) változók által felvett minden értékkombinációhoz hozzárendel egy értéket azok közül, amelyeket az xj helyébe helyettesítve a B igaz lesz. Ezt a függvényt Skolem függvénynek nevezzük. 2. Skolem alakra hozás
Megadunk egy algoritmust, amellyel tetszőleges prenex formulához meg lehet konstruálni egy vele logikailag ekvivalens Skolem-formulát. AlgoritmusSkolem-formula előállítására. • A prenex formula legyen Q1x1Q2x2…QsxsA. • Megkeressük az első egzisztenciális kvantort. • Ha ilyen nincs, akkor a formula Skolem-formula. Az algoritmus befejeződik. • Legyen az első egzisztenciális kvantor az j-edik. Válasszunk egy olyan f függvényszimbólumot, amely nem szerepel a nyelvben és jelöljük f(x1,x2,…,xj-1)-el a Skolem függvényt. Az új formulát úgy kapjuk meg, hogy elhagyjuk a xjkvantort és a B-ben elvégezzük az (xj/f(x1,x2,…,xj-1)) helyettesítést. • A kapott formulával következik az 1. lépés. Tétel: Legyen B prenex formula és BSN a B alapján előállított Skolem-formula. A B formula logikailag ekvivalens a BSN formulával. 2. Skolem alakra hozás
Mivel a Skolem forma magja KNF, ezért könnyen klózokra bontható az ˄ műveletek mentés történő szétvágás segítségével Példa. A formula: xyz((P(x,y)→¬P(y,x))˄(P(x,z)˅P(z,y))) – átírás ¬, ˄, ˅-ra xyz((¬P(x,y)˅¬P(y,x))˄(P(x,z)˅P(z,y))) – prenex-konjunktív forma Skolem-formába való átírása. z-re Skolem függvény bevezetése: xy((¬P(x,y)˅¬P(y,x)) ˄ (P(x,f(x,y))˅P(f(x,y),y)))) A kapott elsőrendű klózhalmaz: K={¬P(x,y)˅¬P(y,x) , P(x,f(x,y))˅P(f(x,y),y)} 3. Klózókra bontás
Egy adott, elsőrendű klózhalmazhoz egyértelműen hozzárendelhető univerzum konstrukciója J. Herbrand nevéhez fűződik Definíció: Herbrand-univerzum • Legyen K egy elsőrendű klózhalmaz. • Legyen H a K-ban szereplő konstansok halmaza. • Ha K-ban nincs konstans, akkor H={a}, ahol az a egy fiktív konstans. • Legyen i=0,1,…-re H=HF, ahol F az összes olyan f(t,t,...,t) termek halmaza, amelyekre az f függvényszimbólum szerepel K-ban és tjHi, (j=1,2,...,n). Hi-ta K i-edrendűkonstansai halmazának, a H-t a K Herbrand-univerzumának nevezzük. Megjegyzés: A definícióból következik, hogy H legfeljebb megszámlálható számosságú lehet. 4. Herbrand Univerzum
Példa 1. K={P(x)˅Q(x), R(y), T(z)˅Q(z)} H0={a}, mivel K-ban nincs konstans. H0=H1=...=H={a}, H véges számosságú, mivel K-ban nincs függvényszimbólum. Példa 2. K={P(a), P(x)˅P(f(x))} H0={a}, ahol a K-beli egyetlen konstans az a. H1={a, f(a)} H2={a, f(a), f(f(a))} ... H={a, f(a),f(f(a)),f(f(f(a))), ...} H megszámlálható számoságú. 4. Herbrand Univerzum
Definíció: Herbrand-bázis Legyen K egy elsőrendű klózhalmaz. A K Herbrand-bázisánaknevezzük a K-beli literálokban szereplő atomi formulák H feletti összes alapelőfordulását. Példa. Legyen K={P(x), Q(f(y))˅R(y)} klózhalmaz. K Herbrand-univerzuma: H={a,f(a),f(f(a)),f(f(f(a))),...} K Herbrand-bázisa: {P(a),Q(f(a)),R(a),P(f(a)),Q(f(f(a))),R(f(a)),...}. 4. Herbrand Bázis
TÉTEL: Herbrand-tétel Egy K elsőrendű klózhalmaz akkor és csak akkor kielégíthetetlen, ha a K klózaialapelőfordulásainak van véges kielégíthetetlen K’ részhalmaza. Példa1. Legyen K={P(x), ¬P(f(a))}. A K kielégíthetetlen, mivel K’={P(f(a)), ¬P(f(a))} egy véges kielégíthetetlen részhalmaza K alapklózainak. Példa 2. A K={¬P(x)˅Q(f(x),x), P(g(b)), ¬Q(y,z)} kielégíthetetlen, mert K’={¬P(g(b))˅Q(f(g(b)), g(b)), P(g(b)), ¬Q(f(g(b)), g(b))} egy véges kielégíthetetlen részhalmaza K alapklózainak. Ezek az alapklózok az (x/g(b), y/f(g(b)), z/g(b)) helyettesítéssel álltak elő. 5. Herbrand tétele
A rezolúciós kalkulusra több, a Herbrand-tételeket felhasználó számítógépes implementáció ismert. • Az ítéletlogikai rezolúciós kalkulust, valamint az alapklózhalmazon definiált alaprezolúciós kalkulust egyformán lehet végrehajtani. • Egy elsőrendű K klózhalmazból való rezolúciós levezetés egy olyan véges k1, k2, ..., kn elsőrendű klózsorozat, ahol minden j=1, 2, ..., n-re 1. vagy kj K 2. vagy van olyan 1s,tj, hogy kj a ks, ktklózpár elsőrendű rezolvense. • Az elsőrendű logikában a probléma abban rejlik, hogy a Herbrand univerzum feletti alapatomok célszerű generálási sorrendjére nincs stratégia, és így a műveletszám becslése lehetetlen. • A nulladrendű rezolúciós elvben a rezolvensképzés feltétele az volt, hogy két C1, C2klózban pontosan egy azonos alapú, de ellenkezően negált literál (egy komlemens pár) forduljon elő. • Azokra a klózokra, amelyek nem tartalmaznak változót, a döntés egyszerű. • Azonban a változót tartalmazó klózok esetén a helyzet komplikáltabb. 6. Alaprezolúció
Példa Tekintsük például a következő két klózt: C1=P(x)˅Q(x) C2=¬P(f(y))˅R(y) Látszólag nincs olyan literál C1-ben, amely komplementere lenne a C2 valamelyik literáljának. Ha viszont előállítjuk a Herbrand-univerzum feletti alapelőfordulástokat, akkor az x/f(a), y/a helyettesítések mellett előálló P(f(a))˅Q(f(a)), ¬P(f(a))˅R(a) alapklózokbana P(f(a)), ¬P(f(a)) ilyen komplemens pár. 6. Alaprezolúció
Példa alaprezolúcióra Előállítjuk az első rendű klózok magjainak összes alappéldányát és az alapklózok halmazán ítéletlogikai rezolúcióval levezetjük az üres klózt. Az elsőrendű klózhalmaz: {xy(P(x)Q(x,f(y))), zv(P(g(z))P(v)), uQ(g(u),u)} H univerzum: a, g(a), f(a), g(f(a)), g(g(a)), f(f(a)), f(g(a)), …(A klózhalmaz leíró nyelvének összes alaptermje) Alapklózok: alaprezolúcióaz ítletlogikai megfelelő levezetés 1. Q(g(f(a)), f(a))u/f(a) 1. X 2. P(g(f(a)))Q(g(f(a)),f(a)) x/g(f(a)), y/a 2. YX 3. P(g(f(a))) 3. Y 4. P(g(f(a))) z/f(a), v/ g(f(a)) 4. Y 5. 5. 6. Alaprezolúció
Az elsőrendű rezolúcióban a rezolvens képzésnél az illesztő helyettesítéssel dolgozunk, és az alapján próbáljuk levezetni az üres klózt. Példa Elsőrendű rezolúciós levezetés a {xy(P(x)Q(x,f(y))), zv(P(g(z))P(v)), uQ(g(u),u)} klózhalmazból. 1. P(x)Q(x,f(y)) K 2. Q(g(u),u) K u / f(y), x/g(f(y)), 3. P(g(f(y))) rez(1,2) 4. P(g(z))P(v) K faktorizálás (v/g(z)) z/f(y), ) 5. 1. Rendű rezolúció