340 likes | 499 Views
Úvod do předmětu Formalismus a jeho užití Teorie a axiomy. Cíle předmětu. Poskytnout dostatečné teoretické zázemí Dát jiný pohled na informatiku Odlišit inženýra od „kodéra“ Seznámit s otevřenými problémy Umožnit použití formalismu v DP. Osnova předmětu.
E N D
Cíle předmětu • Poskytnout dostatečné teoretické zázemí • Dát jiný pohled na informatiku • Odlišit inženýra od „kodéra“ • Seznámit s otevřenými problémy • Umožnit použití formalismu v DP
Osnova předmětu • Matematika a její vztah k informatice • Výroková logika • Predikátová logika • Teorie množin • Algebra • Formalizace počítače • Turingovy stroje • Rozhodnutelnost problémů • Složitost algoritmů • Odhad složitosti algoritmů • Složitostní třídy • Pokročilé datové struktury • Grafy, stromy • Algoritmy nad těmito strukturami • Sítě, toky v sítích • Paralelní programování • Paralelní systémy, Petriho sítě
Studijní materiály • Vaníček, J.: Teoretické základy informatiky. Praha: Alfa, 2007. ISBN 978-80-903962-4-1 • Slidy z přednášek • E-learningová osnova/opora v UIS • Google, Wikipedia (anglická!) • Další materiály u jednotlivých celků
Ukončení předmětu • 5 cvičení => 5 domácích úkolů • Na každý úkol možno získat 0-10 bodů • Celkem tedy 50 bodů • Kdo má 30 bodů, má zápočet • Kdo ne, napíše si písemku • Kdo nemá zápočet ani po písemce… • Kdo má zápočet, může jít ke zkoušce • Zkouška bude ústní • Teorie (přednášky) i praxe (cvičení) • 45 bodů z úkolů => zkouška jen teoretická
Prosba: Komunikujte • Ptejte se na přednáškách, cvičeních • Chcete-li něco procvičit, pošlete včas e-mail • Konzultační hodiny po domluvěe-mailem
Formalismus a jeho použití • Je soubor syntaktických a sémantických pravidel pro popis nějaké reálné skutečnosti • Cílem užití formalismu je obvykle odstranění nejednoznačnosti přirozeného jazyka • Formalismus umožňuje popis libovolně složitých problémů
Proč zavádíme formalismus • Potřebujeme přesně specifikovat (zapsat) naše myšlenky • Jde o jednotný jazyk pro popis našich teoretických (a také z nich odvozených praktických) problémů
Jaký formalismus? • Existují dva základní druhy: • matematický (exaktní) • filozofický (intuitivní) • Je možné užít oba principy, výsledné dokazování se však vede exaktně • Každý problém lze formalizovat • Ne každý problém lze v danémformalismu rozhodnout • slepice/vejce
Jak formalismus použít I. • Zvolíme formalismus • existuje více možností pro daný problém • ne každý formalismus je vhodný • musíme obvykle ověřit více formalismů • Formalismus nastudujeme a vyzkoušíme si na modelové situaci • Formulujeme 1. intuitivní představu našeho problému užitím formalismu • Ověříme formální správnost zápisu • Ověříme formulovaný zápis na dostupných modelech problému • Zpřesníme formální zápis
Jak formalismus použít II. • Iterujeme předchozí trojici kroků až do okamžiku dosažení dostatečné podrobnosti a správnosti zápisu • Formalismus může být nevhodný • Pokud jsme dosáhli správné formální specifikace našeho problému, můžeme začít využívat všech vlastností a možností formalismu: • hledání odvozených vlastností • dokazování vlastností a jejich důsledků • klasifikace problémů do tříd • hledání úplnosti problémů v třídách
Hlavní zásady • Formalismus není cíl, ale prostředek pro vyjádření myšlenek • Je užitečné předložit formulovaný problém k posouzení jiné osobě, která formalismus zná • S dostatečnými matematickými znalostmi lze zavést libovolně složitý formalismus, jedná se však pouze o sbírku řeckých písmen a značek
Tvrzení a důkazy • Matematika je deduktivní věda • Všechny pojmy se vymezují definicí • složitější pojmy definujeme na základě jednodušších • Matematické tvrzení (věta) je výrok, který může být buď pravdivý, nebo nepravdivý • právě jeden stav • Pravdivost nemusí být známa • Kritériem pravdivosti matematického tvrzení je jeho důkaz
Paradoxy naivní teorie množin I. • Otec s dítětem jdou po břehu řeky. Vyskočí krokodýl, sežere dítě a říká: “Vrátím ti dítě, pokud uhodneš, jestli ti vrátím dítě, nebo ne.” • Otec odpoví: “Nevrátíš ho.” • Co krokodýl udělá? • Právník Corax učí Tisiase. Domluví se, že Tisias mu za hodiny zaplatí, až vyhraje svůj první případ. Poté se právem nezabývá a Corax jej žaluje, aby mu za hodiny zaplatil. • Tisias: Pokud vyhraju, nemusím ti nic platit (rozhodnutí soudu). Pokud prohraju, nemusím ti nic platit (ještě jsem nevyhrál žádný případ) • Corax: Pokud vyhraju, musíš mi zaplatit (rozhodnutí soudu). Pokud prohraju, vyhraješ svůj první případ a musíš mi zaplatit. zdroj: akva-exo.cz zdroj: e-polis.cz
Paradoxy naivní teorie množin II. • Paradox lháře: “Teď lžu.” • Richardův / Berryho paradox • Nejmenší přirozené číslo, které nelze definovat méně než dvaceti slovy. • Grellingův sémantický paradox • Slovo je autologické je samo o sobě pravdivé • př.: „české“, „krátké“,... • Slovo je heterologické je samo o sobě nepravdivé • př.: „německé“, „nejdelší“,... • Kam zařadit slovo „heterologické“? A „autologické“?
Paradoxy naivní teorie množin III. • Russelův paradox: {x| x x} • Holič holí všechny, kteří se sami neholí • Katalog katalogů neobsahujících sebe sama • V matematice je všechno množina. Je-li teorie množin sporná, pak je sporná celá matematika
Krize matematiky • 1. krize matematiky – Řecko • každé číslo lze vyjádřit jako poměr jiných čísel (existují jen racionální čísla) • matematikové byli spíše “sekta” • východisko: iracionální čísla • 2. krize matematiky – aktuální nekonečno • infinitezimální a integrální počet • vágní definice nekonečně malých veličin • Bolzano, Cauchy, Weierstrass: ε-δ definice limity • 3. krize matematiky – paradoxy teorie množin • částečně vyřešeno axiomatickou výstavbou • krize přetrvává dodnes
Řešení paradoxů • Axiomatická vvýstavba teorie • Oddělení syntaxe a sémantiky • Syntaxe vychází z primitivních pojmů a axiomů • Sémantika vychází z modelu • Objekty, které nevyhovují axiomům v dané teorii nemohou existovat • Např. v teorii množin nemůže existovat “množina všech množin”
Jazyk matematické teorie • Abeceda – souhrn znaků užívaných v teorii • Slova a věty (formule) – povolené řetězce znaků • Smysluplné formule (z hlediska sémantiky) • Pravdivé formule (dokazatelné z axiomů) • Odvozovací pravidla – nezbytná pro dokazatelnost • Metajazyk – používáme k popisu jazyka teorie (např. mezera je metaznak)
Axiomatická výstavba teorie • Axiomy jsou výchozí tvrzení dané teorie, která se nedokazují a jejichž platnost se předpokládá • základní formule jazyka teorie • Z axiomů se dedukcí odvozují další tvrzení nazývané důsledky • využití odvozovacích pravidel
Model teorie • Axiomatická teorie je ryze syntaktická záležitost • dokazování v teorii lze algoritmizovat • Představujeme-li si pod primitivními pojmy objekty reálného světa, vytváříme model teorie. • Modelů lze obecně vytvořit více • každá množina reálných objektů vyhovující axiomům může být modelem teorie • Ve školách se učí model teorie množin, model euklidovské geometrie, atd.
Vlastnosti axiomatické teorie • Nezávislost axiomů – žádný axiom není důsledkem zbývajících axiomů • byl by zbytečný • Bezespornost – důsledkem nemůže být tvrzení a současně jeho negace • Úplnost – každé tvrzení lze v dané teorii dokázat, anebo vyvrátit
Euklidovská geometrie • Máme-li dány dva body, existuje jedna přímka, která jimi prochází. • Konečnou přímou čáru (úsečku) můžeme prodloužit tak, že vznikne opět úsečka. • Je možné nakreslit kružnici s libovolným středem a poloměrem. • Všechny pravé úhly jsou si rovny. • K dané přímce a bodu, který na ní neleží, lze sestrojit právě jednu rovnoběžku, která prochází daným bodem.
Neeuklidovské geometrie • 1829 N.I. Lobačevskij • Neplatí 5. axiom • Rovnoběžek může daným bodem procházet více, nebo žádná • Modely neeuklidovské geometrie • sférická geometrie • hyperbolická geometrie zdroj: wikipedia
Formalizace matematiky • Snaha o řešení paradoxů naivní teorie množin • Zermelo-Fraenkelova axiomatická teorie množin je vystavěna nad logikou • Obavy ze vzniku dalších paradoxů (otázka bezespornosti) vede ke snahám o formalizaci matematiky • Dokazování bezespornosti silných matematických teorií prováděno pomocí kombinatorických manipulací s formulemi (Hilbertův program f.m.) • Kurt Gödel roku 1931 formuloval a dokázal věty o neúplnosti, jejichž důsledkem bylo dokázání, že Hilbertův program nelze uskutečnit
1. Gödelova věta o neúplnosti Každá bezesporná matematická teorie, obsahující jako svoji součást aritmetiku nad přirozenými čísly, není úplná.
Důkaz I: Malá Gödelova čísla • Každý symbol teorie dostane po řadě číslo 1, 2, 3, … • Malé Gödelovo číslo formule je dáno jako součin prvních prvočísel umocněných na číslo symbolu • Např.: • označení symbolů (=1, )=2, x=3, y=4, z=5, =6, =7 • g(„(x y)z“) = 21∙33 ∙ 57 ∙ 74 ∙ 117 ∙ 136 ∙ 175 • Označme G množinu všech Gödelových čísel korektně utvořených formulí. • Vlastní podmnožina N. • Pro každé nN umíme rozhodnout, zda nG. • Tvrzení „ nG“ je tedy aritmetické tvrzení
Důkaz II: Velká Gödelova čísla • Nechť 1, 2, … n je důkaz formule n. • Velkým Gödelovým číslem tohoto důkazu nazveme číslo 2g(1) ∙ 3g(2) ∙… ∙ png(n) • Opět tedy můžeme zavést množinu všech velkých Gödelových čísel HN. • Označme dem(y,x) tvrzení, že y je velké Gödelovo číslo důkazu formule s malým Gödelovým číslem x. • dem je relace na N2 • Tvrzení o dokazatelnosti formule jsme tedy převedli na pravdivost/nepravdivost aritmetického tvrzení (yH): dem(y,g())
Důkaz III: Spor nebo neúplnost • Existuje číslo kG takové, že • g() = k • = (yH): dem(y,k) • Formule je dokazatelná Nelze dokázat formuli s Gödelovým číslem k Nelze dokázat formuli • Formule není dokazatelná Lze tedy dokázat formuli s Gödelovým číslem k Lze dokázat formuli • Jsme-li v bezesporné teorii, pak je nerozhodnutelná formule.
2. Gödelova věta o neúplnosti Žádný formální systém zahrnující alespoň aritmetiku přirozených čísel nemůže dokázat vlastní bezespornost
Shrnutí • Co je to formalismus a co je jeho cílem? • Formulujte Russelův paradox naivní teorie množin • V čem spočívaly tzv. krize matematiky? • Jak se buduje axiomatická teorie? • Jaký je rozdíl mezi teorií a jejím modelem? • Co je to neeuklidovská geometrie? • Co je to nezávislost, úplnost a bezespornost axiomatického systému? • Formulujte Gödelovy věty o neúplnosti