přednáška 2: normální formy, úsudky

33
Úvod do teoretické informatiky (logika) 1 Přednáška 2: Normální formy, úsudky. Marek Menšík marek.mensik@vsb. cz

Upload: kara

Post on 19-Mar-2016

76 views

Category:

Documents


0 download

DESCRIPTION

Přednáška 2: Normální formy, úsudky. Marek Men šík marek.mensik@ vsb .c z. Splnitelnost formulí, tautologie, kontradikce, model. Formule je splnitelná , má-li alespoň jeden model Formule je nesplnitelná (kontradikce) , nemá-li žádný model - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky (logika)1

Přednáška 2: Normální formy, úsudky.

Marek Menší[email protected]

Page 2: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky (logika) 2

Splnitelnost formulí, tautologie, kontradikce, model Formule je splnitelná, má-li alespoň jeden

model Formule je nesplnitelná (kontradikce),

nemá-li žádný model Formule je tautologie (logicky pravdivá),

je-li každé ohodnocení jejím modelem. Množina formulí {A1,…,An} je splnitelná,

existuje-li ohodnocení v, které je modelem každé formule Ai, i = 1,...,n.

Page 3: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky (logika) 3

Splnitelnost formulí, tautologie, kontradikce, model Příklad. A: (p q) (p q) Formule A je tautologie, A kontradikce, formule

(p q), (p q) jsou splnitelné.

p q p q p q (p q) (p q) (p q) A

1 1 1 0 0 1 0

1 0 0 1 1 1 00 1 1 0 0 1 0

0 0 1 0 0 1 0

Page 4: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky (logika) 4

Ekvivalentní vyjádření, negace a de Morganovy zákony „Prší“ „Není pravda, že neprší“

p p „Prší nebo sněží“ „Není pravda, že ani neprší ani nesněží“

(p q) (p q) „Prší a sněží“ „Není pravda, že neprší nebo nesněží“

(p q) (p q) „Není pravda, že prší a sněží“ „Neprší nebo nesněží“

(p q) (p q) „Není pravda, že prší nebo sněží“ „Neprší a nesněží“

(p q) (p q) „Není pravda, že jestliže prší pak sněží“ „Prší a nesněží“

(p q) (p q) „Jestliže prší, pak sněží“ „Neprší nebo sněží“

(p q) (p q) Pozor na implikaci!

Page 5: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 5

Logické vyplývání Formule A logicky vyplývá z množiny formulí M, značíme

M |= A, jestliže A je pravdivá v každém modelu množiny M. Poznámka: Okolnosti (definice 1) jsou zde mapovány jako

modely, tj. interpretace jednotlivých (mimologických) symbolů Co je to model? A) Výroková logika: ohodnocení (Pravda - 1, Nepravda - 0)

elementárních výroků p, q, …, při kterém nabývá celá formule hodnoty Pravda (1).

B) Predikátová logika: interpretace predikátových (P, Q, …) a funkčních symbolů (f, g, …), ve které nabývá celá formule hodnoty Pravda; P relaci R nad universem U (tj. R U … U), f funkci F nad universem U (tj. F: U … U U).

Page 6: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 6

Logické vyplývání Jak tedy ověříme, zda úsudek je platný?1. Sémantické metody2. Syntaktické metodyAd 1: Snažíme se ověřit, že pravdivost premis zaručuje

pravdivost závěruAd 2: Pomocí pravidel manipulujeme s formulemi

jakožto s posloupnostmi symbolů (abstrahujeme přitom od jejich významu). Pravidla však musí být korektní, tj. zachovávat pravdivost.

V obou případech můžeme použít přímý důkaz, nebo nepřímý důkaz sporem.

Nyní se budeme věnovat sémantickým metodám.

Page 7: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 7

Logické vyplývání ve výrokové logice

Je doma (d) nebo šel na pivo (p) Je-li doma (d), pak nás očekává (o) Jestliže nás neočekává, pak šel na pivo p.

d, p, o | d p, d o |= o p přímý Dk.: 1 1 1 1 1 1 závěr je1 1 0 1 0 1 1 0 1 1 1 1 pravdivý1 0 0 1 0 0 0 1 1 1 1 1 ve všech čtyřech 0 1 0 1 1 1 modelech0 0 1 0 1 1 předpokladů0 0 0 0 1 0

Úsudek je platný.

Page 8: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 8

Příklady: Logické vyplývání ve VL Je doma (d) nebo šel na pivo (p) Je-li doma (d), pak nás očekává (o) Jestliže nás neočekává, pak šel na pivo p.

d p, d o |= o pTabulka má 2n řádků! Proto důkaz sporem: Předpokládejme, že úsudek není správný. Pak tedy

mohou být všechny předpoklady pravdivé a závěr nepravdivý: d p, d o |= o p

1 1 0 1 0 0

1 0 1 0 0

spor

Page 9: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 9

(Výrokově) logické vyplývání

Všechny úsudky se stejnou logickou formou jako platný úsudek jsou platné:d p, d o |= o p

Za proměnné d, p, o můžeme dosadit kterýkoli elementární výrok:Hraje na housle nebo se učí.Jestliže hraje na housle, pak hraje jako Kubelík.Tedy Jestliže nehraje jako Kubelík, pak se učí.

Platný úsudek – stejná logická forma

Page 10: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 10

(Výrokově) logické vyplývání Jestliže platí, že je správný úsudek:

P1,...,Pn |= Z,pak platí, že je tautologie formule tvaru implikace:

|= (P1 ... Pn) Z. Důkaz, že formule je tautologie, nebo že závěr Z

logicky vyplývá z předpokladů : Přímý důkaz – např. pravdivostní tabulkou Nepřímý důkaz, sporem: k důkazu P1,...,Pn |= Z pak

stačí ukázat, že nemůže nastat případ, kdy všechny P1,...,Pn jsou pravdivé a Z je nepravdivý: tedy že P1 ... Pn Z je kontradikce, čili množina {P1, ..., Pn, Z} je sporná (nekonzistentní, nemá model).

Page 11: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 11

Důkaz tautologie ve VL|= ((p q) q) pSporem: ((p q) q) p negovaná f. musí být kontradikce 1 1 pokus, zda může být 1

1 1 1 1 0

spor

Při žádném ohodnocení není negovaná formule pravdivá, tedy původní formule je tautologie

Page 12: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 12

Nejdůležitější tautologie VL

Tautologie s 1 výrokovým symbolem:|= p p|= p p zákon vyloučeného třetího|= (p p) zákon sporu|= p p zákon dvojí negace

Page 13: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 13

Algebraické zákony pro konjunkci, disjunkci a ekvivalenci |= (p q) (q p) komutativní zákon pro |= (p q) (q p) komutativní zákon pro |= (p q) (q p) komutativní zákon pro

|= [(p q) r] [p (q r)] asociativní zákon pro |= [(p q) r] [p (q r)] asociativní zákon pro |= [(p q) r] [p (q r)] asociativní zákon pro

|= [(p q) r] [(p r) (q r)] distributivní zákon pro , |= [(p q) r] [(p r) (q r)] distributivní zákon pro ,

Page 14: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 14

Zákony pro implikaci|= p (q p) zákon simplifikace|= (p p) q zákon Dunse Scota|= (p q) (q p) zákon kontrapozice|= (p (q r)) ((pq) r) spojování předpokladů|= (p (q r)) (q (p r)) na pořadí předpokladů nezáleží

|= (p q) ((q r) (p r)) hypotetický sylogismus|= ((p q) (q r)) (p r) tranzitivita implikace|= (p (q r)) ((p q) (p r)) Fregův zákon

|= (p p) p reductio ad absurdum|= ((p q) (p q)) p reductio ad absurdum

|= (p q) p , |= (p q) q|= p (p q) , |= q (p q)

Page 15: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 15

Zákony pro převody

|= (p q) (p q) (q p)|= (p q) (p q) (q p)|= (p q) (p q) (q p)|= (p q) (p q)|= (p q) (p q) Negace implikace |= (p q) (p q) De Morgan zákony|= (p q) (p q) De Morgan zákony

Tyto zákony jsou také návodem jak negovat

Page 16: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 16

Negace implikaceNení pravda, že budu-li hodný, dostanu lyže.

(p q)Byl jsem hodný a (stejně) jsem lyže nedostal.(nesplněný slib) p q

Státní zástupce:Pokud je obžalovaný vinen, pak měl společníka

Obhájce:To není pravda !

Pomohl obhájce obžalovanému, co vlastně řekl?(Je vinen a udělal to sám!)

Page 17: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 17

Negace implikaceVěty v budoucnosti:

Jestliže to ukradneš, tak tě zabiju! (p q)To není pravda: Ukradnu to a (stejně) mě nezabiješ. p q

Ale: Bude-li zítra 3. světová válka, pak zahyne více jak 5 miliard lidí.To není pravda: Bude zítra 3.sv. válka a zahyne méně

než 5 miliard lidí ??? To jsme asi nechtěli říct, že určitě bude válka:Zamlčená modalita: Nutně, Bude-li zítra 3. světová

válka, pak zahyne více jak 5 miliard lidí. To není pravda: Možná, že Bude zítra 3.sv. válka, ale

zahynulo by méně než 5 miliard lidíModální logiky – nejsou náplní tohoto kursu.

Page 18: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 18

Ještě úsudky Převod z přirozeného jazyka nemusí být

jednoznačný:Jestliže má člověk vysoký tlak a špatně se mu

dýchá nebo má zvýšenou teplotu, pak je nemocen.

p – ”X má vysoký tlak”q – ”X se špatně dýchá”r – ”X má zvýšenou teplotu”s – ”X je nemocen” 1. možná analýza: [(p q) r] s

2. možná analýza: [p (q r)] s

Page 19: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 19

Ještě úsudky

Jestliže má Karel vysoký tlak a špatně se mu dýchá nebo má zvýšenou teplotu, pak je nemocen.

Karel není nemocen, ale špatně se mu dýchá Co z toho plyne?Musíme rozlišit 1. čtení a 2. čtení, protože

nejsou ekvivalentní, závěry budou různé.

Page 20: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 20

Analýza 1. čtení

1. analýza: [(p q) r] s, s, q ???a) Úvahou a úpravami: [(p q) r] s, s [(p q) r] (de

transpozice Morgan)

(p q) r (p q), r, ale platí q p, r (důsledky)Tedy Karel nemá vysoký tlak a nemá

vysokou teplotu.

Page 21: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 21

Analýza 2. čtení

2. analýza: [p (q r)] s, s, q ??? a) Úvahou a ekvivalentními úpravami: [p (q r)] s, s [p (q r)]

transpozice de Morgan:

p (q r) ale platí q druhý disjunkt nemůže být pravdivý je pravdivý první:

p (důsledek)Tedy Karel nemá vysoký tlak

(o jeho teplotě r nemůžeme nic usoudit)

Page 22: Přednáška 2:  Normální formy, úsudky

Úvod do teoretické informatiky 22

Důkaz obou případů1. analýza: [(p q) r] s, s, q |= p,r2. analýza: [p (q r)] s, s, q |= p D.ú. a) 1. případ - tabulkou D.ú.b) Sporem: k předpokladům přidáme negovaný závěr

(p r) (p r) a předpokládáme, že vše 1 [(p q) r] s, s, q, p r 1 1 0 1 1 0 0 0 0 0 1

p r = 0 spor

Page 23: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 23

Normální formy formulí výrokové logiky

Každé formuli výrokové logiky přísluší právě jedna pravdivostní funkce, zobrazení {p, q, r…} {0, 1} (pravdivostní tabulka).

Naopak však jedné takové funkci odpovídá nekonečně mnoho formulí, které jsou navzájem ekvivalentní.

Definice: Formule A, B jsou ekvivalentní, značíme A B, mají-li přesně stejné modely, tj. vyjadřují stejnou pravdivostní funkci. Jinými slovy, A B iff A |= B a B |= A.

Příklad: p q p q (p q) (p q) (p p) (p q) (p p) ...

Pozn.: Nesmíme plést ekvivalenci formulí A B s formulí tvaru ekvivalence A B. Platí však, že A B právě když formule A B je tautologie.

Př.: (p q) [(p q) (q p)] iff |= [(p q) ((p q) (q p))]

Page 24: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 24

Normální formy, příklad

p q f(p,q)1 1 1

1 0 00 1 00 0 1

Této pravdivostní funkci odpovídá nekonečně mnoho formulí:(p q) [(p q) (q p)] [(p q) (q p)] [(p q) (p q)] ….

Page 25: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 25

Normální formy formulí výrokové logiky

(p q) [(p q) (q p)] [(p q) (q p)]

[(p q) (p q)] …. Je užitečné stanovit nějaký normální tvar

formule – tj. vybrat mezi těmito nekonečně mnoha ekvivalentními formulemi jeden nebo dva kanonické normální tvary. Třída ekvivalentních formulí je pak reprezentována touto vybranou formulí v normálním tvaru.

V našem příkladu jsou v normálním tvaru formule na druhém a třetím řádku.

Page 26: Přednáška 2:  Normální formy, úsudky

26

Normální formy formulí výrokové logiky

Literál je výrokový symbol nebo jeho negace. Př.: p, q, r, ...

Elementární konjunkce (EK) je konjunkce literálů. Př.: p q, r r, ...

Elementární disjunkce (ED) je disjunkce literálů. Př.: p q, r r, ...

Úplná elementární konjunkce (ÚEK) dané množiny výrokových symbolů je elementární konjunkce, ve které se každý symbol z dané množiny vyskytuje právě jednou (buďto prostě nebo negovaný):

Př.: p q

Úplná elementární disjunkce (ÚED) dané množiny výrokových symbolů je elementární disjunkce, ve které se každý symbol z dané množiny vyskytuje právě jednou (buďto prostě nebo negovaný).

Př.: p q

Disjunktivní normální forma (DNF) dané formule je formule ekvivalentní s danou formulí a mající tvar disjunkce elementárních konjunkcí. Příklad: DNF(p p): (p p) (p p), p p

Konjunktivní normální forma (KNF) dané formule je formule ekvivalentní s danou formulí a mající tvar konjunkce elementárních disjunkcí. KNF(p p): (p p) (p p)

Úplná disjunktivní normální forma (UDNF) dané formule je formule ekvivalentní s danou formulí a mající tvar disjunkce úplných elementárních konjunkcí. UDNF(p q): (p q) (p q)

Úplná konjunktivní normální forma (UKNF) dané formule je formule ekvivalentní s danou formulí a mající tvar konjunkce úplných elementárních disjunkcí. UKNF(p q): (p q) (q p)

ÚDNF a UKNF dané formule nazýváme kanonickými (standardním) tvary této formule.

Page 27: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 27

Normální formy formulí výrokové logiky

Jak nalézt kanonický tvar (tj. UDNF, UKNF) formule?

UDNF: disjunkce = 1, když alespoň jedna UEK = 1, tj. všechny literály v této UEK = 1.

UKNF: konjunkce = 0, když alespoň jedna UED = 0, tj. všechny literály v této UED = 0.

Proto: UDNF (UKNF) sestrojíme z pravdivostní funkce tak, že si všímáme řádků, kde je hodnota 1 (0) a „zajišťujeme správnou hodnotu literálů“ – 1 (0).

Page 28: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 28

UDNF, UKNF tabulkou

Nalézt UDNF, UKNF formule: (pq)

UDNF: pqUKNF:(pq)(pq)(pq)

p q (pq) UEK UED

1 1 0 pq

1 0 1 pq

0 1 0 pq

0 0 0 pq

Page 29: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 29

UDNF, UKNF úpravamiMetoda ekvivalentních úprav:

p q p q (p q) UDNF [p (q q] [q (p p]

p q p q p q UKNFPozn.: Využíváme zde tautologie výrokové logiky, viz

předchozí presentace (slidy 26-29). Ve druhém řádku využíváme toho, že disjunkce libovolné formule A s kontradikcí (F) je ekvivalentní A: A F A

Ve třetím řádku jsou použity distributivní zákony Každá formule, která není kontradikce, má UDNF aKaždá formule, která není tautologie, má UKNF

Page 30: Přednáška 2:  Normální formy, úsudky

30

Opačná úloha: k UDNF, UKNF nalézt jednodušší „původní“ formuli Alchymista je zavřen ve vězení a dostane 5 motáků s výroky:

p: Podaří se ti přeměna olova ve zlato q: 1.4. bude tvůj švagr jmenován prokurátorem r: Po 1.4. bude soud.

První moták zní: p q rDruhý moták zní: p q rTřetí moták zní: p q rČtvrtý moták zní: p q rPátý moták zní: Alespoň jeden z předchozích motáků je pravdivý.

Otázka: Co se vlastně nebohý alchymista dověděl? Řešení: (p q r) (p q r) (p q r) (p q r).

Máme tedy nalézt formuli, k níž je tato UDNF ekvivalentní. Za pomoci distributivních zákonů dostaneme:

(p q r) (p q r) (p q r) (p q r) (p q) (r r) (p q) (r r) (p q) (p q) (p q)

Odpověď: Podaří se ti přeměna olova ve zlato tehdy a jen tehdy, když bude 1.4. tvůj švagr jmenován prokurátorem.

Page 31: Přednáška 2:  Normální formy, úsudky

Otázka: kolik binárních pravdivostních funkcí (a tedy logických spojek) existuje?

p q 0 1 2 3 4 5 6 7 8 9 A B C D E F

1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

NOR NAND

Page 32: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 32

Kolik nejméně a které spojky potřebujeme?

Dle věty o normálních tvarech stačí: , , (funkcionálně úplná soustava)

Ostatní vytvoříme skládáním funkcíNásledující soustavy pravdivostních funkcí jsou funkcionálně

úplné:1. pravdivostní funkce příslušející spojkám {, , },2. pravdivostní funkce příslušející spojkám

{, } nebo {, },3. pravdivostní funkce příslušející spojkám {, },4. pravdivostní funkce příslušející spojce {} nebo {}. Tedy k vyjádření libovolné pravdivostní funkce, tj. libovolné

formule ekvivalentním způsobem stačí jedna spojka!Buď Schefferova NAND nebo Pierceova NOR

Page 33: Přednáška 2:  Normální formy, úsudky

Úvod do Teoretické informatiky (logika) 33

Kolik nejméně a které spojky potřebujeme? Soustava {, , } stačí dle vět o normálních formách Převod na soustavu {, } nebo {, }:

A B (A B),A B (A B)

Převod na soustavu {, }: A B A B,A B (A B)

Převod na soustavu {} nebo {}:A AA, AB (AB)(AB), kde značí NAND,A AA, AB (AB)(AB), kde značí NOR.