Zběžný pohled na formální logiku

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.

Výroková logika, tvrzení a spojky

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 
1101111
1000100
0110110
0010011

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 ¬ p není třeba dávat do závorek, negace se vyhodnocuje první.

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 "p ∨ ¬ p", který je pravdivý bez ohledu na to, co je vlastně p (výrok "Tu zkoušku jsem udělal nebo neudělal" je vždy pravda). Na druhou stranu, výrok "p ∧ ¬ p" je vždy nepravdivý ("2 + 2 je 4 a není to 4"). Takové výroky se nazývají kontradikce a často značí F (False).

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 ∧ q" v našem světě vždy nepravdivý (přinejmenším v současnosti :-]).

Příklad: Uvažujme výrok "p => ¬ q", kde p a q jsou jako výše.

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 
1100
1011
0101
0011

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 dodržuje 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.

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 p => q. Asi nejzajímavější je, že pokud je předpoklad p nepravdivý, tak už je implikace jako celek pravdivá, bez ohledu na to, jak je na tom závěr q. Některým začátečníkům to přijde podivné či matoucí, možná pomůže, když si budete implikace představovat jako sliby. Což takhle toto: "Když budeš hodný, dostaneš bonbón." Tento slib nás zavazuje jen v případě, že je příjemce hodný. Pokud hodný nebyl, pak ať už uděláme cokoliv, tento slib (implikace) nebude porušen. Ať už bonbón dáte či ne, výrok není falešný. Ještě uvidíme, že toto chování v aplikacích funguje dobře.

Implikaci p => q lze vyjádřit dalšími způsoby. Z čistě logického pohledu lze implikaci nahradit výrazem "¬ p ∨ q", můžete si pro něj sestavit pravdivostní tabulku a uvidíte, že tento nový výrok má přesně stejné hodnoty jako implikace, proto říkají totéž.

Jsou také alternativní způsoby, jak implikaci p => q číst. Namísto "Jestliže p pak q" nebo "p implikuje q" můžeme říct, že "p je postačující podmínka pro q" nebo že "q je nutná podmínka pro p". Všechny tyto věty mají zcela stejné pravdivostní hodnoty, tedy buď jsou všechny pravdivé nebo všechny nepravdivé. Příklad to snad vyjasní.

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 "p => q", kde se p zkoumá mnohem snáze než q. Takže se podíváme na p, a když se ukáže jako pravdivé, tak už bez další práce víme jistě, že i q je pravdivé. Skvělé. Je tu ale jeden háček. Co když se podíváme na p a ono to vyjde nepravdivě? Pak o q nevíme vůbec nic, formální logika nám nedovoluje dojít k žádnému závěru. Konec konců, u našeho příkladu je to zjevné.

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 "p => q", tak není nutně pravda, že je q postačující podmínkou pro p. Zkusíme si to zase na našem příkladě.

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 "p => q" a její obrácená implikace (konverze) "q => p" jsou zcela rozličná zvířátka a jejich pravdivostní hodnoty obecně nemusí být stejné. Když tedy máme pravdivou implikaci, tak ji můžeme využit jen v tom správném směru.

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 "p => q" a rozhodneme se raději podívat na q. Víme už, že pokud zjistíme, že je q pravdivé, tak nám to nepomůže, ale co když zjistíme, že q neplatí? Protože je q nutné pro p, vyplývá z toho, že p musí být také nepravdivé. To může být zpráva dobrá či špatná, každopádně je důležité, že to víme, tudíž už na p nemusíme dále pracovat.

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 "p => q", pak definujeme její obměnu jako implikaci "¬ q => ¬ p". Právě jsme odvodili (a formální logika souhlasí), že pravdivost obměny a pravdivost původní implikace jsou vždy stejné: Jestli je jedna z nich pravdivá, musí platit i ta druhá, a naopak. Obměny jsou v matematice dost užitečné, viz Nepřímý důkaz v příští sekci.

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

Ekvivalence.

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 "p => q" a "q => p". Pak musí být pravdivé také jejich obměny a dostáváme následující čtyři tvrzení.

  • 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í "p <=> q".

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 "p <=> q", tak se stačí podívat na pravdivost p a závěry budou platit i pro q, což je ohromné. Díky tomu jsou ekvivalence velmi žádné, ale také vzácné, získávají se obtížněji.

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

Predikátová logika

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; xMP(x)   čteme takto: "Pro každé x z M platí, že vlastnost P je pro toto x pravdivá."

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:
  • n∈ℕ: n2 + 1 > 0.
Toto je pravda, každé přirozené číslo je po umocnění na druhou a přičtení jedničky kladné.
  • n∈{x∈ℕ; x je prvočíslo}: n je liché.
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:
  • n∈ℕ: (jestliže je n prvočíslo, pak je n liché).

Existenční kvantifikátor: &bnsp; xMP(x)   čteme takto: "Existuje nějaké x v M takové, že vlastnost P je pro toto x pravdivá."

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:
  • n∈ℕ: (n − 3)2 > 1.
Toto je pravda, podmínka platí třeba pro n = 5, je také pravdivá pro n = 1. Stačilo by jen jedno takové číslo, nějaká navíc jsou irelevantní, ale také neuškodí.
  • n∈ℕ: n2 = 13.
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:

  • x∈ℝ ∃y∈ℝ:  y > x.
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.
  • y∈ℝ ∀x∈ℝ:  y > x.
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.

Negace

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í:

  • ¬ [¬ p]  =  p;
  • ¬ [p ∧ q]  =  ¬ p ∨ ¬ q;
  • ¬ [p ∨ q]  =  ¬ p ∧ ¬ q;
  • ¬ [p => q]  =  p ∧ ¬ q;
  • ¬ [p <=> q]  =  (p ∧ ¬ q) ∨ (q ∧ ¬ p).

Pro kvantifikátory máme následující praidla:

  • ¬ [∀xM:  P(x)]  =  ∃xM:  ¬ P(x);
  • ¬ [∃xM:  P(x)]  =  ∀xM:  ¬ P(x);

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: x∈ℝ ∃y∈ℝ:  y > x.
Negace: x∈ℝ  ¬ [∃y∈ℝ:  y > x],   tedy   x∈ℝ  ∀y∈ℝ:  ¬ [y > x],   tedy   x∈ℝ ∀y∈ℝ:  y ≤ x.

Příklady negace uvidíte i v příští sekci.

Použitelnost logiky

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 "p xor q".

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 a ∧ ¬ a nepravdivý a výrok a ∨ ¬ a pravdivý. Tyto dva požadavky jsou evidentně propojeny a stejně evidentně nejsou pravda v reálném životě. Ve skutečnosti pracujeme většinu doby s kategoriemi, které se těmto základním požadavkům vzpírají. Člověk může být trochu dobrý a trochu špatný, u některých lidí se prostě neví. Formální logika zná jen černou a bílou, zatímco život je v odstínech šedi. Není proto překvapením, že logika příliš nepomůže u těch opravdu důležitých otázek lidské existence, i když je pravda, že pomůže alespoň při čištění argumentů a zpřesňování myšlenek. To vysvětlí, proč se filosofové a teologové s logikou docela vyřádí, patří mezi jejich největší uživatele. Vysvětlí to ovšem také, proč tyto dvě oblasti nenabízejí na otázky života zaručené odpovědi, pouze názory.

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.


Logika v matematice