Zde představíme formální logiku. Po stručném vyložení základů výrokové logiky se dostaneme k predikátové logice a shrneme pravidla pro negaci. Nakonec se pobavíme o použitelnosti logiky.
Co je to formální logika? Z pohledu praktického uživatele je to pokus rozpoznat situace, ve kterých je možné pomocí znalosti určitých faktů odvodit znalost jiných faktů. Ukazuje také, že v některých situacích určité postupy možné nejsou, což je rovněž důležité. Hned na začátku je třeba vyjasnit, že logika není schopna rozhodovat, která tvrzení jsou pravdivá, čistě podle jejich obsahu. Takže pokud se prostě zeptáte, zda mají trojúhelníky tři strany, tak nečekejte od logiky, že vám s tím pomůže. Logika dělá něco jiného. Vy jí dodáte vstupní data (ověření jejich pravdivosti je na vás), a podle jejich vzájemné provázanosti vám logika může pomoci rozhodnout, zda platí (či neplatí) také nějaké jiné věci. Pokud se rozhodnete začít předpokladem, že věta "Země má tvar krychle" je pravdivá, tak na tom logika neuvidí nic špatného—jejím úkolem není soudit. Ona vám jen pomůže nahlédnout, jaké důsledky by vyplynuly, pokud byste vyšli z takovéhoto předpokladu. V podstatě to znamená, že logiku zajímá jen struktura vytvořená jednotlivými daty, nikolvek data samotná.
Základním předmětem zkoumání formální logiky jsou výroky, což jsou věty, kterým lze přiřadit pravdivostní hodnotu (pravda/nepravda). Příklady: "13 > 10." "1 + 1 = 3." "Země je plochá." "Únor přichází po lednu." "Žižka jedl 4. října 1424 jablka." Poznamenejme, že u toho posledního vlastně nevíme, zda je to pravda či ne (Žižka umřel až o týden později), ale nějakou pravdivostní hodnotu (byť neznámou) to určitě má a tudíž je to výrok. Tradičně se výroky označují písmeny p, q, r atd. Několik příkladů, které nejsou výroky: "Ahoj." "Modrá je dobrá." "13." "Tož tak." "Prší." Poznamenejme, že to poslední není výrok, protože nelze ani hypoteticky určit, zda je to pravda či ne. Teprve když určíme místo a čas je možné rozhodnout — "Teď a zde prší" je buď pravda nebo nepravda, tedy je to výrok.
Ta pravá zábava začne, když začneme výroky spojovat, tam pak začíná logika. Výroky se dají spojovat a upravovat mnoha způsoby, ale z praktického pohledu je následujících pět operací zcela postačujících.
Je zvykem značit pravdu jako 1 a nepravdu jako 0 a zachycovat situace pomocí pravdivostních tabulek. Pokud znáte pravdivostní hodnotu p a q, najdete si je v prvních dvou sloupcích a pak vidíte hodnotu rozličných složených výroků v příslušném řádku.
p | q | ¬ p | p ∧ q | p ∨ q | p => q | p <=> q |
1 | 1 | 0 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 1 | 0 | 0 |
0 | 1 | 1 | 0 | 1 | 1 | 0 |
0 | 0 | 1 | 0 | 0 | 1 | 1 |
Takovéto složené výrazy lze dále kombinovat a vytvářet ještě složitější,
stejně jako u algebraických výrazů pomocí závorek určujeme prioritu
vyhodnocení. Aby se zjednodušil zápis, rozhodlo se dát nejvyšší prioritu ze
všech negaci, takže členy jako
U složených výrazů obvykle zkoumáme, jak se jejich pravdivostní hodnota mění v závislosti na hodnotě základních faktů p, q,..., takže se na takový výraz vlastně díváme jako na zobrazení s proměnnými p, q,... a chceme vidět, jak jeho hodnota závisí na hodnotách těchto proměnných. Jedna z možností, jak to vidět, je sestavit příslušnou pravdivostní tabulku. Typický výraz je někdy pravdivý a někdy nepravdivý, podle toho, na který řádek se díváme. Jsou ale výjimky.
Některé výroky jsou vždy pravdivé; těm se říká tautologie a často se značí
T (True), nejjednodušší příklad bude výrok
V aplikacích (např. v přírodních vědách) nás ale více zajímají výroky,
jejichž pravdivost nevyplývá z logiky, ale ze znalosti situace. Přesněji,
máme-li určitá fakta p, q,..., tak se může ukázat, že jisté
kombinace jejich pravdivostních hodnot nejsou možné v rámci tohoto světa (či v
rámci nějakého teoretického systému). To pak znamená, že se nedíváme jen na
strukturu dotyčného výroku (jaké logické operace se použily a jak), ale také
na obsah. Pokud například p znamená "někdo mi před měsícem usekl
hlavu" a q znamená "sedím teď na přednášce poslouchaje
pozorně výklad", tak ve světě čisté logiky je třeba uvažovat všechny
čtyři možnosti s 0 a 1 (viz tabulka výše). Víme ale, že v našem světě některé
kombinace (tedy řádky v tabulce) nemohou nastat, jmenovitě tyto dva výroky
nemohou být zároveň pravdivé, čímž se stává první řádek naí tabulky virtuální,
nikoliv reálný. To pak například znamená, že je výrok
Příklad:
Uvažujme výrok
1. Jak se toto přeloží do lidštiny?
Jestliže mi před měsícem ufikli hlavu, pak teď nesedím na přednáce
poslouchaje pozorně výklad.
2. Jaké má tento výrok pravdivostní hodnoty?
Sestavíme pro něj tabulku, nejprve jako přípravu určíme hodnoty negace
q a pak vyhodnotíme implikaci pomocí hodnot p a našeho
přípravného kroku.
p | q | ¬ q | p => ¬ q |
1 | 1 | 0 | 0 |
1 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 0 | 1 | 1 |
Teď si připomeneme, že v našem reálném světě první řádek nemůže nastat. Možné jsou tedy jen další tři a vidíme, že v našem světě je tato implikace vždy pravdivá.
V aplikacích tedy používáme slova pravda/neprava tímto způsobem: Pravdivý výrok je výrok, který nikdy nelze zfalsifikovat, tedy neexistuje (reálně) situace, kdy by nebyl pravdivý. Naopak nepravdivý výrok je takový, který není pravdivý. To znamená, že existuje situace, kdy není splněn, například "Po dešti vidíme duhu" je nepravdivý výrok, protože už jsme zažili déšť, po kterém jsme neviděli duhu. Nemusí selhat vždy, byly případy, kdy jsme duhu po dešti viděli, ale to tomu výroku nepomůže k pravdivosti, protože se na objevení duhy nelze spolehnout a výroky, které nejsou zcela spolehlivé, jsou v přírodních vědách na nic. To, že je pak považujeme za nepravdivé, tedy má smysl.
Poznámka stranou: I výroky, u kterých se ukáže, že nejsou pravdivé, nejsou zcela zbytečné, protože se často stávají zdrojem dobrých otázek (Umíme určit, za jakých podmínek selhávají? Mohli bychom z nich udělat pravdivé výroky tím, že je drobet upravíme?). Otázkami začíná pokrok.
S trochou zjednodušení se dá říct, že hlavní náplné práce matematika je hledat výroky, které jsou ve světě matematiky pravdivé, a dokazovat, že tomu tak opravdu je. To dokazování určitého výroku v zásadě znamená, že je třeba ukázat nade vší pochybnost, že pokud bychom pro dotyčný výrok sestavili pravdivostní tabulku, tak řádky, ve kterých je u výroku 0, nemohou v matematice nastat. Pomocí takových pravdivých výroků se pak pokoušíme dozvědět víc o matematických objektech. K čemu to je? Zatím to vypadá, že i příroda dodruje matematické zákonitosti, díky čemuž se z matematiky stává velice mocný nástroj na poznávání světa kolem. Ještě se k tomu vrátíme, nejprve se blíže podíváme na nejužitečnější z logických konstrukcí, jmenovitě implikaci.
Implikace je jednou z nejdůležitějších struktur, takže je zásadní dobře
chápat, jak funguje a co se s ní dá dělat. Uvažujme implikaci
Implikaci
Jsou také alternativní způsoby, jak implikaci
Příklad: Uvažujme implikaci "Jestliže je mi přes 21, pak je mi přes 18" (mluvíme zde o věku). Budete snad souhlasit, že tato implikace je v našem světě pravdivá, ať už tento výrok řekne kdokoliv, protože situace ["přes 21" pravda — "přes 18" nepravda] se nemůže jedné konkrétní osobě stát, čímž se vyloučí jediný řádek v pravdivostní tabulce, kde má implikace 0. Máme tedy pravdivou implikaci. Teď se podíváme na alternativní způsoby, jak ji vyjádřit.
Nejprve toto: "Být přes 21 je postačující pro bytí přes 18" má smysl, zatím dobré. Abychom zdůraznili, že logiku zajímá jen pravdivost, ne obsah, zkusíme to trochu vyšperkovat: "Znalost, že je někomu přes 21, je postačující ke znalosti, že té osobě je přes 18." A přesně takto implikace používáme. Víme, že nějaká informace je pravdivá, a pomocí pravdivé implikace pak určíme pravdivost další informace. Úvahu lze vyjádřit následovně.
Platí: Jestliže je mi přes 21, pak je mi přes 18.
Předpokládáme, že platí: Je mi přes 21.
Závěr: Je mi přes 18.
Toto je klasický příklad využití implikací a způsob, kterým jsme to zapsali,
sahá až do středověku. Typický scénář je následující. Zajímá nás, zda je
nějaký výrok q pravdivý či ne, ale z nějakého důvodu to nechceme (či
nemůžeme) ověřovat přímo. Naštěstí máme k dispozici pravdivou implikaci
Platí: Jestliže je mi přes 21, pak je mi přes 18.
Předpokládáme, že platí: Není mi přes 21.
Závěr: ???
To ukazuje, že pravdivá implikace je pěkný nástroj na předávání informace,
ale nástroj nedokonalý, protože dokáže předat jen jeden typ informace. Tato
vlastnost implikace se také projeví jiným způsobem. Když máme pravdivou
implikaci
Platí: Jestliže je mi přes 21, pak je mi přes 18.
Předpokládáme, že platí: Je mi přes 18.
Závěr: ???
To ukazuje, že implikaci nejde jen tak obrátit. Formálně řečeno, implikace
Teď se podíváme na ten druhý úhel pohledu. Teorie říká, že když máme
pravdivou implikaci, tak je q nutná podmínka pro p, což v
našem příkladě znamená, že "Být přes 18 je nutné pro bytí přes 21".
Zdá se, že tohle rozhodně funguje. Zase podotkneme, že logika pracuje s
informacemi a ne přírodou, takže lepším vyjádřením by bylo
"Pravdivost toho, že je někomu přes 18, je nutná pro pravdivost toho, že
je dotyčné osobě přes 21." Jak se takové tvrzení dá využít? Jako záporný
test, který nám může ušetřit práci. Představte si, že vyšetřujeme nějakou
vlastnost p a jako obvykle z ní nemáme velkou radost. Máme nicméně
pravdivou implikaci
Platí: Jestliže je mi přes 21, pak je mi přes 18.
Předpokládáme, že platí: Není mi přes 18.
Závěr: Není mi přes 21.
Všimněte si, že zde vlastně přenášíme informaci, v tomto případě zápornou. Jinými slovy, máme novou implikaci.
Platí: Jestliže je mi přes 21, pak je mi přes 18.
Proto platí: Jestliže mi není přes 18, pak mi není přes 21.
To se dá snadno vyjádřit pomocí negací. Máme-li implikaci
Tento příklad uzavřeme poznámkou, kterou můžete bez problémů přeskočit na další odstavec. Jistě je vám jasné, že jsme v tom příkladě mohli použít libovolná čísla (s tím, že první je větší). Náš výběr oněch dvou byl dán tím, že mají určitý význam. V některých zemích je 21 legálním věkem pro pití alkoholu. V mnohem více zemích je 18 hraničním věkem pro získání řidičského průkazu, občanky, práva volit a vůbec se to považuje za věk vstupu do světa dospělých. Naše implikace by se tak dala vyjádřit také následujícím způsobem: Pokud můžete (legálně) pít alkohol, tak můžete volit. Je to pravdivá implikace, ale dost srandovní, je krásným příkladem toho, že mezi oněmi dvěma částmi implikace nemusí být nějaká reálná, materiální vazba, je to čistě jen otázka toho, jak spolu interagují pravdivostní hodnoty těchto částí.
V matematice pracujeme s postačujícími a nutnými podmínkami často. V typickém případě nás zajímá, zda je splněna nějaká vlastnost P, ale dotyčná vlastnost je komplikovanější a neumíme přímo rozhodnout, zda funguje či ne. Proto se raději snažíme najít jiné podmínky, které se snadněji ověřují, rozhodně dáváme přednost postačujícím (pokud zjistíme, že platí, pak je i P pravdivé), ale potěší i podmínky nutné (ty nám omezí rozsah situací, za kterých máme P zkoumat, protože v situacích, kdy nutná podmínka selže, nemůže už platit ani P).
Viděli jsme, že když máme pravdivou implikaci, tak to ještě obecně neznamená, že v ní dokážeme obrátit směr a dostaneme zase pravdivou implikaci. Někdy ale máme štěstí a také obrácená implikace je pravdivá. Pak dostáváme ekvivalenci. Je to vlastně pravda? Pravdivou ekvivalenci jsme definovali jako situaci, když vždy souhlasí pravdivosti výroků na obou stranách. Ukážeme, že obousměrná implikace a ekvivalence jsou totéž.
Nejprve budeme předpokládat, že máme pravdivé implikace
• Jestliže je p pravdivé, pak je i q pravdivé.
• Jestliže je q pravdivé, pak je i p pravdivé.
• Jestliže je p nepravdivé, pak je i q nepravdivé.
• Jestliže je q nepravdivé, pak je i p nepravdivé.
To ale znamená, že p a q musí mít stejné pravdivostní hodnoty.
Naopak když máme ekvivalenci, tak máme také ony čtyři výroky výše, tedy i
implikace v obou směrech. To, že je ekvivalence vlastně obousměrná
implikace, je vystiženo i v jejím značení
Ekvivalence jsou ohromné. Představme si zase, že se chceme dozvědět něco o
jisté vlastnosti q, ale raději bychom se v ní moc nevrtali. Pokud
budeme mít k dispozici pravdivou ekvivalenci
Protože ekvivalence je vlastně obousměrná implikace, je výrok nalevo zároveň nutnou a postačující podmínkou pro výrok napravo a naopak. Ekvivalence je již z podstaty symetrická. Při práci s ekvivalencemi je často nahrazujeme dvěma implikacemi a někdy i od těch ještě přejdeme k vyjádření pomocí disjunkce popsanému výše.
[p <=> q] = [(p => q) ∧ (q => p)] = [(¬ p ∨ q) ∧ (¬ q ∨ p)].
Uvažujme následující věcičku: "x > 7". Není to logický výrok, protože mu nemůžeme přiřadit pravdivostní hodnotu. Výrokem se to ale stane, když specifikujeme, co vlastně je to x. To je velmi užitečné, dá se mluvit o jakémsi "výroku s proměnnou", logici proto všechno samozřejmě mají učená jména a doporučujeme čtenáři, aby se zakousl do nějaké pěkné knihy o predikátové logice. Zde se jako obvykle jen podíváme na základy.
Uvažujme ono porovnání výše "x > 7". Nejjednodušší způsob, jak z toho udělat výrok, je zvolit nějakou hodnotu proměnné. Například
pro x = 3, x > 7
je nepravdivé tvrzení, zatímco
pro x = 13, x > 7
je pravdivé tvrzení. Tohle je ovšem příliš jednoduché, zajímavější to začne být, když začneme uvažovat množiny hodnot a specifikujeme, jak z oněch množin vybíráme. Tomu se říká kvantifikátory. Nechť je M nějaká množina věcí a P je nějaká vlastnost, kterou lze aplikovat na objekty z M. Pro x z M označíme jako P(x) to, že P pro toto konkrétní x platí. Pak používáme násedující kvantifikátory:
Obecný kvantifikátor: &bnsp;
Je zjevné, že toto tvrzení je (jako celek) pravdivé přesně tehdy, když je P pravdivé pro všechna x ze zadané množiny. Kratší vyjádření jsou možná, třeba "Pro každé x z M platí P."
Příklady:
•
Toto je pravda, každé přirozené číslo je po umocnění na druhou a přičtení
jedničky kladné.
•
Toto není pravda, protože 2 je prvočíslo, tedy leží v množině, ze které vybíráme,
ale není liché. Tento výrok lze také vyjádřit tímto způsobem:
•
Existenční kvantifikátor: &bnsp;
Tento výrok je (jako celek) evidentně pravdivý přesně tehdy, jestliže je P pravdivé pro alespoň jedno x ze zadané množiny. I zde jsou možná kratší vyjádření, například "Existuje x v M takové, že P platí."
Příklady:
•
Toto je pravda, podmínka platí třeba pro n = 5, je také pravdivá
pro
•
Toto není pravda, žádné přirozené číslo nedá po umocnění na druhou 13.
Pokud má P více proměnných, je pak třeba více kvantifikátorů. Pokud nejsou stejného druhu, pak silně záleží na pořadí. Podívejme se na následující příklady:
•
Toto říká: Kdykoliv nám někdo dá číslo, tak k němu dokážeme najít další,
které je větší. To je pravda. V tomto pořadí kvantifikátorů má každé
x své vlastní y.
•
Toto říká: Existuje číslo y takové, že všechna reálná čísla jsou
menší než toto číslo. To neplatí. Zde by jedno y mělo fungovat universálně
pro všechna x.
Měli byste znát, jak správně tvořit negace výroků, je to potřeba například při vytváření obměny implikace nebo při dokazování sporem. Začneme tím, že vypíšeme negace základních pěti logických operací:
•
•
•
•
•
Pro kvantifikátory máme následující praidla:
•
•
Když se nad tím zamyslíte, tak zjistíte, že tato pravidla jsou v zásadě jen selský rozum. Například opak výroku "Je člověk s modrými vlasy" je "Všichni lidé selhávají ve vlastnosti mít modré vlasy", přesně podle posledního pravidla výše.
Vlastnost P nebo výroky p, q mohou také být komplikovanější včetně možné přítomnosti dalších kvantifikátorů, takže pokud máme negovat komplikovanější výraz, tak se prostě začne operací, která se dělá poslední, a postupně se propracujeme tak hluboko, jak potřebujeme. Coby příklad se vrátíme k výroku výše se dvěma kvantifikátory a krok za krokem jej znegujeme.
Výrok:
Negace:
Příklady negace uvidíte i v příští sekci.
Kde se dá logika použít? Lidé se na ni často odvolávají (To není logické!), ale s jejím aplikováním na reálný život to není tak jednoduché. První problém je s jazykem. Lidé sice často používají stejná slova (a, nebo, jestliže-pak), ale jejich běžný význam není úplně stejný jako ve formální logice. Asi nejčastější problém nastává s implikací. Když vám rodiče řeknou "Jestli budeš hodný, pak dostaneš cukrátko," tak tím ve skutečnosti také myslí, že jestliže hodní nebudete, tak nedostanete nic. Jinými slovy, říkají implikaci, ale myslí ekvivalenci: "Cukrátko dostaneš právě tehdy, když budeš hodný." Toto zmatení ohledně implikace a ekvivalence je široce rozšířené, což vysvětlí, proč je tolik studentů překvapeno, když poprvé slyší, co je to ve skutečnosti implikace.
Dalším problémem je používání "nebo", protože to lidé někdy chápou
jinak. Jmenovitě, někdy se to chápe tak, že je celý výrok pravdivý právě
tehdy, když je přesně jedna ze složek pravdivá, rozhodně ne když platí obě
(což je zásadní rozdíl v porovnání se správným "logickým nebo").
Když vám například rodiče řeknou "Dojíš zeleninu, nebo nebude zákusek,"
tak se rozhodně nečeká, že by mohly nastat obě situace najednou. To se často
zdůrazní pomocí "buď—anebo". To už ale mluvíme o jiné operaci,
ve formální logice tomu říkáme "vylučovací nebo" a značíme
Jak vidíme, interpretovat běžný hovor pomocí formální logiky může být zrádné, neexistuje spolehlivý způsob, jak překládat, co lidé normálně řeknou, do jazyka logických výroků (zvlášť když často ani ten, kdo mluví, pořádně neví, co tím myslel).
I když necháme problém překladu z lidštiny to logičtiny stranou, je tu další
problém. Celá mašinerie formální logiky dokáže pracovat jen s výroky, tedy s
potenciálními fakty, které jsou buď pravdivé nebo nepravdivé. Když vynecháme
detaily, tak jsou dvě hlavní podmínky, které musíme splnit, pokud někde
chceme aplikovat formální logiku. Za prvé, nemůže se stát, že by něco bylo
zároveň pravda i nepravda. Za druhé, páry "něco—ne něco" musí vždy
pokrýt všechny možnosti, jinými slovy, jeden z nich musí být vždy pravdivý.
Formálně se dá říct, že musí vždy platit následující dvě pravidla: Pro
libovolný výrok a musí být vždy výrok
Existují světy, které lze převést do světů černé a bílé, jmenovitě přírodní vědy pracující s věcmi měřitelnými a kategorizovatelnými. Nedále v tom je matematika, protože ta vlastně vůbec nepracuje s reálným světem, ale zkoumá umělé světy vytvořené z čisté myšlenky. Dá se dokonce říct, že matematika je logika plus nějaká algebra přimíchaná do směsi. Pokud tedy chceme rozumět matematice, musíme umět pracovat s logikou, a to, co jsme zde dali, by mělo stačit.