Matematická logika. Rostislav Horčík. horcik

Podobné dokumenty
3.10 Rezoluční metoda ve výrokové logice

Matematická logika. Rostislav Horčík. horcik

Matematická logika. Rostislav Horčík. horcik

Rezoluce ve výrokové logice

Výroková logika - opakování

Pro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie.

Matematická logika. Rostislav Horčík. horcik

Kapitola Výroky

Výroková a predikátová logika - III

Logika. 5. Rezoluční princip. RNDr. Luděk Cienciala, Ph. D.

Výroková a predikátová logika - V

Výroková a predikátová logika - II

1 Pravdivost formulí v interpretaci a daném ohodnocení

2.5 Rezoluční metoda v predikátové logice

Úvod do TI - logika Výroková logika - pokračování (3.přednáška) Marie Duží

Matematická logika. Miroslav Kolařík

Výroková a predikátová logika - II

Místo pojmu výroková formule budeme používat zkráceně jen formule. Při jejich zápisu

Základní pojmy matematické logiky

Sémantika výrokové logiky. Alena Gollová Výroková logika 1/23

Základy logiky a teorie množin

Marie Duží

vhodná pro strojové dokazování (Prolog) metoda založená na vyvracení: dokazuje se nesplnitelnost formulí

Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek

Logika. 2. Výroková logika. RNDr. Luděk Cienciala, Ph. D.

Rezoluce v predikátové logice

Rezoluční kalkulus pro výrokovou logiku

Formální systém výrokové logiky

2.2 Sémantika predikátové logiky

Systém přirozené dedukce výrokové logiky

Výroková a predikátová logika - III

(zkráceně jen formule), jestliže vznikla podle následujících pravidel:

Úvod do informatiky. Miroslav Kolařík

Rezoluce v predikátové logice

Predikátová logika [Predicate logic]

Výroková logika syntaxe a sémantika

Výroková a predikátová logika - II

Predikátová logika. prvního řádu

teorie logických spojek chápaných jako pravdivostní funkce

Sémantika predikátové logiky

Výroková a predikátová logika - IX

Každé formuli výrokového počtu přiřadíme hodnotu 0, půjde-li o formuli nepravdivou, a hodnotu 1, půjde-li. α neplatí. β je nutná podmínka pro α

Výroková a predikátová logika - IV

FIT ČVUT MI-LOM Lineární optimalizace a metody. Dualita. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Výroková a predikátová logika - X

Disjunktivní a konjunktivní lní tvar formule. 2.přednáška

ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML

Výroková a predikátová logika - IX

Predik atov a logika - pˇredn aˇska () Predik atov a logika - pˇredn aˇska / 16

Logika XI. RNDr. Kateřina Trlifajová PhD. Katedra teoretické informatiky Fakulta informačních technologíı BI-MLO, ZS 2011/12

Logika. 6. Axiomatický systém výrokové logiky

Výroková a predikátová logika - X

1 Výroková logika 1. 2 Predikátová logika 3. 3 Důkazy matematických vět 4. 4 Doporučená literatura 7

Jak jsem potkal logiku. Převod formule do (úplného) disjunktivního tvaru. Jan Hora

Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace

Normální formy. (provizorní text)

Další NP-úplné problémy

Logika Libor Barto. Výroková logika

LOGIKA VÝROKOVÁ LOGIKA

α β ) právě tehdy, když pro jednotlivé hodnoty platí β1 αn βn. Danou relaci nazýváme relace

Přijímací zkouška - matematika

Výroková a predikátová logika - XII

Základy matematické analýzy

IA008 Computational logic Version: 6. května Formule je v konjunktivní normální formě (CNF), pokud má tvar α 1... α n,

YZTI - poznámky ke složitosti

Výroková logika. Teoretická informatika Tomáš Foltýnek

Kapitola 1. Úvod. 1.1 Značení. 1.2 Výroky - opakování. N... přirozená čísla (1, 2, 3,...). Q... racionální čísla ( p, kde p Z a q N) R...

Logika II. RNDr. Kateřina Trlifajová PhD. Katedra teoretické informatiky Fakulta informačních technologíı BI-MLO, ZS 2011/12

Další (neklasické) logiky. Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20

Matematická logika. Miroslav Kolařík

Matematická logika. Rostislav Horčík. horcik

Predikátová logika. Teoretická informatika Tomáš Foltýnek

8 Přednáška z

Negativní informace. Petr Štěpánek. S použitím materiálu M.Gelfonda a V. Lifschitze. Logické programování 15 1

Skolemizace. x(x + f(x) = 0). Interpretace f unární funkce, která pro daný

1 Determinanty a inverzní matice

P 1 = P 1 1 = P 1, P 1 2 =

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014

Predikátová logika dokončení

Vlastnosti regulárních jazyků

Výroková logika II. Negace. Již víme, že negace je změna pravdivostní hodnoty výroku (0 1; 1 0).

Výroková a predikátová logika - VIII

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

popel, glum & nepil 16/28

10. Vektorové podprostory

Výroková a predikátová logika - VII

Úvod do informatiky. Miroslav Kolařík

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

Logické programy Deklarativní interpretace

Komplexní analýza. Holomorfní funkce. Martin Bohata. Katedra matematiky FEL ČVUT v Praze

Výroková a predikátová logika - VIII

Hypergrafové removal lemma a Szemérediho

Základy elementární teorie čísel

Modely Herbrandovské interpretace

6. Logika a logické systémy. Základy logiky. Lucie Koloušková, Václav Matoušek / KIV. Umělá inteligence a rozpoznávání, LS

PŘEDNÁŠKA 2 POSLOUPNOSTI

Úvod do výrokové a predikátové logiky

1 Úvod do matematické logiky

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2

Matematická indukce, sumy a produkty, matematická logika

Transkript:

Matematická logika Rostislav Horčík horcik@math.feld.cvut.cz horcik@cs.cas.cz www.cs.cas.cz/ horcik Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 1 / 15

Splnitelnost množin Definice Množina formulí S je splnitelná, pokud existuje pravdivostní ohodnocení u takové, že u(s) = 1, tj. u(ϕ) = 1 pro všechny ϕ S. Věta Pro množinu formulí S a formuli ϕ platí S = ϕ právě tehdy, když S { ϕ} není splnitelná. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 2 / 15

Klausule Definice Literál je bud výroková proměnná (positivní literál) nebo její negace (negativní literál). Literály p a p se nazývají komplementární. Klausule C je libovolná formule tvaru C = x 1 x 2 x n, kde x i jsou literály (navzájem různé). Pro n = 0 definujeme C = F (F značí kontradikci). V tomto případě se C nazývá prázdná klausule. Pozorování Klausule je tautologií právě tehdy, když obsahuje dvojici komplementárních literálů. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 3 / 15

Klausule Tvrzení Ke každé formuli α existuje množina klausulí S α taková, že pro každé pravdivostní ohodnocení u platí Důkaz u(α) = 1 právě tehdy, když u(s α ) = 1. Pomocí CNF máme α = C 1 C 2 C n, kde C i jsou klausule. C 1 C 2 C n je splněna p.t.k. S α = {C 1, C 2,..., C n } je splněna, tj. pro každé pravdivostní ohodnocení u platí u(c 1 C 2 C n ) = 1 p.t.k. u(s α ) = 1. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 4 / 15

Resolventa Konvence Mějme klausuli C a literál p, který se v C vyskytuje. Symbolem C \ p označujeme klausuli, která obsahuje všechny literály jako C kromě p. Např. pro C = x y z máme Definice C \ z = x y. Řekneme, že klausule D je rezolventou klausulí C 1 a C 2 podle literálu p, pokud existuje literál p takový, že p se vyskytuje v klausuli C 1, p se vyskytuje v klausuli C 2 a D = (C 1 \ p) (C 2 \ p). D značíme res p (C 1, C 2 ). Např. res p (p, p) = F. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 5 / 15

Věta Mějme dánu množinu klausulí S a označme D rezolventu některých dvou klausulí z množiny S. Pak množiny S a S {D} jsou pravdivé ve stejných pravdivostních ohodnoceních. Důkaz Necht u je pravdivostní ohodnocení. Musíme ukázat, že u(s) = 1 p.t.k. u(s {D}) = 1 (směr zprava doleva je triviální). Předpokládejme, že u(s) = 1 a D = res p (C 1, C 2 ) pro C 1, C 2 S. Máme tedy u(c 1 ) = u(c 2 ) = 1 a D = (C 1 \ p) (C 2 \ p). Pokud u(p) = 1, pak u(c 2 \ p) = 1. Pokud u(p) = 0, pak u(c 1 \ p) = 1. V obou případech u(d) = 1. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 6 / 15

Resoluční uzávěr Definice Označme R(S) = S {D D je resolventa některých klausulí z S} R 0 (S) = S R i+1 (S) = R(R i (S)), i N R (S) = {R i (S) i N} Pozorování Pro konečnou množinu klausulí S existuje n N takové, že R (S) = R n (S). Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 7 / 15

Věta Mějme dánu konečnou množinu klausulí S. Pak množiny S a R (S) jsou pravdivé ve stejných pravdivostních ohodnoceních. Důkaz Víme, že pro každou resolventu D některých klausulí z R i (S), jsou množiny R i (S) a R i (S) {D} splněny ve stejných ohodnoceních. Z toho plyne, že S a R i (S) jsou splněny ve stejných ohodnoceních pro každé i N. Protože R (S) = R n (S) pro nějaké n N, je důkaz hotov. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 8 / 15

Resoluční princip Věta Konečná množina klausulí S je splnitelná právě tehdy, když R (S) neobsahuje prázdnou klausuli F. Důkaz Zleva doprava: když je S, pak je splnitelná i R (S). Tudíž nemůže obsahovat prázdnou klausuli (kontradikci) F. Zprava doleva: dokážeme později. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 9 / 15

Algoritmus Předchozí věta dává návod, jak zjistit, zda daná konečná množina klausulí je spnitelná nebo je nesplnitelná: 1 Formule množiny M převedeme do CNF a množinu M pak nahradíme množinou S všech klausulí vyskytujících se v některé formuli v CNF. Klausule, které jsou tautologiemi, vynecháme. Jestliže nám nezbyde žádná klausule, množina M se skládala z tautologií a je pravdivá v každém pravdivostním ohodnocení. 2 Vytvoříme R (S). 3 Obsahuje-li R (S) prázdnou klausuli, je množina S (a tedy i množina M) nesplnitelná, v opačném případě je M splnitelná. Je zřejmé, že konstrukce celé množiny R (S) může být zbytečná. Stačí pouze zjistit, zda R (S) obsahuje F. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 10 / 15

Davis Putnam algoritmus Algoritmus DP(S) Vstup: konečná množina klausulí S Výstup: S je splnitelná nesplnitelná Pokud S obsahuje tautologie, tak je vyřad. Vyber libovolnou výrokovou proměnnou x v některé z klausulí v S. Necht M S, která obsahuje klausule bez x. Necht N je množina všech resolvent množiny S podle x. Pokud F N, pak vrat S není splnitelná a skonči. Pokud N M =, pak vrat S je splnitelná a skonči. DP(N M). Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 11 / 15

Tvrzení Algoritmus DP skončí po konečně mnoha krocích. Důkaz Klausule v N M neobsahují x, tj. každé volání DP obsahujeme méně a méně proměnných. Protože klausule v S obsahují jen konečně mnoho výrokových proměnných, algoritmus skončí po konečně mnoha krocích. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 12 / 15

Tvrzení Necht S, N M jsou množiny klausulí z algoritmu DP. Pak Důkaz N M je splnitelná p.t.k. S je splnitelná. Protože M S a N jsou rezolventy z S, je směr zprava doleva triviální. Necht u splňuje N M, tj. u(n M) = 1. Necht M 1 S je množina klausulí, které obsahují x a M 2 S množina klausulí, které obsahují x. Zkonstruujeme ohodnocení v, které splní S = M M 1 M 2. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 13 / 15

Důkaz pokračování Necht v(y) = u(y) pro všechny výrokové proměnné y různé od x. Pokud u(c \ x) = 1 pro všechny C M 1, pak definujeme v(x) = 0, tj. v(m 2 ) = 1 a tudíž v(s) = 1. Jinak existuje C M 1 taková, že u(c \ x) = 0. Definujeme v(x) = 1 (tj. v(m 1 ) = 1) a ukážeme, že v(m 2 ) = 1. Necht D M 2. Pak res x (C, D) N, tj. u(res x (C, D)) = 1. Protože u(res x (C, D)) = u((c \ x) (D \ x)) = 1 a u(c \ x) = 0, dostaneme u(d \ x) = 1. Takže v(d) = v(d \ x) = u(d \ x) = 1. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 14 / 15

Věta Algoritmus DP je korektní a úplný, tj. Důkaz DP(S) vrátí S je splnitelná právě tehdy, když S je splnitelná. Zprava doleva: DP(S) vrátí S je nesplnitelná, pokud v některém kroku F N M. Z předchozího tvrzení plyne, že S je nesplnitelná. Zleva doprava: DP(S) vrátí S je splnitelná, pokud v posledním kroku N M = ( je triviálně splnitelná). Konstrukce z důkazu předchozího tvrzení nám dává ohodnocení, které splní S. Rostislav Horčík (ČVUT FEL) Y01MLO Letní semestr 2007/2008 15 / 15