Úvod do teorie množin a logiky. David Bartl

Podobné dokumenty
teorie logických spojek chápaných jako pravdivostní funkce

Úvod do teorie množin a logiky 2

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

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

Základy logiky a teorie množin

Matematická logika. Miroslav Kolařík

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

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

Základní pojmy matematické logiky

Výroková logika - opakování

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

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

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

4.2 Syntaxe predikátové logiky

Úvod do informatiky. Miroslav Kolařík

Matematická logika. Lekce 1: Motivace a seznámení s klasickou výrokovou logikou. Petr Cintula. Ústav informatiky Akademie věd České republiky

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

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

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

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

Sémantika predikátové logiky

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

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

Matematická logika. Miroslav Kolařík

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

Matematika pro informatiky KMA/MATA

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

Matematická logika. Rostislav Horčík. horcik

platné nejsou Sokrates je smrtelný. (r) 1/??

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

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

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

1. Matematická logika

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 α

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

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

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

1. Matematická logika

Matematická analýza 1

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

LOGIKA VÝROKOVÁ LOGIKA

Matematická logika. Rostislav Horčík. horcik

1 Úvod do matematické logiky

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

KMA/MDS Matematické důkazy a jejich struktura

Matematická indukce, sumy a produkty, matematická logika

Logické programy Deklarativní interpretace

Převyprávění Gödelova důkazu nutné existence Boha

1 Základní pojmy. 1.1 Množiny

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

2.2 Sémantika predikátové logiky

postaveny výhradně na syntaktické bázi: jazyk logiky neinterpretujeme, provádíme s ním pouze syntaktické manipulace důkazy

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

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

Základy matematické logiky

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

přednáška 2 Marie Duží

Matematická logika. Rostislav Horčík. horcik

Příklad z učebnice matematiky pro základní školu:

1. MATEMATICKÁ LOGIKA A MNOŽINY

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

Hilbertovský axiomatický systém

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Množiny, funkce

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

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

Výroková logika dokazatelnost

Klasická výroková logika - tabulková metoda

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

Stefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Množiny, relace, zobrazení

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

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

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

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

ZÁKLADY LOGIKY A METODOLOGIE

2. Množiny, funkce. Poznámka: Prvky množiny mohou být opět množiny. Takovou množinu, pak nazýváme systém množin, značí se

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

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

Matematické důkazy Struktura matematiky a typy důkazů

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

Predikátová logika Individua a termy Predikáty

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

Logika Libor Barto. Výroková logika

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

Fuzzy logika a reálný svět, aneb jsou všechny hromady skutečně malé?

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

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

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

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

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

Logika, výroky, množiny

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

Nepřijde a nedám 100 Kč měl jsem pravdu, o této

1. Predikátová logika jako prostedek reprezentace znalostí

Obsah Předmluva Rekapitulace základních pojmů logiky a výrokové logiky Uvedení do predikátové logiky...17

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

NAIVNÍ TEORIE MNOŽIN, okruh č. 5

VÝROKOVÁ LOGIKA. Výrok srozumitelná oznamovací věta (výraz, sdělení), která může být buď jen pravdivá nebo jen nepravdivá..

Predikátová logika dokončení

Transkript:

Úvod do teorie množin a logiky David Bartl

2

Místo předmluvy Dovoluji si na tomto místě jen skromně poznamenat, že (ačkoliv autor těchto skript) nejsem specialistou na teorii množin. Mohu předat dál jen to, co jsem se sám naučil. Rád bych proto poděkoval svým učitelům matematiky. Zejména bych chtěl poděkovat panu Prof. RNDr. Petru Vopěnkovi, DrSc. Zde podaný přístup k teorii množin do značné míry vychází z jeho pozoruhodných přednášek o úvodních partiích tohoto předmětu, které jsem měl příležitost navštěvovat. Rovněž bych rád poděkoval panu Prof. RNDr. Petru Štěpánkovi, DrSc., na jehož přednáškách se mi dostalo příležitosti získat potřebné znalosti (klasické) logiky. V neposlední řadě bych za obětavou pomoc rád poděkoval panu RNDr. Ladislavu Mišíkovi, CSc., a Mgr. Pavlíně Kukulišové, bez jejichž podpory by napsání těchto skript nebylo možné. V Ostravě dne 28. listopadu 2003 David Bartl 3

4

Obsah Místo předmluvy 3 1 První seznámení s teorií množin 7 2 Úvod do logiky 19 2.1 Stručný úvod do výrokové logiky.................. 19 2.2 Stručný úvod do predikátové logiky................. 26 3 Axiomy teorie množin 39 3.1 Jazyk teorie množin......................... 39 3.2 Zermelův-Fraenkelův axiomatický systém teorie množin............................. 40 4 Mohutnost (kardinalita) množin 59 Použitá literatura 65 5

6 OBSAH

Kapitola 1 První seznámení s teorií množin Začněme intuitivním zavedením pojmu množina. Množinou (v intuitivním smyslu) rozumíme shrnutí určitých objektů (čísel, bodů, útvarů v rovině, předmětů našeho nazírání,... ) o těchto objektech hovoříme jako o prvcích (tj. elementech) do jediného většího celku-množiny, který je obsahuje. Množina je dostatečně určena, jestliže o každém objektu (číslu, bodu,... ) jsme schopni říci, zda do dané množiny patří, nebo ne. Dále platí, že každý prvek může být v množině obsažen jen (tzn. nejvýše) jednou. Jinými slovy, žádný prvek v množině nemůže být obsažen dvakrát (nebo třikrát apod.). Právě uvedené tři odstavce možná vypadají velice odborně, jako skutečné matematické definice. Ale není tomu tak. Pojem množiny tímto popisem příliš objasněn není. Pokusili jsme se sice zavést pojem množiny, ale nepodařilo se nám to bez toho, že bychom k tomu použili další, dosud neobjasněné pojmy, jako shrnutí nebo objekt. Skutečný matematik se proto okamžitě začne ptát: Co je to shrnutí? Co je to objekt? ( Co je to číslo? ) Čtenář nyní možná očekává, že autor skript tyto pojmy za chvíli vysvětlí. Nebo že autor ví o nějakém jiném řešení naznačeného problému (jak pojem množiny zavést) a řešení časem prozradí. Bohužel, není tomu tak. Pojem množiny je jeden ze základních matematických pojmů, který nelze definovat. Není možné jej definovat, aniž bychom se odvolali na některý jiný, dosud nezavedený pojem. Situace je taková, že pojem množiny se nám nepodaří si vzájemně vysvětlit, aniž bychom už dopředu alespoň nějakou představu o pojmu množiny měli. (Není nutné vědět, že se tomuto pojmu říká zrovna množina, ale je potřeba už předem tento pojem znát.) Je proto nutné se odvolat na vlastní intuici to jsme ostatně naznačovali už na samém začátku této kapitoly. Jestliže tedy čtenář první tři odstavce této kapitoly přečetl a bez nesnází jim porozuměl, je to zřejmě z důvodu, že již nějakou vlastní intuitivní představu o pojmu množiny 7

8 KAPITOLA 1. PRVNÍ SEZNÁMENÍ S TEORIÍ MNOŽIN měl (ať už ze školy základní nebo střední nebo i odjinud). Historická poznámka. Samotný pojem množina je poměrně mladý. Až do 19. století se v matematice nepoužíval. (Ačkoliv matematici samozřejmě i předtím pracovali se souhrny objektů. Ve své intuitivní podobě tedy pojem množiny byl v matematice přítomen i dříve.) V českém jazyce se slovo množina po prvé objevilo roku 1884 v článku českého matematika Matyáše Lercha (1860 1922). Slovo množina je v našem jazyce patrně odvozeno od slova množství. Již jsme si uvedli, že množina je dostatečně určena, pokud o každém objektu (prvku) jsme schopni říci, zda do dané množiny patří, nebo ne. Množinu nejsnáze určíme, když všechny její prvky vyjmenujeme. Seznam prvků množiny uvádíme ve složených závorkách. Na příklad { a, b, c } je množina obsahující tři písmena a, b a c. (Správný matematik se opět zeptá: Co je to písmeno? ) Jiným příkladem je množina {10, 11, 12,..., 98, 99} neboli množina všech přirozených čísel od 10 do 99. Pro zkrácení zápisu lze použít tři tečky. (Čtenář jejich použití vidí v příkladu.) Jsou tyto množiny dostatečně určeny? Jsme o každém objektu schopni říci, zda do dané množiny patří, či nikoliv? Ano. Zkusme si klást následující otázky: Je číslo 10 prvkem množiny {10, 11, 12,..., 98, 99}? Odbočka. Abychom množinu {10, 11, 12,..., 98, 99} nemuseli neustále opisovat, proveďme následující označení. Položme A = {10, 11, 12,..., 98, 99}. Od této chvíle bude znak A mít stejný význam jako množina všech přirozených čísel od 10 do 99. Znak A tuto množinu bude označovat. (Čtenář se tak kromě použití tří teček naučil další dovednost: označovat množiny.) Konec odbočky. Vraťme se k naší otázce. Odpověď je ano, číslo 10 je prvkem množiny A. Lze též říkat, že číslo 10 patří do množiny A nebo že číslo 10 náleží množině A. Stručně píšeme, že 10 A. Znak náleží je odvozen od slova element (prvek). (Slovo element pochází z latiny, kde znamenalo prvek, živel, počátek.) A proč platí 10 A? Protože číslo 10 je uvedeno v seznamu prvků množiny A viz výše. Jiná otázka: je číslo 9 prvkem množiny A? Ne. Píšeme 9 / A. Číslo 9 nepatří do množiny A, protože nebylo uvedeno v seznamu jejích prvků.

9 A tak dále (pro ostatní přirozená čísla i pro jiné objekty). Vidíme, že množiny zavedené výčtem svých prvků jsou dobře určeny: o každém objektu jsme schopni říci, zda do takto zavedené množiny patří, nebo ne (podíváme se do seznamu). Podívejme se na jiný příklad množiny zavedené výčtem. Položme A = {a, a}, kde a je nějaký prvek. Znak a je proměnná, která má pro tuto chvíli význam nějakého, blíže neurčeného prvku, označuje ten prvek. Proměnná a je pro tuto chvíli konstantní. Proměnná A oproti dřívější úvaze (kde označovala množinu celých čísel od 10 do 99) změnila svůj význam. Nyní označuje množinu {a, a}. Předpokládám, že čtenář se se zápisem (množinou) {a, a} ještě nesetkal a je překvapen. Čtenář si možná klade otázku, zda uvedený zápis považovat za množinu a zda je to vůbec dobře. Ověřme tedy, že A je množina a že je dobře určena. Zodpovíme tedy následující dvě otázky: Platí a A? Ano. Prvek a je totiž uveden v seznamu prvků výše zavedené množiny A. (V seznamu je dokonce uveden dvakrát.) Nechť c je nějaký jiný prvek, c a. Platí c A? Ne. Prvek c není uveden v seznamu prvků množiny A. (Kromě prvku a tam žádný jiný prvek uveden není.) Vidíme, že množina A je dobře určena: o každém objektu jsme schopni říci, zda do množiny A patří, nebo nepatří. Uvažujme nyní množinu B = {a} (prvek a je zde uveden pouze jednou). Platí a B? Ano. Jestliže c je prvek různý od a (c a), platí c B? Ne. Výše uvedenými úvahami jsme dokázali svoje první (matematické) tvrzení: Množiny A = {a, a} i B = {a} mají stejné prvky. Co to znamená? Znamená to, že pro každý prvek c platí: c {a, a} právě tehdy, když c {a}. Důkaz. Budiž c nějaký prvek. Nyní jsou dvě možnosti: (a) buď c = a, (b) anebo c a. A třetí možnost není! (Tertium non datur!) Ad (a). Když c = a, pak prvky c i a jsou totožné (obě proměnné c i a označují jeden a tentýž prvek). A již víme, že a A i a B. Ad (b). Když c a, pak jak už víme, c / A ani c / B. Uvažujeme-li obě možnosti dohromady (a více možností není), dostáváme, že c A právě tehdy, když c B, q. e. d. Tři poznámky k důkazu. (1) Čtenáře asi udivilo, proč jsme v důkazu silně zdůraznili, že třetí možnost není, protože na první pohled se to zdá být samozřejmé. Zanedlouho se však seznámíme s tzv. Russellovým paradoxem, který ve své době v matematice způsobil hlubokou krizi. Jako jedno možné řešení této krize někteří matematici navrhovali odmítnout tzv. zákon vyloučeného třetího (latinsky tertium non datur ), neboli zákon, že zde žádná třetí možnost není.

10 KAPITOLA 1. PRVNÍ SEZNÁMENÍ S TEORIÍ MNOŽIN My s tímto zákonem naopak souhlasíme a v důkazu jsou zvýrazněna místa, kde byl použit. (2) Na konci důkazu stojí latinská zkratka q. e. d., často psaná i velkými písmeny (Q. E. D.), za slova quod erat demonstrandum. Česky to znamená což bylo dokázati. Odtud je i česká zkratka c. b. d. (jen malými písmeny) se stejným významem. Na konci každého důkazu totiž bývá velmi dobrým zvykem nějak naznačit, že důkaz je skončil. Ukončení důkazu lze oznámit buď slovy (např. a tímto je důkaz ukončen ) nebo zkratkou (c. b. d., q. e. d.). S velikou oblibou se k označení konce důkazu používá také čtvereček nebo. (3) Snad již jen pro úplnost dodejme, že slovo ad je latinská předložka, která česky znamená k (ad (a) česky k bodu (a)). Dokázali jsme si (a byl to opravdu poctivý matematický důkaz na rozdíl od spíše intuitivního začátku této kapitoly), že množiny A = {a, a} a B = {a} mají stejné prvky. Z toho vyplývá (?), že množiny A a B jsou si rovny (A = B). Proč zpochybňující otazníček? Přeci se opět zdá být přirozené, že jestliže dvě množiny mají stejné prvky, potom jsou si rovny. Ve skutečnosti toto tvrzení až tak samozřejmé není, jde o jeden z axiomů teorie množin (tzv. axiom extensionality). A v místě zpochybňujícího otazníčku jsme použili právě uvedený axiom. Pokud s tímto axiomem souhlasíme (a my s ním souhlasit budeme), je naše vyvozování korektní. Proto odvozený závěr, že A = B, je správný. Z dlouhých úvah lze učinit stručné shrnutí: jestliže je nějaký prvek ve výčtu prvků nějké množiny uveden dvakrát (nebo i vícekrtát, např. {a, a}), je to totéž, jako kdyby daný prvek byl v seznamu uveden pouze jednou (např. {a}). Přejděme k dalšímu příkladu. Buďte a a b nějaké dva prvky. Poznámka. Prvky a a b nemusejí být nutně dva různé prvky! Vztah a b tedy může nebo nemusí platit. (Obdobně vztah a = b může nebo nemusí platit.) Řekl jsem totiž pouze buďte a a b nějaké dva prvky. Neřekl jsem buďte a a b dva různé prvky. Prosím proto čtenáře, aby si na tuto jemnost dával pozor a nenechal se zbytečně nachytat. Nechť tedy a a b jsou nějaké dva prvky. Obdobným způsobem se dokáže, že {a, b} = {b, a}. Důkaz. Zvolme libovolný prvek c. Jsou dvě možnosti: (a) buď platí c = a nebo c = b, (b) anebo platí c a a současně c b (a třetí možnost není). Ad (a). Když c = a nebo c = b, potom c {a, b} i c {b, a}. Prvek c je uveden v seznamu prvků obou množin. Ad (b). Pokud c a a zároveň c b, potom c / / {a, b} ani c / / {b, a}. Tentokrát se prvek c nenachází na seznamu prvků zádné z uvedených dvou množin.

11 Tímto jsme ověřili, že množiny {a, b} i {b, a} mají tytéž prvky. Odtud vyplývá (ve skutečnosti opět užitím již zmíněného axiomu extensionality), že obě množiny jsou si rovny, {a, b} = {b, a}, c. b. d. Z právě dokázaného tvrzení (tj. tvrzení, že {a, b} = {b, a}) si můžeme odnést ponaučení, že nezáleží na pořadí, v jakém jsou prvky množiny vyjmenovány. (Připomínám též ponaučení, které jsme uvedli výše: jestliže nějaký prvek je uveden ve výčtu prvků nějaké množiny, potom je lhostejné, zda daný prvek je ve výčtu uveden dvakrát (třikrát,... ) nebo jenom jednou.) Kontrolní otázka: bude uvedený důkaz tvrzení, že {a, b} = {b, a}, fungovat i v případě, že prvky a a b jsou stejné (a = b)? [Ano. Ale proč?] Uveďme si ještě jeden příklad množiny zavedené výčtem svých prvků. Podívejme se na množinu {}. Vidíme, že seznam je prázdný, uvedená množina neobsahuje žádný prvek. Jde o tzv. prázdnou množinu. Prázdnou množinu obvykle značíme znakem. (Značení {} lze používat také, je však méně časté.) Platí tedy = {}. Zdá se mi být vhodné na tomto místě uvést jedno upozornění. Pozor, množina { } je zase další příklad množiny zavedené výčtem. Je to množina, která jako svůj jediný prvek obsahuje prázdnou množinu. (Vidíme, že množiny mohou být prvky jiných množin.) Množina { } tedy obsahuje prvek (prázdnou množinu), a tudíž není prázdná, { } =. Nezaměňujte proto množinu { } s množinou prázdnou! Všechny množiny, které jsme si až dosud v příkladech uváděli, byly konečné. Zaměřme nyní svoji pozornost např. na množinu prvních deseti přirozených čísel {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}. K této množině můžeme přidat ještě číslo 11: {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}. Dále můžeme pokračovat přidáním čísla 12 a získat tak množinu {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}. A tak dále. Obecně, když n je přirozené číslo, pak k n-prvkové množině {1, 2, 3,..., n}

12 KAPITOLA 1. PRVNÍ SEZNÁMENÍ S TEORIÍ MNOŽIN můžeme přidat další prvek, totiž přirozené číslo n + 1, a obdržet množinu {1, 2, 3,..., n, n + 1}, která obsahuje n + 1 prvků. Vidíme, že tento proces se nemusí nikdy zastavit. Velikost množin konstruovaných podle tohoto návodu není shora omezená. (Velikostí množiny zde máme na mysli počet jejích prvků.) Jde o tzv. potenciální nekonečno. V případě potenciálního nekonečna je nekonečnost způsobena tím, že k dané (výchozí konečné) množině lze neustále přidávat další a další prvky. Je však jasné, že k limitě, tedy k množině, která by obsahovala všechny prvky, jež je možné přidat, nelze dospět v konečném čase. Taktéž, i kdyby taková limitní množina existovala, nebylo by možné v konečném čase všechny její prvky vyjmenovat, neboli uvést výčet všech jejích prvků. Čtenář jistě zná ze školy (střední nebo základní) množinu všech přirozených čísel {1, 2, 3, 4, 5,...}. Oproti dříve uvedeným příkladům zde zaznamenáváme jeden rozdíl: tato množina není konečná. Na tomto místě se setkáváme s tzv. aktuálním nekonečnem. Uvedená množina už totiž nekonečná je a není potřeba k ní cokoliv přidávat. (Uvedu jednu filosofickou poznámku. Snad se mi podaří ještě trochu jiným způsobem vysvětlit rozdíl mezi nekonečnem potenciálním a aktuálním. Uvažujme množinu přirozených čísel {1, 2, 3,...}. Když se snažíme vyjmenovat všechny její prvky (na tuto množinu se díváme zevnitř ), dostáváme potenciální nekonečno. Proces vyjmenovávání prvků nemůže nikdy skončit, stále vyjmenováváme další a další prvky. Když se ale na tuto množinu díváme zvnějšku (bereme ji jako hotový, skončený celek) máme aktuální nekonečno. Tato úvaha samozřejmě není omezena jen na množinu přirozených čísel, bylo by možné ji vykonat s jakoukoliv (již aktuálně) nekonečnou množinou. A možná třeba by šlo vymyslet i příklady jiného typu.) S aktuálně nekonečnými množinami jsou ale spojeny jisté potíže. Podívejme se na následující úvahu, kde pracujeme opět s množinou přirozených čísel {1, 2, 3,...}. My samozřejmě máme svoji intuitivní představu o tom, co je to přirozené číslo. Když nám někdo předloží nějaký objekt, jsme (intuitivně) schopni rozpoznat, zda tento objekt je přirozené číslo, a tudíž i to, zda tento objekt patří do množiny přirozených čísel. (Množina přirozených čísel tak je, alespoň intuitivně, dobře určena. O každém objektu jsme schopni říci, zda do této množiny patří, nebo ne.) Představme si ale, že někdo by chtěl čistě mechanicky (už nikoliv intuitivně) rozpoznávat, zda předložený objekt patří do množiny přirozených čísel. Pak ovšem nezbývá nic jiného, než uvést seznam (byť nekonečný) všech prvků dané množiny. Nechť n nyní je přirozené číslo. Dotyčná osoba pak může procházet

13 seznam prvků množiny přirozených čísel a prvky ze seznamu postupně porovnávat s předloženým objektem n. Dříve či později osoba ověří, že daný prvek n patří do množiny přirozených čísel. Předpokládejme nyní, že objekt x není přirozené číslo. Danou osobu opět necháme procházet seznam prvků množiny přirozených čísel a porovnávat je s předloženým objektem x. Je jasné, že osoba v konečném čase (po prozkoumání pouze konečné části seznamu) není schopna říci, zda prvek x patří do množiny přirozených čísel. Uvědomte si, že z faktu, že prvek x nebyl uveden v konečné (tj. dosud prozkoumané) části seznamu, nic nevyplývá! Prvek x totiž může být uveden v následující (zatím ještě neprozkoumané z důvodu nedostatku času) části seznamu. Anebo na seznamu nemusí být uveden vůbec! Proto v konečném čase nelze rozhodnout, zda prvek x do množiny přirozených čísel patří, nebo ne. Vidíme, že existují objekty (totiž objekty x, které nejsou přirozenými čísly), o nichž nelze rozhodout (nechceme-li se spoléhat na svoji intuici), zda do množiny přirozených čísel patří, nebo ne. Takže lze mít i vážné pochybnosti o tom, že množina přirozených čísel je dobře určena. Následně se lze začít ptát, zda vůbec můžeme pracovat s množinou, která vlastně není dobře určena. A když množina není dobře určena, je to ještě množina? Naši úvahu tak zakončíme zpochybněním samotné existence množiny přirozených čísel... (Někteří matematici odmítají s aktuálně nekonečnými množinami pracovat. V případě množiny přirozených čísel jsou ochotni udělat jedinou výjimku spoléhají na svoji přirozenou intuici pro přirozená čísla. Jinak pracují pouze s potenciálním nekonečnem.) Výše uvedenou úvahou jsme zpochybnili existenci množiny přirozených čísel. Obdobnou úvahou by ale bylo možné zpochybnit existenci libovolné (již aktuálně) nekonečné množiny. Naskýtá se proto otázka, zda aktuálně nekonečné množiny vůbec existují. Poměrně zajímavý důkaz existence aktuálně nekonečné množiny podal v 1. polovině 19. století český učenec Bernard Bolzano 1 (1781 1848). Důkaz. (Bolzano.) Označme jako výrok A 1 sentenci: Existuje alespoň jedna pravda (o sobě). Uvedený výrok A 1 je nesporně pravdivý. Kdyby totiž pravdivý nebyl, potom by platilo, že neexistuje žádná pravda. Výrok neexistuje žádná pravda by byl pravdivý, byla by to pravda. Takže výrok A 1 ( existuje alespoň jedna pravda ) by nakonec přeci jenom byl pravdivý (spor s předpokladem, že A 1 není pravdivý). Ukázali jsme, že výrok A 1 je pravdivý. Jako výrok A 2 označme sentenci: Výrok A 1 je pravdivý. Je zřejmé, že výrok A 2 je pravdivý. 1 Bernard Bolzano se věnoval filosofii i matematice. Jako jeden z prvních se zabýval systematičtějším studiem množin (ve smyslu souhrnu věcí ). Pozoruhodné jsou také jeho pionýrské práce v oblasti reálných funkcí. S jeho jménem je spojena také tzv. Bolzanova-Cauchyova podmínka konvergence. Čtenáři se s touto podmínkou jistě brzy seznámí v kursu matematické analýzy.

14 KAPITOLA 1. PRVNÍ SEZNÁMENÍ S TEORIÍ MNOŽIN Jako výrok A 3 označme sentenci: Výrok A 2 je pravdivý. Je zřejmé, že výrok A 3 je pravdivý. Atd. Jako výrok A n+1 označme sentenci: Výrok A n je pravdivý. Je zřejmé, že výrok A n+1 je pravdivý. Atd. Jenomže Bůh je vševědoucí. Tím pádem zná všechny pravdy. Tedy i nyní uvedené pravdy. Tyto pravdy v Boží mysli vytvářejí aktuálně nekonečnou množinu. Q. E. D. Uvedený důkaz nás svojí krásou a svojí vnitřní promyšleností může udivit ještě dnes. Z teologického hlediska proti tomuto důkazu nelze vůbec nic namítat. Skutečnost, že do důkazu bylo potřeba zaplést Boha, posouvá otázku existence aktuálního nekonečna do filosofické roviny. (Z matematického hlediska to vlastně důkaz není.) Vskutku, čtenář později uvidí, že v teorii množin se existence aktuálně nekonečné množiny zkrátka postuluje jako axiom. Bez tohoto axiomu (tj. axiomu o tom, že existuje alespoň jedna nekonečná množina) není možné existenci aktuálně nekonečné množiny dokázat žádným seriózním způsobem! Existenci aktuálně nekonečných množin (chceme-li s nimi pracovat) tak musíme předpokládat. Na Bolzana navázal Georg Cantor 2 (1845 1918). (Poznámka. Bernard Bolzano za svého života napsal pojednání o množinách. Jeho dílo však bylo v té době nepochopeno nebo pochopeno špatně, jak se dnes všeobecně soudí. Proto vyšlo tiskem až po Bolzanově smrti, v roce 1851. Tehdejší nakladatel ovšem v dobré snaze opravit domnělé Bolzanovy omyly v díle provedl několik úprav. Tato skutečnost dnes velmi ztěžuje porozumění původním Bolzanovým myšlenkám v oblasti prvopočátků teorie množin. Autor si není jist, zda Cantor navázal na Bolzana přímo v tom smyslu, že četl jeho práci. O návaznosti ale beze sporu hovořit můžeme.) Cantor pracoval s pojmem množiny všech množin. Následujme Cantorovy myšlenky a označme písmenem M množinu všech množin. (M velké písmeno M psané německou frakturou.) Předpokládáme tedy, že M je množina a že každá množina je jejím prvkem. 2 Georg Cantor byl německý matematik. Položil základy moderní teorie množin. Jako vůbec první se odvážil soustavně pracovat s aktuálně nekonečnými množinami a popsal jejich vlasnosti. Ačkoliv Cantor toužil působit na univerzitě v Berlíně, musel se spokojit s místem na méně známé univerzitě v Halle. Cestu na berlínskou univerzitu měl uzavřenu díky Leopoldu Kroneckerovi, který tam pracoval. Kronecker byl ve své době významným matematikem a měl proto i značný vliv. Cantorovy převratné myšlenky však tvrdošíjně odmítal a dokonce proti nim veřejně nahlas vystupoval. Přestože konflikt mezi Cantorem a Kroneckerem přispěl k pozdějšímu rozvoji konstruktivistického pojetí matematiky (zastávaného zpočátku Kroneckerem, poté rozvinutého Brouwerem), dopady tohoto konfliktu byly pro Cantora dosti tragické.

15 Speciálně tedy musí platit M M. (Předpokládáme, že M je množina. Dále, M obsahuje všechny množiny. Tedy musí platit M M.) Obecně platí (ve skutečnosti jde o další axiom teorie množin, tzv. axiom vydělení), že pokud je dána libovolná množina M (zde máme M = M), potom můžeme pracovat také s množinou všech jejích prvků splňujících nějakou předem danou vlastnost ϕ(x). Množinu prvků x množiny M splňujících podmínku ϕ(x) označme znakem N. Máme tedy N = { x ; x M ϕ(x) }. (Zápis ϕ(x) zde označuje nějakou podmínku, nějaký výrok o proměnné x. Výrok ϕ(x) může být např. x je sudé. Potom N je množina těch prvků x množiny M, které jsou sudé. Anebo výrok ϕ(x) může být např. x je racionální číslo. Potom by N bylo rovno množině všech racionálních čísel, která současně patří do množiny M. A tak dále.) V roce 1902 si Bertrand Russell 3 (1872 1970) povšimnul těžkého rozporu. Jeho úvaha později vešla ve všeobecnou známost jako tzv. Russellův paradox. Popišme, v čem jeho paradox spočívá: Uvažujme množinu N (písmeno N psané německou frakturou) všech množin, které nejsou prvkem sama sebe. Neboli, nějaké množina X patří do množiny N (platí X N) právě tehdy, když množina X neobsahuje samu sebe (množina 3 Bertrand Russell byl anglický matematik, později matematiku opustil a věnoval se filosofii a politice. Jeho cílem bylo vybudovat matematiku na čistě logickém základě. Proto přinejmenším od roku 1901 pracoval na monumentálním díle Principia Mathematica. Na díle pracoval společně s Alfredem Whiteheadem. První svazek tohoto díla vyšel v Cambridgi v roce 1925, druhý a třetí svazek v roce 1927. Původně byl v plánu ještě čtvrtý svazek, o geometrii, měl jej psát pouze Whitehead, ale nikdy nevyšel. Práce na tomto velkolepém díle představovala pro Russella obrovskou zátěž. Velmi vyčerpávající bylo, když se (dlouhou dobu marně) snažil vyřešit elementární paradoxy (např. nyní známý Russellův paradox aj.), na které při psaní díla narážel. Uvádí, že duševní úsilí, které psaní tohoto díla vyžadovalo, nenapravitelně vyčerpalo jeho myšlenkovou kapacitu. Prohlásil doslova: Ani jeden z nás [Russell ani Whitehead] by tuto knihu nedokázal napsat sám. I při společné práci a s ulehčením, jež nám přinesla vzájemná diskuse, bylo naše úsilí tak nesmírné, že jsme se nakonec oba od matematické logiky odvrátili s jakýmsi odporem. Dílo Principia Mathematica je psáno převážně symbolickým jazykem a, jak už naznačeno, jeho rozsah je ohromující. Je proto ironií, že dnes je toto pojednání zajímave spíše jen z historického hlediska. Soudobí matematici toto dílo vlastně moc nečtou. Kdo ví, jaký osud tuto pozoruhodnou knihu čeká? (Kdo ví, jaký osud čeká ostatní matematické knihy??) Matematik Godfey Harold Hardy podává následující svědectví o rozhovoru, který vedl s Bertrandem Russellem: Vzpomínám si, jak mi Bertrand Russell vyprávěl o hrozném snu. Zdálo se mu, že se nachází v univerzitní knihovně někdy kolem roku 2100. Kolem polic s knihami procházel knihovník s obrovským kbelíkem, bral jednu knihu po druhé, prohlížel si je a buď je dával zpátky na polici, nebo je házel do kbelíku. Nakonec přišel ke třem velkým svazkům, v nichž Russell poznal výtisk díla Principia Mathematica. Vzal jeden svazek, obrátil několik stránek a na chvíli se zdálo, že ho podivné symboly zmátly. Pak knihu zavřel, podržel ji v ruce a zaváhal... Russell se již k matematice nevrátil. Věnoval se filosofii a politice byl rozhodným zastáncem pacifismu. Už za 1. světové války byl 6 měsíců vězněn za to, že z důvodů svědomí odmítl nastoupit vojenskou službu. Od 50. let 20. století se stále aktivněji zapojoval do celosvětového mírového hnutí proti jaderné válce. V roce 1950 byl Bertrand Russell oceněn Nobelovou cenou za literaturu.

16 KAPITOLA 1. PRVNÍ SEZNÁMENÍ S TEORIÍ MNOŽIN X splňuje vlastnost X / X). Máme tedy N = { X ; X / X }. A nyní si položme otázku: Je množina N prvkem sama sebe? Platí N N? Podívejme se na definici množiny N. Tato množina obsahuje právě ty množiny, které neobsahují sebe sama. Jestliže platí N / / N (množina N neobsahuje sebe sama), potom množina N musí být prvkem množiny N (platí N N). Naopak, jestliže množina N obsahuje sama sebe (platí N N), potom N není obsaženo v N (platí N / / N), protože množiny obsahující sebe sama v množině N nejsou přítomny. Shrnutí: N N právě tehdy, když N / / N. Paradox. (Poznámka. Nechť M je množina všech množin, zavedená Cantorem. Potom, podle axiomu vydělení, můžeme pracovat také s množinou N těch množin X, které neobsahují sebe sama: N = { X ; X M X / X }. Platí N N, nebo ne? Podmínka ϕ(x), pomocí které jsme prvky z množiny M vydělovali, je X / X. Čtenář se možná pozastaví nad podivností takové podmínky ϕ(x). Nicméně podmínka X / X podmínkou je, a množina N za předpokladu existence množiny M je proto korektně zavedena.) Domnívám se, že na tomto místě bude účelné vložit poznámku o konvencích, které se při označování prvků množin obvykle používají. Obyčejné prvky množin obvykle označujeme malými písmeny: a, b, c,..., x, y, z. A podobně. Matematické proměnné (jako např. již zmíněné x, y, z) v textu tradičně vyznačujeme kurzívou (písmo skloněné a poněkud odlišné kresby). Množiny prvků pak obyčejně značíme velkými písmeny: A, B, C,... Potřebujeme-li pracovat se soubory množin (říkáme též množiny množin, kolekce množin, systémy množin apod.), označujeme je s oblibou německou frakturou: A, B, C,..., X, Y, Z. Německé fraktuře se lidově (ne zcela správně ovšem!) říká též švabach. Protože předpokládám, že čtenář s německou frakturou není obeznámen, uvádím ji zde celou (s výjimkou písmen přehlasovaných, německého ostrého ß a několika slitků): A B C D E F G H I J K L M N O P Q R S T U V W X Y Z, a b c d e f g h i j k l m n o p q r s t u v w x y z. Případně lze systémy množin označovat písmem kaligrafickým (písmo ozdobně provedené; různá kaligrafická písma se mírou svojí ozdobnosti samozřejmě mohou lišit): A, B, C,..., X, Y, Z. Již poměrně vzácně je potřeba v matematice pracovat se systémy systémů množin. Obecně platí, že čím větší je systém množin, tím kroucenější (tím ozdobnější, případně tím gotičtější apod.) písmo pro jeho označení použijeme.

17 Russellův paradox otřásl samotnými základy matematiky. A brzy po něm se začaly objevovat i další paradoxy. To na počátku 20. století bylo příčinou hluboké krize v matematice. Matematici byli zaskočeni, s jakou lehkostí bylo možné takové paradoxy tvořit. Veškerá matematická jistota byla pryč. Jako odpověď na tuto krizi se v matematice objevily následující tři (filosofické) směry: Formalismus. Jeho duchovním otcem je slavný německý matematik David Hilbert 4 (1862 1943). Cílem je matematiku formalizovat, oprostit matematické symboly od jejich fyzikálního (nebo jiného) významu a se symboly pouze malipulovat podle předem přesně daných pravidel formálního usuzování. Konečným Hilbertovým cílem (tzv. Hilbertův program) bylo tímto způsobem prokázat též vnitřní konzistenci matematiky (tj. nepřítomnost paradoxů, jestliže se matematika postaví na formálním usuzování). Ačkoliv se později ukázalo, že tento poslední Hilbertův cíl není možné naplnit, své zastánce má formalismus dodnes. Intuicionismus. Tento přístup byl rozvinut Luitzenem Brouwerem 5 (1881 1966). Tento směr úzce souvisí s konstruktivismem odmítá zákon vyloučeného třetího (důkazy existence sporem, protože jde o nekonstruktivní postup) i aktuální nekonečno. Chceme-li s nějakým objektem pracovat, musíme nejprve konstruktivně dokázat jeho existenci. Je potřeba popsat konečný počet kroků, jimiž lze daný objekt sestrojit. Správnost konstrukcí se ověří intuitivní zřejmostí. Okleštěný novopositivismus. Jde o poměrně jednoduchý přístup. Existenci Russellova paradoxu (a ostatních paradoxů) jen vezmeme na vědomí. Nebudeme je vytvářet, při své práci se jim budeme pokud možno vyhýbat. (Nakonec, přítomností nebo nepřítomností uvedených paradoxů v matematice se až tak mnoho nezmění. Lidé kvůli nim nepřestanou sčítat a násobit čísla osvědčeným způsobem, jehož správnost již byla ověřena staletími praxe. Ani matematik nepřestane hloubat (na příklad) nad vlastnostmi spojitých funkcí a nezačně pochybovat o tvrzeních, jejichž pravdivost svým logickým úsudkem sám ověřil.) 4 David Hilbert pracoval na univerzitě v Göttingenu, tehdy nejvýznamnějším centru matematického dění v Evropě. Nějakým způsobem přispěl snad ke každé oblasti matematiky. Rozsah jeho znalostí byl ohromující. Významné jsou jeho příspěvky v oblasti algebry, teorie čísel, (funkcionální) analýzy, geometrie a logiky. V roce 1900 na celosvětovém kongresu matematiků v Paříži přednesl svůj slavný seznam 23 matematických problémů (dodnes známy jako tzv. Hilbertovy problémy). Jeho výběr problémů je obdivuhodný: práce na řešení každého z těchto problémů často znamenala založení nového oboru matematiky. Některé z Hilbertových problémů jsou dosud nevyřešeny. 5 Luitzen Brouwer byl holandský matematik. Věnoval se topologii (prakticky je jejím zakladatelem) a teorii grup. Velmi nahlas prosazoval svoje intuicionistické pojetí matematiky. Později se kvůli názorovým rozdílům dostal i do ostrého konfliktu s Hilbertem (prosazujícím formalismus), ve kterém padlo mnoho jízlivostí. Jejich rozepře vlastně byla žabomyší válkou. Americký matematik John Hays totiž později napsal úsměvnou bajku, ve které vystupuje žabák (Brouwer) a myšák (Hilbert).

18 KAPITOLA 1. PRVNÍ SEZNÁMENÍ S TEORIÍ MNOŽIN

Kapitola 2 Úvod do logiky Nejstarším pokusem o modelování a zkoumání zákonitostí vnímání a usuzování je logika. Jde o logiku založenou na dvouhodnotové interpretaci pojmu pravdivosti. Tvrzení, jímž se zabývá muže být buď pravdivé nebo nepravdivé. Jiná možnost neexistuje. My se budeme zabývat dvěma základními typy logiky výrokovou logikou a logikou predikátovou, neboli logikou prvního řádu. Jazyk výrokové a predikátové logiky je nezbytnou součástí teoretické i aplikované matematiky a informatiky. Je třeba si ale uvědomit, že tyto logiky pracují s řadou zjednodušení a omezení, která závisí na zvoleném abstraktním modelu. Proto ještě zdaleka nevystihují všechno to, čím se vyznačuje logika skutečného lidského myšlení. Je vůbec některá z formálních logik schopna svým jazykem podchytit způsob lidského uvažování, na kterém se podílí i intuice? Proč tedy vytváříme zjednodušující modely s jejich jazyky, když máme jazyk přirozený, který má větší schopnost zachytit způsob lidského myšlení? Protože přirozený jazyk je až moc bohatý a často používá vícevýznamové výrazy a podtextové významy a formulace pravidel používání takových nástrojů komunikace by byla velmi obtížná. 2.1 Stručný úvod do výrokové logiky Výroková logika je jedním z nejjednodušších modelů lidského myšlení. Je postavena na zjednodušení, které spočívá v tom, že sémantika, neboli interpretace, výroků je redukována pouze na jejich pravdivostní hodnoty pravda (1, true, T) a nepravda (0, false, F). Jinak řečeno, modelovaný svět, reprezentovaný množinou výroků, které jej popisují, se zredukuje na dvouprvkovou množinu {0, 1}. Vyjadřovací prostředek, tedy nástroj modelování je jazyk výrokové logiky a jeho syntax (symboly abeceda a konstrukční syntaktická pravidla) a sémantika s pravidly interpretace. 19

20 KAPITOLA 2. ÚVOD DO LOGIKY Symboly jazyka výrokové logiky Symboly pro proměnné: a, b, c,..., x, y, z, x 1, x 2, x 3,... Symboly pro logické konstanty: true ozn. T, 1, false ozn. F, 0. Symboly pro logické spojky: negace, konjunkce disjunkce implikace ekvivalence Pomocné symboly: závorky,... Logické spojky negace z latinského negatio = popření, čti ne-, jiná značení: p, p. konjunkce z latinského coniunctio = spojení, čti a, a současně, a zároveň, příp. i, jiné značení: &. disjunkce, z latinského alternare = uvažovat jedno po druhém, alternativa čti: nebo, anebo. implikace z latinského implicare = připoutat, čti: jestliže..., potom..., -li..., pak..., pokud..., když..., jiné značení:. ekvivalence z latinského aequivalens = stejně hodnotný, čti:... právě tehdy, když...,... tehdy a jen tehdy, když...,..., právě když..., jiná značení:,. Syntaktická pravidla Atomické formule jsou symboly pro logické proměnné a logické konstanty, ze kterých se vytváří další formule podle následujících pravidel: 1. Základní pravidlo. Každá atomická formule je formulí. 2. Indukce. Jsou-li A a B formule, pak jsou formule. A, A B, A B, A B, A B

2.1. STRUČNÝ ÚVOD DO VÝROKOVÉ LOGIKY 21 3. Generalizace. Všechny dobře utvořené formule jazyka jsou výsledkem konečného počtu aplikací základního pravidla a pravidla indukce. Poznámka 2.1. Symboly A, B nepatří do jazyka výrokové logiky, ale pouze zastupují jeho libovolné formule. Definovat syntax jazyka obecně nelze jazykem samotným, ale je potřeba použít metajazyka, tedy jazyka přirozeného. Symboly A, B jsou tedy metasymboly. Interpretace Interpretací rozumíme ohodnocení (valuaci) atomických formulí a interpretace složených formulí, tj. přiřazení některé z logických hodnot pravda (true) nebo nepravda (false), a to použitím interpretačních pravidel. Interpretační pravidla Unární spojka negace: Binární spojky: A A 0 1 1 0 A B A B A B A B A B 0 0 0 0 1 1 0 1 0 1 1 0 1 0 0 1 0 0 1 1 1 1 1 1 Pomocí interpretačních pravidel dokážeme ohodnotit všechny proměnné libovolné formule. A na základě tohoto ohodnocení dokážeme říci, zda je daná formule splnitelná. Formule je splnitelná, jestliže existuje takové ohodnocení jejích proměnných, při němž je formule interpretována jako pravdivá. Formule je platná tautologie, jestliže její interpretace při každém ohodnocení jejích proměnných je pravda. Kontradikce je nesplnitelná formule, tj. taková, že je vždy interpretována jako nepravda nezávisle na ohodnocení proměnných. Příklad 2.1. Interpretujte tabulkou formuli (A B) (A B) a rozhodněte o její splnitelnosti. Řešení. A B A B A B (A B) (A B) 0 0 1 0 0 0 1 0 0 1 1 0 0 0 1 1 1 1 1 1

22 KAPITOLA 2. ÚVOD DO LOGIKY Formule je splnitelná. Užitečné tautologie Pro logické spojky interpretované podle uvedených pravidel platí následující zákony (tautologie): Identita Idempotence Zákon dvojí negace Zákon vyloučeného třetího p p. (p p) p, (p p) p. p p. p p. De Morganova 1 pravidla (p q) ( p q), (p q) ( p q). Zákon komutativity Zákon asociativity (p q) (q p), (p q) (q p). p (q r) (p q) r, p (q r) (p q) r. Zákon distributivity p (q r) (p q) (p r), p (q r) (p q) (p r). Absorpce p (p q) p, p (p q) p. 1 Augustus de Morgan britský matematik 19. století.

2.1. STRUČNÝ ÚVOD DO VÝROKOVÉ LOGIKY 23 Další logické spojky Existují však i jiné logické spojky. Následující tabulka nám poskytuje přehled pravdivostních hodnot všech logických spojek. A B A B A B A B 0 0 0 1 1 0 1 1 0 0 0 0 kontradikce 0 0 0 1 konjunkce A B 0 0 1 0 0 0 1 1 A 0 1 0 0 0 1 0 1 B 0 1 1 0 XOR, A B 0 1 1 1 disjunkce, A B 1 0 0 0 NOR, A B 1 0 0 1 ekvivalence, A B 1 0 1 0 B 1 0 1 1 1 1 0 0 A 1 1 0 1 implikace, A B 1 1 1 0 NAND, A B 1 1 1 1 tautologie Tuto tabulku jsme sestavili mechanicky ve dvojkové soustavě v každém řádku přičítáme jedničku. V takto sestavené tabulce je druhá polovina symetrická podle negace: znegováním prvního řádku dostanu poslední atd. Tato tabulka všech logických spojek je často nazývána tabulka booleových funkcí pro dva argumenty. Kromě funkcí pro již známé spojky zde vidíme i funkce odpovídající jiným spojkám: XOR exclusive OR non-ekvivalence, vylučovací nebo, totéž jako (A B), čti: anebo (latinsky aut ), značení:, jiné značení:. NOR Negated OR negace disjunkce, Piercova log. funkce, totéž jako (A B) A B, čti: ani značení:, jiné značení:. NAND Negated AND negace konjunkce, Schefferova log. funkce, totéž jako (A B) A B, značení:.

24 KAPITOLA 2. ÚVOD DO LOGIKY Každou z logických spojek, obecněji každou booleovskou funkci, lze vyjádřit pomocí jiné logické spojky nebo kombinací spojek. Nabízí se otázka, zda lze všechny spojky vyjádřit jen pomocí jedné spojky nebo množiny spojek. Tedy existuje množina spojek, která je funkčně úplná? Následující tautologie definují pomocí negace a implikace všechny ostatní logické spojky: (p q) ( p q), (p q) (p q), (p q) (p q) (q p) 2. Z uvedených tautologií vyplývá, že množina {, } je funkčně úplná. V případě potřeby je možné nahradit spojkami negace, konjunkce a disjunkce spojky: (p q) ( p q), (p q) (p q) ( p q). Tedy množina spojek {,, } je také funkčně úplná. Použijeme-li de Morganova pravidla, získáme množiny {, } a {, }. Existují však i jednoprvkové funkčně úplné množiny logických spojek. Takovými spojkami jsou a, neboť platí p (p p), p (p p) (Tato vlastnost uvedených spojek je využívána při konstrukci logických obvodů.) Příklad 2.2. Vyjádřete spojky disjunkci a implikaci jen pomocí spojky NOR. Řešení. A B (A B) (A B) (A B) (A B). A B (A B) A B (A A) B ((A A) B) ((A A) B). Cvičení 2.1. Sestavte tabulku pravdivostních hodnot a rozhodněte o splnitelnosti formulí 1. ((p q) q) p, 2. a (b ( b a)), 3. ( a ((b a) c)) b. Cvičení 2.2. Dokažte, že spojka NAND tvoří jednoprvkovou funkčně úplnou množinu logických spojek. 2 Využívá se při dokazování. Ekvivalenci ( ) rozdělíme na dvě implikace ( a ) a dokazujeme, že platí i.

2.1. STRUČNÝ ÚVOD DO VÝROKOVÉ LOGIKY 25 Další užitečné tautologie Sylogismus (p q) ((q r) (p r)). Sylogismus je následující druh usuzování pocházející už z aristotelské logiky: Víme, že všechny objekty z množiny A mají nějakou vlastnost. Víme, že prvek x patří do množiny A. Učiníme závěr, že prvek x má danou vlastnost. Příklad sylogismu: Všichni lidé jsou smrtelní. Sokrates je člověk. Odvozený závěr: Sokrates je smrtelný. Import ( ) a export ( ) (p (q (r (s t)))) ((p q r s) t). Obměna implikace Negace implikace (A B) ( B A). (A B) ( A B). Úpravy logických formulí Úprava logické formule spočívá v její záměně nebo záměně její podformule jinou formulí, se kterou je ekvivalentní. Při tom používáme tautologie (uvedené výše), které nám ukazují, co můžeme nahradit čím, tj., které formule jsou ekvivalentní. Úpravou formulí jsme se již zabývali, a to když jsme nahrazovali logické spojky jinými spojkami. Příklad 2.3. Zjednodušte formuli ( A B) (A B). Řešení. ( A B) (A B), (B A) (A B), ((B A) (A B)), (A B), A B. Cvičení 2.3. Rozhodněte o pravdivosti formule, formuli upravte a znegujte. 1. ( A B) ( A B) (A B).

26 KAPITOLA 2. ÚVOD DO LOGIKY 2. ( A B) (A B). 3. (p q) (q p). 4. p (q (p q)). 5. A (A B). 6. ( q r) ( (p q) (p r)). 7. A ( B (A B)). 8. (a b) ((b c) a). 9. (a c) ((b d) ((a b) c)). 2.2 Stručný úvod do predikátové logiky Chceme zkoumat objekty množiny, body, přímky, útvary, čísla,... Označení pro objekty máme dva druhy pojmenování: konstanty a proměnné. Konstanty. Na příklad: 1, 2, 3,... význam těchto symbolů (znaků) je již ustálen. π, číslo pí a prázdná množina. Atd. Proměnné. Na příklad: x, y, z,... A, B, C,... Atd. Atd. Proměnné se chovají jako dočasné konstanty, ale jejich význam není blíže určen. Je proměnný. S objekty můžeme provádět různé operace. Na příklad: 2 + 3, kde 2 a 3 jsou objekty-konstanty a + je binární funkční symbol, znak operace sčítání. Výsledkem je konstanta. x + 3, kde x je proměnná. Výsledek je proměnný. 10, kde 10 je objekt-konstanta a je unární funkční symbol pro vytvoření záporného čísla. {1, 2} {2, 3, 4}, kde {1, 2} a {2, 3, 4} jsou objekty-konstanty a je binární funkční symbol pro sjednocení. A B, kde A a B jsou objekty-proměnné. Výsledek je proměnný. O zkoumaných objektech pronášíme různá tvrzení jednoduché oznamovací věty, ty lze pak skládat podle syntaktických pravidel i do souvětí, ale stále jen s významem oznamovacím, nikoliv rozkaz nebo otázka. Příklady tvrzení-výroků:

2.2. STRUČNÝ ÚVOD DO PREDIKÁTOVÉ LOGIKY 27 3 < 10, kde 3 a 10 jsou objekty-konstanty a < je binární predikátový symbol, znak pro relaci být menší než mezi dvěma objekty. Zde můžeme ihned říci, zda výrok platí či ne. x A, kde x a A jsou objekty-proměnné a je binární predikátový symbol, znak náležení. O pravdivosti tohoto výroku se nelze moc říci, záleží na konkrétních hodnotách proměnných x a A. Set(A), přičemž Set( ) je unární predikát být množina. 2 je sudé, kde 2 je objekt-konstanta a je sudé je unární predikát být sudé číslo. K práci s objekty potřebujeme jazyk. Jazyk predikátové logiky je vlastně jazyk výrokové logiky obohacený o další symboly. Jazyk I. řádu Jazyk I. řádu obsahuje: Symboly (znaky) pro proměnné x, y, z, x 1, x 2, x 3,... (Nekonečně mnoho těchto symbolů.) Symboly pro logické spojky,,,,. Symboly pro logické konstanty Symboly pro kvantifikátory true, false., Funkční symboly f, g, sin,... (Ke každému funkčnímu symbolu je dána jeho četnost (arita), tj. počet jeho operandů, což je přirozené číslo 0.) Predikátové symboly Set( ),,,... (Každý má svoji aritu 1.) Pomocné symboly (, ), :,... Poznámka 2.2. Funkční symbol, jehož arita je rovna 0 (nemá operandy), je konstanta. Ze symbolů jazyka lze, podle syntaktických pravidel, tvořit slova. Máme dva druhy slov: termy a formule. Metadefinice termu 1. Každá proměnná je term.

28 KAPITOLA 2. ÚVOD DO LOGIKY 2. Nechť O(,,..., ) je n-ární funkční symbol (neboli n-místný operační znak) a nechť τ 1, τ 2,..., τ n, kde n 0, jsou termy. Potom je term. O(τ 1, τ 2,..., τ n ) 3. Jiné termy nejsou. Všechny termy lze získat jen pomocí pravidel 1. a 2. Poznámka 2.3. Operační znak (v pravidle 2.) může být buď nulární (n = 0), nebo unární (n = 1), binární (n = 2), ternární (n = 3) atd. Nulární operační znak je konstanta. Poznámka 2.4. Binární operační znaky obvykle zapisujeme infixovým způsobem. Na příklad namísto +(2, 3) (což by odpovídalo pravidlu 2.) píšeme jednoduše 2 + 3. Metadefinice formule 1. Nechť P(,,..., ) je n-ární predikátový symbol a nechť τ 1, τ 2,..., τ n, kde n 1, jsou termy. Potom je (atomická) formule. 2. Nechť A a B jsou formule. Potom P(τ 1, τ 2,..., τ n ) ( A), (A B), (A B), (A B), (A B) jsou formule. 3. Nechť A je formule a x je proměnná. Potom ( x: A), ( x: A) jsou formule. (Jiné značení: ( x)(a), ( x)(a) nebo x(a), x(a) apod.) 4. Jiné formule nejsou. Poznámka 2.5. Predikátový symbol (v pravidle 1.) může být unární (n = 1), binární (n = 2), ternární (n = 3) atd. Poznámka 2.6. Unární predikát vyjadřuje vlastnost nějakého objektu. Na příklad, k vyjádření vlastnosti býti množinou můžeme použít unární predikát Set( ). Zápis Set(X) tedy znamená, že daný objekt X je množina. Binární predikát vyjadřuje vztah mezi dvěma objekty. Příkladem vztahu mezi dvěma objekty může být fakt, že jeden je prvkem druhého. K vyjádření této skutečnosti používáme binární predikát (, ) (nebo zkrátka jak uvidíme

2.2. STRUČNÝ ÚVOD DO PREDIKÁTOVÉ LOGIKY 29 v následující poznámce). Stručný zápis x A tak znamená, že objekt x náleží objektu A. Jiným příkladem binárního predikátu je predikát rovnosti = (popř. =(, )). Zápis X =Y vyjadřuje rovnost mezi objekty X a Y, tzn., že X i Y je jeden a tentýž objekt. Poznámka 2.7. Také binární predikáty bývá obvyklé zapisovat infixovým způsobem. Na příklad místo (2, 3) nebo =(5, 5) apod. píšeme zkrátka 2 3 nebo 5 = 5 apod. Krajní a případně i další závorky (podle pravidla 2. a 3.) často vynecháváme. Příklad 2.4. Příklad formule: číslo 1 + 1 }{{} term je sudé. }{{} unární predikát Příklad 2.5. Jiný příklad formule: 1 + 1 < 2 + 2 8 < 9. Poznámka 2.8. Formule x: 1 = 1 je v pořádku. Vypadá však lépe, pokud proměnná x má ve formuli A (pravidlo 3.) alespoň jeden volný výskyt. Poznámka 2.9. V logice se spojky a považují za základní logické spojky. Ostatní logické spojky se dají odvodit: A B syntaktická zkratka za ( A) B, A B A B syntaktická zkratka za ( A B), čili (( A) B), syntaktická zkratka za (A B) (B A). Stejně tak jen je základní kvantifikátor a je kvantifikátor odvozený: x: A(x) je zkratka za ( x: A(x)). Tedy platí: x: A(x) x: A(x), x: A(x) x: A(x). Kvantifikátory Máme dva kvantifikátory: základní (všeobecný, velký) kvantifikátor, odpovídá nekonečné (nebo konečné, záleží na množině prvků) konjunkci: nechť x 1, x 2,... jsou všechny možné hodnoty, kterých proměnná x může nabýt, potom x: A(x) znamená vlastně A(x 1 ) A(x 2 ).

30 KAPITOLA 2. ÚVOD DO LOGIKY Formuli x: A(x) čteme: pro všechna x / pro každé x platí A(x). odvozený (existenční) kvantifikátor, odpovídá nekonečné (nebo konečné) disjunkci: nechť x 1, x 2,... jsou všechny možné hodnoty, kterých proměnná x může nabýt, potom x: A(x) znamená vlastně A(x 1 ) A(x 2 ). Formuli x: A(x) čteme: existuje x tak, že platí A(x). Formuli x y: A(x, y) čteme: ke každému x existuje y tak, že platí A(x, y). Není správné uvedenou formuli číst pro každé x existuje... je ale možné, že toto pravidlo má svoje výjimky. Vázané a volné proměnné Výskyt proměnné x ve formuli A a může být buď volný nebo vázaný. Vázaný výskyt. Proměnná x se vyskytuje v nějakém termu, ten se vyskytuje v nějaké formuli B a formule A obsahuje ( x: B) nebo ( x: B) jako svoji podformuli. Volný výskyt. Výskyt, který není vázaný. Proměnná x je vázaná ve formuli A, má-li tam vázaný výskyt, a volná, má-li volný výskyt. Formule se nazývá otevřená, když obsahuje jen volné proměnné a žádnou vázanou. Formule se nazývá uzavřená, když všechny proměnné jsou vázané. Uzavřené formule jsou matematická tvrzení (věty). Formule s jednou volnou proměnnou vyjadřuje vlastnost jednoho objektu. Formule se dvěma volnými proměnnými vyjadřuje vztah mezi dvěma objekty. Příklad 2.6. Uvažujme formuli x = 10 ( x: (x > 10 y = 1)). Proměnná x má v této formuli volný (první) i vázaný (druhý) výskyt, proměnná y je volná.

2.2. STRUČNÝ ÚVOD DO PREDIKÁTOVÉ LOGIKY 31 Zavedení nového predikátu definicí Nechť A je formule a buďte x 1, x 2,..., x n právě všechny, navzájem různé, proměnné formule A. Budiž P(,,..., ) nový n-ární predikátový symbol, (n 1). Definice: přidáme nový definující axiom P(x 1, x 2,..., x n ) A. Poznámka 2.10. Nově zavedený predikát P je vlastně jen syntaktická zkratka za formuli A. Příklad 2.7. Několik příkladů: x y (x < y x = y), x y z N: z x = y, X Y z: (z X z Y ). Zavedení funkce (operace) definicí Nechť A je formule a nechť y, x 1, x 2,..., x n jsou právě všechny volné, navzájem různé, proměnné formule A. Nechť O(,,..., ) je nový n ární operační znak (n 1). Nechť platí, že neboli x 1 x n!y: A(y, x 1, x 2,..., x n ) x 1 x n y: A(y, x 1, x 2,..., x n ) z: A y [z](z, x 1, x 2,..., x n ) y = z. Definice: přidáme nový definující axiom y = O(x 1, x 2,..., x n ) A(y, x 1, x 2,..., x n ). Poznámka 2.11. Opět je to syntaktická zkratka, ale složitější už se pracuje i s predikátem rovnosti. Definovat lze v podstatě cokoliv. Definice je ale účelné volit uvážlivě určují, kudy teorii vedu, kterým směrem teorii rozvíjím. Příklad 2.8. Řekněme, že na intervalu π 2, π 2 máme funkci sinus (sin x). Na intervalu 1, 1 bychom chtěli definovat funkci arkus-sinus (arcsin y). Můžeme definovat x = arcsin y y = sin x. Tato definice je korektní, protože formule na pravé straně (y = sin x) splňuje potřebnou podmínku y 1, 1!x π 2, π 2 : y = sin x.

32 KAPITOLA 2. ÚVOD DO LOGIKY Matematická teorie Matematická teorie je jen soustava axiomů (uzavřené formule) tvrzení, o jejichž pravdivosti se nepochybuje, rovněž musí být známy i predikáty a operace, se kterými se v dané teorii pracuje. Některé axiomy jsou společné všem teoriím (jejich schémata budou uvedena v následujícím oddíle). My se budeme zabývat teorií množin. Mějme nějakou formuli A (tvrzení). Jsou zde dvě zcela odlišné otázky: (1) Lze formuli A v dané teorii dokázat, je formule A dokazatelná? (2) Je formule A v dané teorii pravdivá? Důkaz formule čistě syntaktická záležitost. Co je to důkaz? Důkaz à la Hilbert (ve stylu Hilbertově) Důkazem formule A rozumíme konečnou posloupnost formulí ϕ 1, ϕ 2,..., ϕ n takovou, že 1. ϕ n je dokazovaná formule A, 2. každá z formulí ϕ 1, ϕ 2,..., ϕ n je buď axiom, anebo je odvozena z předchozích formulí užitím některého odvozovacího pravidla (modus ponens, generalizace). Pravidlo modus ponens (tj. pravidlo odloučení): A, A B B Pravidlo generalizace: A x A Nyní uvedeme schémata logických axiomů jsou společné všem (matematickým) teoriím: I. A (B A), II. (A (B C)) ((A B) (A C)), III. ( B A) (A B), kde A, B, C jsou libovolné formule. IV. Schéma axiomů specifikace: x A = A x [t], kde t je term substituovatelný za proměnnou x do formule A. V. Schéma axiomů prenexní operace: x(a B) = (A x B), přičemž proměnná x nesmí mít volný výskyt ve formuli A.

2.2. STRUČNÝ ÚVOD DO PREDIKÁTOVÉ LOGIKY 33 Schémata axiomů pro rovnost: VI. axiom identity: x = x, VII. axiom rovnosti pro operace: x 1 = y 1 x 2 = y 2 x n = y n VIII. axiom rovnosti pro predikáty: x 1 = y 1 x 2 = y 2 x n = y n O(x 1, x 2,..., x n ) = O(y 1, y 2,..., y n ), P(x 1, x 2,..., x n ) P(y 1, y 2,..., y n ), kde x a x 1,..., x n a y 1,... y n jsou proměnné, O je n-ární operační znak (neboli funkční symbol) a P je n-ární predikátový symbol. Příklad 2.9. Příklad důkazu (ve stylu Hilbertově). Dokážeme zcela triviální tvrzení, že A A pro libovolnou formuli A. Důkaz sestává z následující posloupnosti pěti formulí ϕ 1,..., ϕ 5 ; při pravém okraji uvádíme poznámku, zda formule je axiomem nebo zda byla odvozena z předchozích pravidlem modus ponens: 1. (A ((A A) A)), axiom I., 2. (A ((A A) A)) ((A (A A)) (A A)), axiom II., 3. (A (A A)) (A A), MP 1.+ 2., 4. (A (A A)), axiom I., 5. A A, MP 4.+ 3. Jak je vidět, důkazy i těch nejjednodušších formulí provedené plně formálním způsobem jsou poměrně dlouhé. V matematice proto důkazy tvrzení podáváme raději slovy. Matematikům stačí, že v případě potřeby by podaný slovní důkaz na posloupnost formulí (důkaz ve stylu Hilbertově) bylo možné převést. Idea za tím: Pravdivost formule se snažíme podepřít jejím důkazem. Pravdivost formule Důkaz formule byl čistě syntaktická záležitost. Pravdivost formule je sémantická záležitost z říše Platonského nebe. Máme Universum ( nebe ) a v něm jsou objekty, kterým říkáme individua. Předpokládáme, že v tomto Universu platí axiomy naší teorie (takže jde o model dané teorie). Chceme-li rozhodnout o pravdivosti nějaké formule A, musíme se podívat, jestli daná formule A v tom Universu (ale raději na všech Universech, kde platí naše axiomy) je splněna pravdivá.