From e86cf016c6e0fe9199f8d2875940634f1e8b5a78 Mon Sep 17 00:00:00 2001 From: Martin Mares <mj@ucw.cz> Date: Thu, 22 Jun 2023 10:15:14 +0200 Subject: [PATCH] =?UTF-8?q?AG:=20Aktualizace=20po=20=C4=8Dervnov=C3=A9=20s?= =?UTF-8?q?ch=C5=AFzce?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AG.md | 40 +++++++++++++++------------------------- 1 file changed, 15 insertions(+), 25 deletions(-) diff --git a/AG.md b/AG.md index ebfc935..1cfc6fa 100644 --- a/AG.md +++ b/AG.md @@ -2,7 +2,7 @@ ## Sylabus -1. Konečné automaty (1.5 přednášky) +1. Konečné automaty (2 přednášky) * základní pojmy: abeceda, slovo, jazyk (rozhodovací problém) * definice konečného automatu (DFA), syntaxe a sémantika, regulární jazyk * příklad: 0^n1^n není regulární, důkaz principem holubníku @@ -10,15 +10,16 @@ * regulární pumping lemma (zobecnění myšlenky předchozího důkazu) * příklad: 1^{prvočíslo} není regulární * součin automatů + * TODO: Možná Myhill-Nerode (ve verzi se syntaktickou kongruencí?) -1. Regulární výrazy (1 přednáška) +2. Regulární výrazy (1 přednáška) * nedeterministický konečný automat (NFA) * ekvivalence DFA ↔ NFA * ε-přechody, ekvivalence ε-NFA ↔ NFA * uzavřenost na množinové operace * regulární výrazy popisují právě regulární jazyky -1. Gramatiky (1.5 přednášky) +3. Gramatiky (3 přednášky) * bezkontextové gramatiky, derivační stromy, generované jazyky * pravé a levé lineární gramatiky generují regulární jazyky * obecné lineární gramatiky generují i neregulární jazyky @@ -27,8 +28,10 @@ * algoritmus testující příslušnost slova do bezkontextového jazyka pomocí dynamického programování * iterační lemma pro bezkontextové jazyky + * nedeterministický zásobníkový automat (NPDA) + * NPDA rozhodují bezkontextové jazyky -1. Turingovy stroje (1 přednáška) +4. Turingovy stroje (2 přednášky) * Turingův stroj (TM) a jeho výpočet * TM může příjímat zastavením (částečně rozhodnutelné jazyky), přijímat stavem (rozhodnutelné jazyky) nebo vydávat výstup na pásce (vyčíslitelné funkce) @@ -39,7 +42,7 @@ - nedeterministický TM * vztah mezi TM a RAMem -1. Základy vyčíslitelnosti (1.5 přednášky) +5. Základy vyčíslitelnosti (2 přednášky) * univerzální Turingův stroj, kódování strojů (bez detailů konstrukce) * univerzální jazyk a diagonální jazyk * halting problem je částečně rozhodnutelný, ale není rozhodnutelný @@ -49,38 +52,25 @@ * nerozhodnutelné problémy ohledně bezkontextových gramatik * Riceova věta -1. Polynomiálni složitost a P vs. NP (2.5 přednášky) +6. Polynomiálni složitost a P vs. NP (2 přednášky) * třídy DTIME(f) * redukce počtu pásek a univerzální TM zpomalují jen polynomiálně, stejně tak převody TM <-> RAM => třída P je nezávislá na modelu * třída NP definovaná pomocí certifikátů * převoditelnost v polynomiálním čase - * převody mezi problémy: - * SAT, 3-SAT, 3,3-SAT - * klika, nezávislá množina - * 3D párování - * ZOE (zero-one linear equations) - * 3-barevnost - * hamiltonovská cesta + * příklady převodů mezi problémy * NP-úplnost * Cookova-Levinova věta * třída co-NP, tautologičnost - * TODO: Zmínit obvody, když už je znají z ADS2? -1. Další složitostní třídy (1 přednáška) +# Možné rozšíření + +7. Další složitostní třídy * třídy DSPACE(f), PSPACE * nedeterministické třídy NTIME(f), NSPACE(f), NP, NPSPACE * DTIME(f) ⊆ NTIME(f) ⊆ DSPACE(f) ⊆ NSPACE(f) ⊆ DTIME(2^O(f)) * důsledek: P ⊆ NP ⊆ PSPACE ⊆ NPSPACE ⊆ DTIME(2^poly(n)) * důsledek: DSPACE(log n) ⊆ NSPACE(log n) ⊆ P - * věty o hierarchii - -1. Fine-grained složitost (1.5 přednášky) - * hypotéza o ortogonálních vektorech (OVH) - * hypotézy o exponenciálním čase (ETH a SETH) - * fine-grained převoditelnost - * OVH implikuje dolní odhad pro simulaci NFA - * ETH implikuje dolní odhad pro dominující množínu - * SETH implikuje OVH + * základný myšlenky fine-grained složitosti -*(celkem 11 přednášek)* +*(celkem 12 přednášek)* -- GitLab