Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Rozoluiční princip
2
Resoluční princip v predikátové logice
Zaveďme některé pojmy analogické pojmům z výrokové logiky: Literál je atomická formule (n-ární predikát aplikovaný na n termů) nebo její negace. Komplementární literály je dvojice literálů z nichž každý je negací druhého. Klausule je věta (formule bez volných proměnných), taková, že obsahuje pouze univerzální kvantifikátory na začátku a následuje disjunkce konečného počtu literálů nebo jediný literál.
3
Zavedeme následující úmluvu: U klausule budeme univerzální kvantifikátory proměnných vynechávat. Protože u disjunkce nezáleží na pořadí, budeme klausule zapisovat pouze jako množiny jejich literálů. Tedy například místo tří klauzulí P(x, y), a (Q(a) R(a, x) S(f(a), a), a b S(a, b) Q(b) budeme psát pouze množinu tří množin literálů {P(x, y)}, {Q(a), R(a, x), S(f(a), a)}, {S(a, b), Q(b)}.
4
Prázdná klausule neobsahuje žádné literály a je tedy kontradikcí
Prázdná klausule neobsahuje žádné literály a je tedy kontradikcí. Obvykle se značí symbolem , někdy též F. Tato klausule není splnitelná. Její přítomnost v množině formulí znamená nesplnitelnost této množiny. Princip rezoluční metody u predikátové logiky je analogický jako u výrokové logiky. Je však komplikovanější, protože není k dispozici přímá analogie k konjunktivně disjunktivní normální formě. Postupně odvozujeme z daných klausulí resolventy tak, že vypouštíme dvojice komplementárních literálů. Původní klausule ponecháme.
5
Postup je založen na tom, že tautologicky platí
( ) ( ) ( ). V případě výskytu predikátů s proměnnými, konstantami a funkčními symboly je třeba provést substituce.
6
Resolventa klausulí C1 = {P(x, y, z), Q(x, y)} a C2 = {P(x, y, z), R(x)}, kde x, y, z jsou proměnné je klausule C = {Q(x, y), R(x)}. Komplementární literály P(x, y, z) a {P(x, y, z) lze vynechat. Množiny klausulí {C1, C2} a {C1, C2, C} jsou tautologicky ekvivalentní. Mají tytéž modely. Abychom to dokázali, stačí ukázat, že pro každou interpretaci (U, I), kde C1 a C2 jsou pravdivé je pravdivé i C . Nechť a, b, c jsou libovolné konstanty z U. Substitujeme-li a za x, b za y a c za z (označme jako x/a, y/b, z/c) odvodíme, že {Q(a, b), R(a)} je pravdivé a tedy C je pravdivé v interpretaci (U, I).
7
Resolventa klausulí {P(x, y, z), Q(x, y)}a C2 = {P(a, b, z), R(a)}získaná substitucí
x/a, y/b je {Q(a, b), R(a)}. Nalézání komplementárních literálů v množině klauzulí lze algoritmizovat. Tento postup je užit například při ověřování, zda dané tvrzení vyplývá z daných předpokladů. Jde o ověření tautologičnosti implikace (p1 p2 … pn) q, tautologicky ekvivalentní s (p1 p2 … pn) q, tedy s p1 p2 … pn q
8
R0(S) = S, Rj+1(S) = R(Rj(S)) pro j = 1, 2, ... . Platí: S = R0(S) R1(S) ... Rk(S) ... . Položme Rj(S).
9
Resoluční princip predikátové logiky říká:
Množina S je splnitelná právě když R*(S) neobsahuje prázdnou klausuli . Chceme-li zjistit zda klauzule je důsledkem (logickým a tedy i sémantickým) množiny klauzulí S, vytvoříme množinu S’ = S {} a zjistíme, zda je splnitelná, či nikoliv. Je-li S’ splnitelná není důsledkem S. Je-li nesplnitelná, je důsledkem S. To je princip nepřímého důkazu v matematice.
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.