Týden 11. Přednáška. Teoretická informatika průběh výuky v semestru 1. Nejprve jsme dokončili témata zapsaná u minulé přednášky.



Podobné dokumenty
Pozn.MinulejsmesekPSPACEnedostali,protojezdepřekryvstextemzminula.

Týden 14. Přednáška. Teoretická informatika průběh výuky v semestru 1. PSPACE, NPSPACE, PSPACE-úplnost

Třída PTIME a třída NPTIME. NP-úplnost.

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA

Třídy složitosti P a NP, NP-úplnost

Složitost her. Herní algoritmy. Otakar Trunda

Třída PTIME a třída NPTIME. NP-úplnost.

Složitost. Teoretická informatika Tomáš Foltýnek

Složitost 1.1 Opera ní a pam ová složitost 1.2 Opera ní složitost v pr rném, nejhorším a nejlepším p ípad 1.3 Asymptotická složitost

10. Techniky formální verifikace a validace

PŘÍJMENÍ a JMÉNO: Login studenta: DATUM:

FEI, VŠB-TUO, Teoretická informatika( /01) zadání referátů 1

Poznámka. Kezkoušcejemožnojítjenposplněnípožadavkůkzápočtu. Kromě čistého papíru a psacích potřeb není povoleno používat žádné další pomůcky.

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Z. Sawa (VŠB-TUO) Teoretická informatika 18. prosince / 67

Od Turingových strojů k P=NP

Poznámka. Kezkoušcejemožnojítjenposplněnípožadavkůkzápočtu. Kromě čistého papíru a psacích potřeb není povoleno používat žádné další pomůcky.

Složitost problémů. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 25. dubna / 23

Popište a na příkladu ilustrujte(rychlý) algoritmus testující, zda dané dva automaty jsou izomorfní.

Teoretická informatika průběh výuky v semestru 1

Vztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

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

Matematická analýza 1

Problém obchodního cestujícího(tsp) Vstup: Množina n měst a vzdálenosti mezi nimi. Výstup: Nejkratší okružní cesta procházející všemi městy.

4. NP-úplné (NPC) a NP-těžké (NPH) problémy

KMI/VCS1 Vyčíslitelnost a složitost

NP-úplnost. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 23. května / 32

PQ-stromy a rozpoznávání intervalových grafů v lineárním čase

NP-úplnost problému SAT

Teoretická informatika průběh výuky v semestru 1

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

Složitost Filip Hlásek

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů

10. Složitost a výkon

Úvod do informatiky. Miroslav Kolařík

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 α

Složitost a moderní kryptografie

Turingovy stroje. Teoretická informatika Tomáš Foltýnek

Fakulta informačních technologií. Teoretická informatika

Vlastnosti regulárních jazyků

(viztakéslidyktétopřednášce...) Poznámka. Neudělali jsme vše tak podrobně, jak je to v zápisu.

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

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

Definice 9.4. Nedeterministický algoritmus se v některých krocích může libovolně rozhodnout pro některé z několika možných různých pokračování.

Aritmetika s didaktikou I.

ALGORITMY A DATOVÉ STRUKTURY

Modely Herbrandovské interpretace

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

Pumping lemma - podstata problému. Automaty a gramatiky(bi-aag) Pumping lemma - problem resolution. Pumping lemma - podstata problému

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2017

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.

Logika a regulární jazyky

Matematická analýza pro informatiky I. Limita funkce

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

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

Pavel Erlebach. Abstrakt: Tato práce popisuje základy teorie složitosti. Jsou zde ukázány jen základní

5.6.3 Rekursivní indexace složitostních tříd Uniformní diagonalizace Konstrukce rekursivních indexací a aplikace uniformní diagonalizace

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

Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech

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

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

AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace

Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Úvod do informatiky. Miroslav Kolařík

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

Matematika pro informatiky

Překladač sestrojující k regulárnímu výrazu ekvivalentní konečný automat Připomeňme si jednoznačnou gramatiku G pro jazyk RV({a, b})

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

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

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

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

Regulární výrazy. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 14. března / 20

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:

1 Množiny, výroky a číselné obory

Algoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

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

Výpočetní složitost algoritmů

Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:

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

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2014

Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:

COMPLEXITY

Matematická logika. Rostislav Horčík. horcik

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

Logické programy Deklarativní interpretace

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2016

Matematická logika. Miroslav Kolařík

Vyčíslitelnost a složitost HASHIM HABIBALLA - TIBOR KMEŤ Přírodovědecká fakulta OU, Ostrava Fakulta prírodných vied UKF, Nitra

Teoretická informatika - Úkol č.1

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

Množinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ

Problémy třídy Pa N P, převody problémů

Vztah jazyků Chomskeho hierarchie a jazyků TS

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

11 VYPOČITATELNOST A VÝPOČTOVÁ SLOŽITOST

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

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

Cvičení Aktivita 1. část 2. část 3. část Ústní Celkem Známka

Transkript:

Teoretická informatika průběh výuky v semestru 1 Týden 11 Přednáška Nejprve jsme dokončili témata zapsaná u minulé přednášky. PSPACE, NPSPACE, PSPACE-úplnost Uvědomilijsmesi,ženapř.prozjištěnítoho,zdaBílýmánějakoustrategiivehřeŠACHY, která mu zaručuje vítězství v 200 tazích(rozumí se, že Bílý táhne maximálně 200-krát), bychom uměli celkem přímočaře sestavit algoritmus; např. zavoláme MaBilyVS(VychoziPozice, Bílý, 200), kde MaBilyVS(Pozice, NaTahu, Limit): if((pozice, NaTahu) představuje mat Černému) return ANO; if((pozice, NaTahu) představuje pat nebo mat Bílému nebo Limit=0) return NE; if(natahu=bílý) {Postupně pro každý tah Bílého v Pozice zavolej MaBilyVS(Pozice, Černý, Limit), kde Pozice vznikne z Pozice provedením příslušného tahu; když je v nějakém případě vráceno ANO, tak return ANO, jinak return NE}; if(natahu=černý) {Postupně pro každý tah Černého zavolej MaBilyVS(Pozice, Bílý, Limit-1); když je ve všech případech vráceno ANO, tak return ANO, jinak return NE}. Snadno si ovšem spočteme, že odpovědi bychom se od tohoto algoritmu nedočkali, ale není to tím, že by přetekla paměť. Je snadno vidět, že pro přirozenou implementaci v zásadě stačípaměťvelikosti400pozic(400 šachovnic ).(Ano,jednáseojistýprůchodstromem hloubky 400; přitom není třeba konstruovat v paměti celý strom, ale stačí vždy udržovat aktuální větev.) Tím jsme si připomněli, že i v malém prostoru(malé paměti) se pochopitelně dají provádět časově náročné výpočty. Nadefinovali jsme třídy PSPACE, NPSPACE a uvedli si Savitchovu větu(z učebního textu), která mj. implikuje PSPACE = NPSPACE. Uvědomili jsme si inkluze PTIME NPTIME PSPACE=NPSPACE. Máseobecnězato,žeoběinkluzejsouvlastní,byťnikdonevyvrátilmožnostPTIME= PSPACE. Připomněli jsme si, co jsou NP-úplné problémy a nadefinovali jsme PSPACE-úplné problémy. Jako příklady PSPACE-úplných problému jsme uvedli QBF(problém pravdivosti

Teoretická informatika průběh výuky v semestru 2 kvantifikovaných booleovských formulí), Eq-NFA(ekvivalence nedeterministických konečných automatů) a Eq-RegExp(ekvivalence regulárních výrazů).(každý posluchač je jistě již schopen každý námi zkoumaný problém přesně specifikovat a uvést příklady pozitivních anegativníchinstancí...) Uvedli jsme také, že nejrůznější deskové a grafové hry se dají zformalizovat jako PSPACEtěžké(případně PSPACE-úplné) problémy. Např. u šachů by to ovšem chtělo definovat např. (n n)-šachy(provšechna n,nejen n=8).(připomeňme,žepodlenašichdefinicpatří každý problém s konečně mnoha instancemi do třídy T(1), tedy má konstantní složitost!) Všimli jsme si, že problém QBF lze definovat jako zjišťování existence vítězné strategie ve hředvouhráčů,kdeeva( existenčníhráč )nasazujeexistenčněvázanéproměnnéaadam ( univerzálníhráč )nasazujeuniverzálněvázanéproměnné. Dokazatelně nezvládnutelné problémy Jestliže prokážeme NP-obtížnost či PSPACE-obtížnost nějakého problému, říkáme, že je prakticky nezvládnutelný (intractable). Je totiž jasné, že navrhneme-li algoritmus, který řeší(přesněten)danýproblém,aneobjevíme-lipřitomgeniální trik,nakterýdosud nikdo nepřišel, bude mít algoritmus tzv. superpolynomiální(typicky exponenciální či ještě horší) složitost. Obecně používat algoritmus(resp. odpovídající program) budeme moci jen na velmi malá vstupní data. Teoreticky ovšem pořád ještě možnost rychlého algoritmu (založenéhona geniálnímtriku )existuje. Samozřejmě je možné, že exponenciální algoritmus ve skutečnosti chceme použít jen na maládata,anebohotřebapoužívámenadata,přinichžseneprojevíona(worstcase) exponenciální složitost. V tomto smyslu praktická nezvládnutelnost(obecného) problému ještě neznamená, že ho v praxi nemůže počítačový program úspěšně řešit v pro nás zajímavýchpřípadech.(existujíijinémožnosti,jakvpraxiúspěšněřešiti nezvládnutelný problém. Zmíníme se o tom v partiích o aproximačních a pravděpodobnostních algoritmech.) Známe ovšem i tzv. dokazatelně nezvládnutelné problémy(provably intractable problems), tj. ty, u nichž máme dokázáno, že pro ně neexistují polynomiální algoritmy. Definujeme-li např. třídy EXPTIME = T(2 nk ), EXPSPACE= k=0 S(2 nk ) k=0 pak EXPTIME-těžký či EXPSPACE-těžký problém je takovým dokazatelně nezvládnutelným problémem. Dá se totiž ukázat, že inkluze PTIME EXPTIME, PSPACE EXPSPACE jsou skutečně vlastní(tzn., že neplatí rovnost).(my to zde ale dokazovat nebudeme.) Např. následující problém je EXPSPACE-úplný:

Teoretická informatika průběh výuky v semestru 3 Název: RE 2 (ekvivalenceregulárníchvýrazůsmocněním) Vstup:dvaregulárnívýrazy,vnichžjemožnépoužítmocnění(tzn.jemožnopsát α 2 místo α α). Otázka: reprezentují zadané výrazy tentýž jazyk? Připomeňme, že problém Eq-RegExp pro standardní regulární výrazy(bez mocnění) je PSPACE-úplný, stejně jako problém Eq-NFA jazykové ekvivalence nedeterministických konečných automatů.(víme, že složitost je funkcí velikosti vstupu; mocnění v regulárních výrazech umožňuje exponenciálně zkrátit zápis některých dlouhých standardních výrazů.) Existují samozřejmě i dokazatelně těžší(superexponenciální) problémy. Ilustrujme je příkladem problému Presburgerovy aritmetiky(rozhodování pravdivosti formulí teorie sčítání). Rozhodnutelnost Presburgerovy aritmetiky(jen sčítání) Název: ThAdd(problém pravdivosti teorie sčítání) Vstup:formulejazyka1.řáduužívajícíjediný nelogický symbol ternární(tj.3-ární) predikátovýsymbol PLUS(PLUS(x,y,z) df x+y= z). Otázka:jedanáformulepravdivápromnožinu N={0,1,2,...},kde PLUS(a,b,c)je interpretovánojako a+b=c? Důkaz rozhodnutelnosti Presburgerovy aritmetiky (využívající jen predikát PLUS(x,y,z)), tedy důkaz věty 9.3. z kapitoly 9, prodiskutujeme na rozšiřující přednášce. Nerozhodnutelnost aritmetiky(se sčítáním a násobením) Uvedli jsme si jen hlavní myšlenku nerozhodnutelnosti pravdivosti uzavřených formulí 1.řáduspredikáty PLUS(x,y,z)(tj. x+y = z)amult(x,y,z)(tj. x y = z)ve standardním modelu aritmetiky(n, +, ). (Využili jsme nerozhodnutelnosti existence akceptujícího výpočtu zadaného Turingova stroje Mnazadanémslově w.) Podklad k rozšiřující přednášce Rozhodnutelnost Presburgerovy aritmetiky(jen sčítání). Zde vůbec není zřejmé, že existuje algoritmus, který daný problém řeší. Presburger ukázal takový algoritmus ve 20. létech 20. století(jedním z cílů tzv. Hilbertova programu bylo ukázat podobný algoritmus i s připuštěním predikátu pro násobení nemožnost řešení

Teoretická informatika průběh výuky v semestru 4 tohoto úkolu ukázal později Gödel). Mnohem později bylo ukázáno, že každý algoritmus, řešícíproblémthaddmásložitostminimálně2 2n. Presburger ukázal algoritmus využitím tzv. metody eliminace kvantifikátorů. Elegantní důkaz umožňují také výsledky, které známe z teorie konečných automatů. Věta. Existuje algoritmus rozhodující problém ThAdd. Představme si třístopou pásku, kde v každé stopě je řetězec nul a jedniček, tj. binární zápis čísla. Na pásku samozřejmě můžeme hledět jako na jednostopou s tím, že povolené symboly abecedy jsou uspořádané trojice nul a jedniček. Snadno nahlédneme, že existuje konečný automat,kterýpřijímáprávětaslovav abecedětrojic,kterámajítuvlastnost,žesoučet číslavprvnístopěsčíslemvdruhéstopějerovenčísluvetřetístopě.ihnedjetojasné při čtení odzadu; pak si stačí připomenout, že regulární jazyky jsou uzavřeny na zrcadlový obraz. Z dalších uzávěrových vlastností snadno vyvodíme, že pro libovolnou formuli F(x 1,x 2,...,x n )jazykathaddkteráneobsahujekvantifikátory,lzezkonstruovatkon.automat A F přijímajícíprávěbinárnízápisytěch n-ticčísel(na n-stopépásce),prokteréje F(x 1,x 2,...,x n )pravdivá. Proformuli( x n )F(x 1,x 2,...,x n )jemožnézkonstruovatautomat,kterýpřijímáprávě binární zápisy těch (n 1)-tic čísel (dosazených za x 1,x 2,...,x n 1 ), pro které je ( x n )F(x 1,x 2,...,x n )pravdivá:automatpracujena(n 1)-stopépásce,alesimuluje A F tak, že obsah n-té stopy nedeterministicky hádá!(pak ho samozřejmě lze převést na ekvivalentní deterministický automat.) Jelikož( x n )F(x 1,x 2,...,x n )jeekvivalentní ( x n ) F(x 1,x 2,...,x n ),načrtlijsmetakto postup, který k formuli jazyka ThAdd v prenexní formě postupnou aplikací zmíněných konstrukcí sestrojí konečný automat, který přijme prázdné slovo(neboli nějakou posloupnost 0-tic )právětehdy,kdyžvýchozíformulejepravdivá. Partie textu k prostudování Kapitola 9. Cvičení Příklad 11.1 DefinujtetříduPSPACEapojem PSPACE-úplnýproblém ;příklademje: Název: QBF(problém pravdivosti kvantifikovaných booleovských formulí) Vstup: formule ( x 1 )( x 2 )( x 3 )( x 4 )...( x 2n 1 )( x 2n )F(x 1,x 2,...,x 2n ), kde F(x 1,x 2,...,x 2n )jebooleovskáformulevkonjunktivnínormálníformě. Otázka: je daná formule pravdivá? Uveďte nějaké malé, ale netriviální, příklady pozitivních a negativních instancí problému.

Teoretická informatika průběh výuky v semestru 5 (Zbytek příkladu je nepovinný.) DefinujtepravidlahryprohráčeEva( existenčníhráč )aadam( univerzálníhráč ), kteří postupně nasazují hodnoty proměnných. Jde o to, definovat hru tak, aby Eva měla vítěznou strategii(mimochodem, co to je vítězná strategie?) právě tehdy, když je zadaná formule pravdivá(a Adam měl vítěznou strategii právě tehdy, když je zadaná formule nepravdivá). Zbude-li čas, nakonec ilustrujte na malém příkladu, jak lze obecnou plně kvantifikovanou booleovskouformuli φpřevést(vpolynomiálnímčase)naekvivalentní φ,kterájevetvaru požadovaném pro vstup problému QBF. Příklad 11.2 Diskutujte ukázkovou zkouškovou písemku. Speciálně se zaměřte na druhou část, v níž rovněž musíte získat předepsané minimum bodů.(turingovy stroje, RAMy, polynomiální převeditelnost mezi problémy, konkrétní pozitivní a negativní instance rozhodovacích problémů, aplikace Riceovy věty, základní třídy složitosti a jejich úplné problémy,...)