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

Podobné dokumenty
Matematická logika. Rostislav Horčík. horcik

Okruh č.3: Sémantický výklad predikátové logiky

2.2 Sémantika predikátové logiky

Sémantika predikátové logiky

Matematická logika. Miroslav Kolařík

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

Výroková logika - opakování

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

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

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

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

Matematická logika. Rostislav Horčík. horcik

1 Predikátová logika. 1.1 Syntax. jaký mohou mít formule význam (sémantiku). 1. Logických symbolů: 2. Speciálních (mimologických) symbolů:

0. ÚVOD - matematické symboly, značení,

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

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

Úvod do predikátové logiky. (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/ / 1

Matematická logika. Rostislav Horčík. horcik

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

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

Základní pojmy matematické logiky

Matematická indukce, sumy a produkty, matematická logika

Predikátová logika [Predicate logic]

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

Rezoluční kalkulus pro logiku prvního řádu

Logické programy Deklarativní interpretace

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

Přednáška 2: Formalizace v jazyce logiky.

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

4.2 Syntaxe predikátové logiky

Matematická logika. Rostislav Horčík. horcik

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

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

Matematická analýza 1

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

Základy logiky a teorie množin

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

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

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

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

Matematická logika. Miroslav Kolařík

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

Predikátová logika dokončení

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

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

Kapitola Výroky

Booleovská algebra. Booleovské binární a unární funkce. Základní zákony.

Úvod do informatiky. Miroslav Kolařík

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

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

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

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

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

1 Základní pojmy. 1.1 Množiny

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

Klasická výroková logika - tabulková metoda

LOGIKA VÝROKOVÁ LOGIKA

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

Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz

Cvičení Aktivita 1. část 2. část 3. část Ústní Celkem Známka

I) Příklady (převeďte následující věty do formulí PL1 a ověřte jejich ekvivalenci pomocí de Morganových zákonů):

Přijímací zkouška - matematika

2.1 Formule predikátové logiky. větám. Použijte k tomu predikátových symbolu uvedených v textu.

1 Linearní prostory nad komplexními čísly

Úvod do teoretické informatiky(2017/2018) cvičení 6 1

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

Logika Libor Barto. Výroková logika

Rezoluce v predikátové logice

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

Matematika I. Přednášky: Mgr. Radek Výrut, Zkouška:

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

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

Výroková logika. Sémantika výrokové logiky

Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce

Rezoluce v predikátové logice

Kongruence na množině celých čísel

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

Úvod do informatiky. Miroslav Kolařík

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

Rezoluční kalkulus pro výrokovou logiku

1 Lineární prostory a podprostory

Rovnost lze vyjádřit jako predikát, např. můžeme zvolit, že P(x, y) reprezentujetvrzení xjerovnoy.

1. Matematická logika

Matematika B101MA1, B101MA2

Modely Herbrandovské interpretace

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

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

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

Teorie množin. Čekají nás základní množinové operace kartézské součiny, relace zobrazení, operace. Teoretické základy informatiky.

NAIVNÍ TEORIE MNOŽIN, okruh č. 5

1 Výrok a jeho negace

Základy matematické logiky

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

Normální formy. (provizorní text)

Predikátová logika. Z minula: 1. jazyk logiky 1. řádu. 2. term a formule. 3. interpretace jazyka (relační struktura) 4. Tarského definice pravdy

λογος - LOGOS slovo, smysluplná řeč )

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

Marie Duží

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

Transkript:

1 Pravdivost formulí v interpretaci a daném ohodnocení Než uvedeme konkrétní příklady, zopakujme si definici interpretace, ohodnocení a pravdivosti. Necht L je nějaký jazyk. Interpretaci U, jazyka L tvoří množina prvků U (zvaná univerzum) a funkce, která přiřazuje každému konstantnímu symbolu a z L přiřadí prvek a U, každému n-árnímu predikátovému symbolu P z L přiřadí n-ární relaci P U n a každému n-árnímu funkčnímu symbolu f z L přiřadí funkci f : U n U. Ohodnocení proměnných je funkce, která každé objektové proměnné z L přiřadí prvek univerza U. Příklad 1.1 Příkladem interpretace pro jazyk obsahující konstantní symbol a, binární predikátový symbol P a binární funkční symbol f, je např. R,, kde R je množina reálných čísel, a = 1, P = {(c,d) R 2 c d} a f (c,d) = c + d, tj. P se interpretuje jako binární relace menší nebo rovno a f jako sčítání. Pokud máme danou interpretaci U, jazyka L a ohodnocení, můžeme určit hodnotu každého termu (term je libovolný výraz, který lze vyrobit z objektových proměnných, konstantních symbolů a funkčních symbolů). Hodnota t termu t v dané interpretaci a ohodnocení je definována induktivně, tj. pokud t = a, kde a je konstantní symbol, pak t = a, pokud t = x, kde x je objektová proměnná, pak t = (x) a pokud t = f(t 1,...,t n ), kde f je n-ární funkční symbol, pak t = f ( t 1,..., t n ). Příklad 1.2 Vezměme interpretaci R, definovanou výše a ohodnocení takové, že (x) = 13 a (y) = 5. Pak hodnota termu t = f(f(a,f(x,y)),y) je t = f ( f ( a, f ( (x), (y))), (y)) = (1 + (13 + 5)) + 5 = 24. Nyní již můžeme definovat pojem pravdivosti formule ϕ v dané interpretaci U, a ohodnocení. Pravdivost se podobně jako u termů definuje induktivně, tj. pokud ϕ = P(t 1,...,t n ), kde P je n-ární predikátový symbol a t 1,...,t n termy, pak ϕ je pravdivá v U, a právě tehdy, když ( t 1,..., t n ) P, pokud ϕ = ψ, kde ψ je formule, pak ϕ je pravdivá v U, a právě tehdy, když ψ není pravdivá v U, a. pokud ϕ = ψ χ, kde ψ,χ jsou formule a {,,, }, pak se pravdivost ϕ určí z pravdivostí ψ a χ stejně jako ve výrokové logice. pokud ϕ = xψ, kde ψ je formule a x proměnná, pak ϕ je pravdivá v U, a právě tehdy, když pro všechny d U je ψ pravdivá v U, a [x := d]. Symbol [x := d] značí ohodnocení, které je získáme z tak, že předefinujeme hodnotu pro x na d, tj. [x := d](x) = d. pokud ϕ = xψ, kde ψ je formule a x proměnná, pak ϕ je pravdivá v U, a právě tehdy, když existuje d U takové, že ψ pravdivá v U, a [x := d]. Pokud chceme určit pravdivost formule ϕ v U, a, která obsahuje volné proměnné x 1,...,x n, je zřejmé, že nemusí znát hodnotu pro všechny proměnné, ale jen pro x 1,...,x n. Pokud ϕ neobsahuje žádné volné proměnné (tj. ϕ je sentence), pak její pravdivost na vůbec nezávisí. Příklad 1.3 Mějme interpretaci R, z příkladu 1.1. Pro každou následující formuli ϕ najděte ohodnocení,σ takové, aby ϕ byla pravdivá v R,, a nepravdivá v R,, σ. a) ϕ = P(f(x,y),a) P(a,y). 1

b) ϕ = x(p(f(x,y),a) P(a,y)). c) ϕ = y((p(x,a) P(a,y)) P(x,y)). a) Připomeňme, že P se interpretuje v R, jako, f jako + a a jako 1. Formule ϕ při nějakém ohodnocení tedy říká, že (x)+ (y) 1 a zároveň není pravda, že 1 (y). Negace tvrzení 1 (y) je 1 > (y). Chceme-li tedy nalézt ohodnocení, aby ϕ byla pravdivá, stačí najít reálná čísla (x), (y), která splňují podmínky (x) + (y) 1 a 1 > (y), tedy např. (x) = 1 a (y) = 0. Pak totiž 1 + 0 = (x) + (y) = f(x,y) a = 1, 1 = a > y = 0. Naopak např. pro ohodnocení σ(x) = 2, σ(y) = 0 bude ϕ nepravdivá, protože 2 + 0 = σ(x) + σ(y) = f(x,y) σ > a σ = 1. První argument konjunkce ve ϕ je tedy nepravdivý v R, a σ, proto je nepravdivá také ϕ v R, a σ. b) V tomto případě máme stejnou formuli jako předtím, až na existenční kvantifikátor na začátku formule. Proměnná x ted není volná, takže stačí hledat ohodnocení y. Formule ϕ při nějakém ohodnocení nyní říká, že existuje d R takové, že když ohodnotíme x prvkem d bude platit d + (y) 1 a zároveň 1 > (y). Takové d samozřejmě může a nemusí existovat v závislosti na (y). Např. pro (y) = 1 a d = 2 jsou obě podmínky splněny, takže ϕ je pravdivá v R, a. Naopak pro σ(y) = 2 a libovolné d R neplatí 1 > 2 = σ(y). Takže ϕ není pravdivá v R, a σ. c) Formule ϕ má v tomto případě jen jednu volnou proměnnou a to x. Mějme nějaké ohodnocení. Formule ϕ říká, že pro každé d R pokud (x) 1 a 1 d, pak (x) d. Vidíme, že toto tvrzení platí pro každou hodnotu (x), protože je tranzitivní relace. Z toho plyne, že ϕ je pravdivá v R, pro každé ohodnocení. Ohodnocení při kterém by byla ϕ nepravdivá tudíž neexistuje. 2 Pravdivost sentencí v interpretaci Jak jsme zmínili výše, pravdivost sentencí nezávisí na ohodnocení proměnných, ale jen na interpretaci. Příklad 2.1 Mějme jazyk obsahující jeden binární predikátový symbol Q a k němu interpretaci U,, kde U = {0,1,2,3} a Q = {(0,2),(1,2),(2,2),(2,3)}. Zjistěte pro následující sentence, jestli jsou pravdivé v U,. a) x y Q(y,x). b) x y(q(x,y) Q(y,x)). c) x y(q(x,y) Q(y,y)). a) Sentence říká, že existuje prvek univerza d U takový, že pro všechny prvky univerza e U platí, že (d,e) Q. Jinými slovy existuje d U takové, že všechny dvojice prvků z univerza, které mají jako první složku d, nepatří do Q. Vidíme tedy, že pro d = 3 je toto splněno, protože Q neobsahuje žádnou dvojici s první složkou rovnou 3. Takže sentence je pravdivá U,. 2

b) Sentence z bodu b) říká, že existují prvky univerza d,e U takové, že (d,e) Q a zároveň (e,d) Q. Jinými slovy sentence říká, že existuje dvojice v Q taková, že i její varianta s přehozenými složkami je také v Q. Vidíme, že jediná dvojice, která toto splňuje je (2,2) Q. Takže pro d = e = 2 platí, že (d,e) Q a (e,d) Q, takže je sentence pravdivá v Q,. c) Sentence z bodu c) říká, že existuje prvek univerza d U takový, že pro všechny prvky univerza e U platí, že (d,e) Q právě tehdy, když (e,e) Q. Tzn. že bud (d,e) Q a zároveň (e,e) Q nebo (d,e) Q a zároveň (e,e) Q (napište si DNF výrokové formule α β). Probereme jednotlivé možnosti pro prvek d. d = 0: Vidíme, že (0,2) Q a zároveň (2,2) Q. Takže prvek d = 0 nesplňuje naší podmínku. d = 1: Podobně jako minule máme (1,2) Q a zároveň (2,2) Q, takže ani pro d = 1 to neplatí. d = 2: Stejně tak tady máme (2,2) Q a zároveň (2,2) Q, takže zase nic. d = 3: V tomto případě neexistuje dvojice v Q, která by měla na první složce 3. Nicméně vidíme, že např pro (3,0) Q a zároveň (0,0) Q. Takže v tomto případě není naše podmínka splněna. Shrnuto vše dohromady, sentence z bodu c) není pravdivá v Q,. Příklad 2.2 Mějme jazyk obsahující jeden binární predikátový symbol R, binární funkční symbol f a konstantní symbol a. Necht Q, je interpretace, kde Q je množina racionálních čísel, R je relace rovnosti = na Q, tj. R = {(q,q) q Q}, f je násobení racionálních čísel, tj. f (p,q) = p q, a a = 0. Zjistěte pro následující sentence, jestli jsou pravdivé v U,. a) x y R(f(y,y),x). b) x y( R(x,a) z R(f(x,z),y)). a) Přečteme si, co sentece a) říká. Pro každé racionální číslo p existuje racionální číslo q takové, že q q = p. To ale neplatí, protože např. pro p = 2 neexistuje racionální číslo q takové, že q q = 2. Takže sentence z bodu a) není pravdivá v Q,. b) Přečteme si opět, co sentece b) říká. Pro každá racionální čísla p,q pokud p 0, pak existuje racionální číslo r takové, že p r = q. Toto tvrzení je pravdivé, protože když p 0, můžeme za r vzít podíl q q p Q. Pak je totiž splněno p p = q. Takže sentence z bodu b) je pravdivá v Q,. 3 Tautologie, kontradikce, splnitelné sentence Připomeňme, že sentenci ϕ nazýváme tautologie, pokud je pravdivá v každé interpretaci. Naopak ϕ nazýváme kontradikcí (také nesplnitelnou sentencí), pokud není pravdivá v žádné interpretaci. Sentence, které jsou pravdivé alespoň v jedné interpretaci nazýváme splnitelné. Všimněte si, že speciálně každá tautologie je i splnitelná, ale splnitelná nemusí být tautologie. Příklad 3.1 Zjistěte pro každou následující sentenci, jestli je tautologie, kontradikce nebo splnitelná (ale ne tautologie). a) ( x P(x)) ( x P(x)). b) x(p(x) Q(x)) ( x P(x) x Q(x)). 3

c) x(p(x) Q(x)) ( x P(x) x Q(x)). d) ( x P(x)) ( x P(x)). a) Sentence říká, že pokud existuje prvek univerza, který má vlastnost P, pak už ji musí mít všechny prvky. Taková věc samozřejmě nemusí platit vždy, např. v interpretaci N,, kde P = {2n n N} je množina sudých přirozených čísel, to neplatí, protože existuje sudé přirozené číslo (např. 2), ale není pravda, že všechny přirozená čísla jsou sudá (např. 3). Sentence tedy nemůže být tautologie. Sentence je tedy bud kontradikce nebo splnitelná. Protože implikaci utvoříme jednoduše pravdivou, pokud učiníme její předpoklad nepravdivý, je zřejmé, že existuje interpretace, kde je naše sentence pravdivá. Např. pro N,, kde P =, je x P(x) nepravdivá, a tudíž je naše sentence v této interpretaci pravdivá. Shrnuto sentence z bodu a) je splnitelná, ale ne tautologie. b) Sentence z bodu b) je ekvivalence. Ta je pravdivá pokud jsou bud oba její argumenty pravdivé nebo oba nepravdivé. Necht U, je libovolná interpretace. Podíváme se, jestli může být tato podmínka splněna. Nejprve předpokládejme, že x(p(x) Q(x)) je pravdivá v U,. Musíme ukázat, že i x P(x) x Q(x) je pravdivá v U,. Z pravdivosti x(p(x) Q(x)) plyne, že pro každý prvek d U platí, že d P a zároveň d Q. Jinými slovy P = Q = U. Z toho ale plyne, že x P(x) je pravdivé v U, a zrovna tak x Q(x). Tudíž je v této interpretaci pravdivá i konjunkce těchto sentencí x P(x) x Q(x). Nyní předpokládejme, že x(p(x) Q(x)) je nepravdivá v U,. Tj. existuje prvek d U takový, že d P nebo d Q. Předpokládejme, že např. d P (druhý případ by se dělal analogicky). Tzn. že P U, a tedy x P(x) je nepravdivé v U,. Tudíž je v této interpretaci nepravdivá i konjunkce sentencí x P(x) x Q(x). Ukázali jsme, že oba argumenty ekvivalence jsou bud oba pravdivé nebo oba nepravdivé v libovolné interpretaci. Tzn. že sentence z bodu c) je pravdivá je v každé interpretaci, tj. tautologie. c) Sentence z bodu c) je implikace, která je pravdivá, pokud ukážeme, že z pravdivosti jejího předpokladu plyne pravdivost jejího závěru. Necht U, je libovolná interpretace. Předpokládejme, že x(p(x) Q(x)) je pravdivé v U,. Tzn. že pro každý prvek univerza d U platí, že d P nebo d Q. Jinými slovy P Q = U. Podívejme se, jestli za této podmínky musí platit závěr naší implikace x P(x) x Q(x). Aby byla sentence x P(x) x Q(x) pravdivá muselo by platit P = U nebo Q = U. Takové tvrzení, ale z našeho předpokladu P Q = U neplyne. Např. pro U = N, P = {2n n N} sudá přirozená čísla a Q = N \ P lichá přirozená čísla máme P Q = N, ale není pravda, že by všechna čísla byla sudá nebo lichá, tj. P U a Q U. Sentence z bodu c) tedy není tautologie. Nicméně je splnitelná. Pokud bychom např. vzali U = N, P = N a za Q cokoli, pak je závěr naší implikace x P(x) x Q(x) pravdivý v U,, a tudíž je pravdivá i celá implikace. Shrnuto sentence z bodu c) není tautologie, ale je splnitelná, protože existuje interpretace, kde je pravdivá. d) Sentence z bodu d) je konjunkce, která je pravdivá, pokud jsou pravdivé oba její argumenty x P(x) a x P(x). Oba argumenty jsou zřejmě splnitelné sentence, ale ne tautologie. Celá konjunkce tedy nemůže být tautologie. Podívejme se, jestli je možné najít interpretaci, kde jsou pravdivé oba tyto argumenty. Necht U, je libovolná interpretace. Pokud x P(x) je pravdivé v U,, pak P = U. Naopak pokud x P(x) je pravdivé v U,, pak existuje prvek d U takový, že d P, tj. P U. Vidíme, že podmínky P = U a P U nelze splnit zároveň. Z toho plyne, že v každé interpretaci, kde je x P(x) pravdivé není pravdivé x P(x) a naopak. Neboli neexistuje interpretace, kde by byly pravdivé obě sentence x P(x) a x P(x). Sentence z bodu d) je tedy kontradikce. 4

Tautologie může být i formule, která není sentence. Na přednášce jsme definovali, že formule je tautologie, pokud její univerzální uzávěr je tautologie (už jako sentence, tj. je pravdivý v každé interpretaci). Ekvivalentně je možné říci, že formule je tautologie, pokud je pravdivá v každé interpretaci a každém ohodnocení proměnných. Příklad 3.2 Rozhodněte, jestli je následující formule tautologie. kde formule ψ neobsahuje x volně. x(ϕ ψ) ( xϕ ψ), Chceme rozhodnout, jestli je zadaná formule tautologie, tj. musíme rozhodnout, jestli formule platí v každé interpretaci a každém ohodnocení. Necht U, je libovolná interpretace a ohodnocení proměnných. Naše formule je ekvivalence, která je pravdivá, pokud oba její argumenty jsou bud pravdivé nebo oba nepravdivé. Máme tedy dva případy. 1. Předpokládejme, že x(ϕ ψ) je pravdivá v U, a. Tzn. pro každé d U formule ϕ ψ je pravdivá v U, a [x := d]. Protože ψ neobsahuje x volně, její pravdivost na ohodnocení proměnné x nezávisí. Takže ψ je bud pravdivé v U, a [x := d] pro všechny d U nebo je pro všechny d U nepravdivé. Budeme tedy uvažovat dva případy. První kdy je ψ je pravdivá v U, a [x := d] pro všechny d U a druhý kdy je nepravdivá. V prvním případě je ψ pravdivé také v U, a, protože ohodnocení dostaneme jako [x := (x)]. Tzn. že implikace xϕ ψ je pravdivá v U, a, protože je pravdivý její druhý argument. Pokud nastává druhý případ, tj. pokud je ψ nepravdivá v U, a [x := d] pro všechny d U, musí být nepravdivá také ϕ v U, a [x := d] pro všechny d U, jinak by neplatil náš předpoklad pravdivosti formule x(ϕ ψ). Skutečně pokud by totiž existoval prvek e U takový, že ϕ by byla pravdivá v U, a [x := e], pak by byla nepravdivá implikace ϕ ψ v U, a [x := e], což by znamenalo, že je nepravdivá i x(ϕ ψ) v U, a. Protože je tedy ϕ nepravdivá v U, a [x := d] pro všechny d U, nemůže být pravdivá ani formule xϕ v U, a (viz definice pravdivosti formule xϕ). Takže implikace xϕ ψ je v tomto případě pravdivá v U, a, protože je nepravdivý její první argument. 2. Nyní předpokládejme, že x(ϕ ψ) je nepravdivá v U, a. Tzn. že existuje prvek d U takový, že ϕ je pravdivá v U, a [x := d] a ψ je nepravdivá v U, a [x := d]. Z existence prvku d U takového, že ϕ je pravdivá v U, a [x := d], plyne, že formule xϕ je pravdivá v U, a. Protože ψ neobsahuje x volně, pravdivost formule ψ na ohodnocení proměnné x nezávisí. Takže ψ je nepravdivé také v U, a. Z toho již plyne, že není pravdivá ani implikace xϕ ψ v U, a. Shrnuto, naše formule platí v každé interpretaci a každém ohodnocení, tj. je to tautologie. 4 Splnitelné a nesplnitelné množiny sentencí Připomeňme, že množina sentencí M se nazývá splnitelná, pokud existuje její model, tj. existuje interpretace U, taková, že každá ϕ M je pravdivá v U,. Pokud taková interpretace neexistuje nazýváme množinu M nesplnitelnou. Uvědomte si, že zjišt ovat, jestli je jednoprvková množina sentencí M = {ϕ} splnitelná, znamená vlastně zjistit, zda-li je splnitelná ϕ. Příklad 4.1 Zjistěte pro každou následující množiny sentencí, jestli jsou splnitelné či nesplnitelné. a) M 1 = { x R(x,x), x y(r(x,y) R(y,x)), x y z((r(x,y) R(y,z)) R(x,z))}. b) M 2 = { x( P(x) Q(x)), x(p(x) Q(x))}. 5

c) M 3 = { x(p(x) Q(x)), x(p(x) Q(x)), (P(a) Q(a))}. a) Vidíme, že všechny sentence z M 1 se týkají binárního predikátového symbolu R. Chceme zjistit, jestli je M 1 splnitelná, tj. chceme najít interpretaci U,, kde jsou pravdivé všechny sentence z M 1. Interpretace R symbolu R je nějaká binární relace na U. Musíme tedy zjistit, jestli existuje množina U a binární relace R na U taková, že jsou pravdivé všechny sentence z M 1. Přečteme si, co jednotlivé sentence o R říkají. První říká, že pro každé d U platí (d,d) R. Druhá říká, že pro každé d,e U pokud (d,e) R, pak (e,d) R. Poslední říká, že pro každé d,e,h U pokud (d,e) R a (e,h) R, pak (d,h) R. Jinými slovy R má být reflexivní, symetrická a tranzitivní relace, tj. ekvivalence. Protože ekvivalence existují (např. pro U = N je R = {(n,n) n N} ekvivalence) je množina M 1 splnitelná. b) Chceme najít interpretaci U,, ve které jsou všechny sentence z M 2 pravdivé. Unární predikátové symboly se budou interpretovat jako podmnožiny U, tj. P U a Q U. Přečtěme si, co říkají sentence z M 2. První říká, že pro každé d U platí, že d P nebo d Q. Z toho plyne, že P Q =, protože když d P, pak nutně d Q. Druhá sentence říká, že pro každé d U pokud d P, pak d Q. Jinými slovy všechny prvky z P patří do Q, tj. P Q. Takže musíme zvolit P a Q tak, aby platilo P Q = a zároveň P Q. To udělat lze, např. pokud U je libovolná neprázdná množina, Q = U a P =, pak P Q = U = a P = U = Q. Takže množina M 2 je splnitelná. Všimněte si, že pokud bychom přidali do M 2 sentenci x P(x) vyžadující neprázdnost P, pak se množina M 2 stala nesplnitelnou. c) Opět chceme najít interpretaci U,, ve které jsou všechny sentence z M 3 pravdivé. Unární predikátové symboly se budou interpretovat jako podmnožiny U, tj. P U a Q U. Konstantní symbol a se interpretace jako prvek univerza, tj. a U. Přečtěme si, co říkají první dvě sentence. První říká, že pro všechna d U platí d P nebo d Q. Jinými slovy P Q = U. Druhá sentence říká, že neexistuje d U takové, že d P a zároveň d Q. Jinými slovy P Q =. Takže aby byly splněny první dvě sentence, musí být podmnožiny P a Q disjunktní a jejich sjednocení celé univerzum U. Podívejme se, jestli se za těchto podmínek dá splnit i třetí sentence. Třetí sentence říká, že není pravda, že a P právě tehdy, když a Q. Musíme zvolit a tak, aby byla ekvivalence P(a) Q(a) nepravdivá, tj. bud a P a a Q nebo a P a a Q. První případ není možný, protože P Q =. V druhém případě z a P plyne, že a Q, protože P Q = U. To je ale spor, protože nemůže zároveň platit a Q a a Q. To znamená, že at už zvolíme prvek a jakkoliv, třetí sentence nebude nikdy pravdivá, pokud budou pravdivé první dvě. Takže M 3 je nesplnitelná. Splnitelnost či nesplnitelnost množiny sentencí můžeme také zjistit pomocí rezoluční metody. Nicméně pokud je množina splnitelná rezoluční algoritmus se nemusí zastavit, a pokud se zastaví bývá na papíře pracné ověřit, že žádná další rezolventa již nejde vyrobit. Příklad 4.2 Rozhodněte rezoluční metodou, jestli jsou množiny M 2 a M 3 z příkladu 4.1 splnitelné či nesplnitelné. M 2 : Najdeme nejprve ekvisplnitelnou množinu sentencí S pro M 2. První sentence z M 2 je již klausule, takže s tou nemusíme nic dělat. U druhé stačí nahradit implikaci pomocí negace a disjunkce, takže dostaneme x( P(x) Q(x)). Ekvisplnitelná množina sentencí pro M 2 tedy je S = { P(x) Q(x), P(y) Q(y)}. 6

Pro jistotu jsme přejmenovali proměnné u druhé sentence. Rezoluční algoritmus může v tomto případě vyrobit jen jednu rezolventu, a to P(x). Protože žádná další rezolventa nejde vyrobit a prázdnou klausuli F jsme neobdrželi, je množina M 2 splnitelná. M 3 : Najdeme opět ekvisplnitelnou množinu sentencí S pro M 3. První sentence z M 2 je již klausule, takže s tou nemusíme nic dělat. Druhou je potřeba převést do prenexního normálního tvaru. Distribucí existenčního kvantifikátoru přes negaci dostaneme x (P(x) Q(x)). Použitím De Morganova zákonu obdržíme již klausuli x( P(x) Q(x)). Poslední sentenci je potřeba převést do CNF. Pravdivostní tabulka pro výrokovou formuli (p q) je p q (p q) 0 0 1 0 1 0 1 0 0 1 1 1 Ekvivalentní formule v CNF je tedy (p q) ( p q). Takže třetí sentenci můžeme ekvivalentně přepsat na (P(a) Q(a)) ( P(a) Q(a)). Ekvisplnitelná množina sentencí pro M 3 tedy je S = {P(x) Q(x), P(y) Q(y), P(a) Q(a), P(a) Q(a)}. Pro jistotu jsme přejmenovali proměnné u druhé sentence. Rezoluční metoda nám dává: 1. P(x) Q(x) 2. P(y) Q(y) 3. P(a) Q(a) 4. P(a) Q(a) 5. Q(a) 1,4,{x/a} 6. Q(a) 2,3,{y/a} 7. F 5,6. Protože jsme obdrželi v průběhu rezolučního algoritmu prázdnou klausuli F je množina klausulí S nesplnitelná, a tudíž i množina sentencí M 3 je nesplnitelná. 7