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

Podobné dokumenty
: Teoretická informatika(ti)

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

Formální jazyky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 21. března / 50

Formální jazyky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 2. března / 32

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

AUTOMATY A GRAMATIKY

Úvod do Informatiky 2006

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

Vyhledávání v textu. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

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 Σ

Z. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu / 43

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

Naproti tomu gramatika je vlastně soupis pravidel, jak

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

Zásobníkový automat. SlovoaaaabbbbpatřídojazykaL={a i b i i 1} a a a a b b b b

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

Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

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.

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

Bezkontextové jazyky 2/3. Bezkontextové jazyky 2 p.1/27

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

Minimalizace KA - Úvod

Základy matematické analýzy

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

Teorie množin. Čekají nás základní množinové operace kartézské součiny, relace zobrazení, operace. Teoretické základy informatiky.

Metodický koncept k efektivní podpoře klíčových odborných kompetencí s využitím cizího jazyka ATCZ62 - CLIL jako výuková strategie na vysoké škole

Lineární algebra : Násobení matic a inverzní matice

Základy matematiky pro FEK

Na rozšiřující přednášce minulý týden jsme se věnovali zejména. algoritmu, který k zadanému konečnému automatu sestrojí ekvivalentní regulární výraz

Úvod do Informatiky. 0 Organizační pokyny k výuce IB000. Organizátor předmětu: Ondrej Moriš Cvičící (online přes IS MU):

Lineární algebra : Násobení matic a inverzní matice

Syntaxí řízený překlad

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

Zimní semestr akademického roku 2014/ prosince 2014

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

Jednoznačné a nejednoznačné gramatiky

Základy algoritmizace. Pattern matching

Vlastnosti regulárních jazyků

Soulad studijního programu. Aplikovaná informatika

Úvod do informatiky. Miroslav Kolařík

Diskrétní matematika. DiM /01, zimní semestr 2016/2017

Syntaxí řízený překlad

Katedra počítačů FEL

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

Zimní semestr akademického roku 2014/ prosince 2014

Odpřednesenou látku naleznete v kapitolách skript Abstraktní a konkrétní lineární algebra.

EKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24.

Formální jazyky a gramatiky Teorie programovacích jazyků

Modelování a simulace: o předmětu. Radek Pelánek

Průvodce studiem modulu pro kombinovanou formu studia. Modul č. 13 UPLATNĚNÍ NA TRHU PRÁCE - dílčí část II Bakalářský seminář + příprava na praxi

RELATIONAL DATA ANALYSIS

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

Modelování a simulace: o předmětu. Radek Pelánek

Studijnı opora k prˇedmeˇtu m teoreticke informatiky Petr Jancˇar 22. u nora 2005

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

Posloupnosti a jejich limity

Hledání v textu algoritmem Boyer Moore

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

Matematická analýza pro informatiky I. Limita posloupnosti (I)

NALG 001 Lineární algebra a geometrie 1, zimní semestr MFF UK Doba řešení: 3 hodiny

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

Vztah jazyků Chomskeho hierarchie a jazyků TS

2 Formální jazyky a gramatiky

Matematická logika. Miroslav Kolařík

ALGORITMIZACE A PROGRAMOVÁNÍ

Vybrané kapitoly z matematiky

Aplikovaná numerická matematika - ANM

Trojpoměr v geometrii

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

/1: Teoretická informatika(ti) přednáška 4

Průvodce studiem modulu pro kombinovanou formu studia. Modul č. 14 BAKALÁŘSKÁ PRÁCE A PRAXE. Autor: František Prášek

TOPOLOGIE A TEORIE KATEGORIÍ (2017/2018) 4. PREDNÁŠKA - SOUČIN PROSTORŮ A TICHONOVOVA VĚTA.

Součin matice A a čísla α definujeme jako matici αa = (d ij ) typu m n, kde d ij = αa ij pro libovolné indexy i, j.

Cvičení 5 - Inverzní matice

Server Internetu prostøednictvím slu eb (web, , pøenos souborù) poskytuje data. Na na í pracovní stanici Internet

Server Internetu prostøednictvím slu eb (web, , pøenos souborù) poskytuje data. Na na í pracovní stanici Internet

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

Matematická analýza pro informatiky I. Spojitost funkce

V této kapitole si zobecníme dříve probraný pojem limita posloupnosti pro libovolné funkce.

Testování a spolehlivost. 1. Laboratoř Poruchy v číslicových obvodech

2.2. SČÍTÁNÍ A NÁSOBENÍ MATIC

Modernizace výuky na Fakultě stavební VUT v Brně v rámci bakalářských a magisterských studijních programů CZ / /0292

PŘEDNÁŠKA 2 POSLOUPNOSTI

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku

2. přednáška 8. října 2007

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

MATEMATIKA B 2. Metodický list č. 1. Význam první derivace pro průběh funkce

LIMITA FUNKCE, SPOJITOST FUNKCE

PŘEDNÁŠKA 7 Kongruence svazů

Čísla značí použité pravidlo, šipka směr postupu Analýza shora. Analýza zdola A 2 B 3 B * C 2 C ( A ) 1 a A + B. A Derivace zleva:

MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY. }w!"#$%&'()+,-./012345<ya

Referáty budou přiděleny v zásadě na prvním cvičení. Studenti, kteří to nestihnou, se musí urychleně přihlásit cvičícímu(třeba em).

Matematická analýza pro informatiky I.

Diskrétní matematika. DiM /01, zimní semestr 2016/2017

/01: Teoretická informatika(ti) přednáška 5

TURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Formální jazyky a automaty Petr Šimeček

Transkript:

Teoretická informatika průběh výuky v semestru 1 Týden 1 Po přednášce 14.9. bude text asi mírně modifikován, ale příklady na cvičení se nezmění. (Navíc dodám na web slidy.) Přednáška Na začátku jsme si připomněli základní informace o kursu a podmínkách jeho absolvování, které jsou všechny v Edisonu a na web-stránce předmětu. Zdůraznil jsem ještě tuto věc: Přednáška se v zásadě bude soustřeďovat na ilustraci základních myšlenek z probírané problematiky v součinnosti s aktivně se účastnícími posluchači. Nepůjde o promítání a recitaci toho, co mají všichni k dispozici v základním studijním textu(nanějžsevždyvpopisuprůběhuvýukyodkazujeme,není-liřečenojinak)av příslušných animacích. Je velmi žádoucí, aby si posluchači vždy sami prošli příslušné odkazované partie v textu, uvědomili si případné problémy a nejasnosti a připravili se na cvičení, kde je primární prostor pro vyřešení případných problémů a nejasností.(cvičení nenahrazuje vaše samostudium!) Konečné automaty Připomněli jsme si pojem konečného automatu jako(jednoduchého) modelovacího nástroje aukázalisouvislostsprogramys malou pamětí. Konečný automat při vyhledávání vzorku v textu Zkonstruovali jsme konečný automat, který je základem(efektivního) algoritmu pro vyhledání všech výskytů vzorku abaaba v(dlouhém) řetězci písmen z abecedy {a, b}. Řešili jsmetedy úkol U 0 zčásti3.1.(studijníhotextu).dospělijsmekekonečnémuautomatu sestavy U 0,U 1,...,U 6.Přikonstrukcisemůžeosvědčitznačení U 0... abaaba...0(potenciálnějsmeprávěpřečetli 0-toupozici vzorku) U 1... a baaba...0,1(potenciálnějsmeprávěpřečetli1.nebo0.pozicivzorku)... U 6... a ba aba...0,1,3,6(přečetlijsme6.,3.,1.,nebo0.pozicivzorku) Použili jsme obecný algoritmus zachycený tímto pseudokódem(pro vstup patt: array[1..d] of char): Next[0,patt[1]]:=1; x Σ {patt[1]}:next[0,x]:=0; Sec[1]:=0; for i:=1to d 1do

Teoretická informatika průběh výuky v semestru 2 N ext[i, patt[i+1]]:= i+1; x Σ {patt[i+1]}:next[i,x]:= Next[Sec[i],x]; Sec[i+1]:= N ext[sec[i], patt[i+1]]; x Σ:Next[d,x]:= Next[Sec[d];x]; (Demonstrovali jsme tak de facto variantu algoritmu Knuth- Morris- Pratt.) Připomněli jsme si pak definici konečného automatu jako matematické struktury A=(Q,Σ,δ,q 0,F) a definici jazyka rozpoznávaného(přijímaného) automatem A L(A)={w Σ slovo wjepřijímáno A}={w Σ q 0 w F} a uvědomili jsme si, že jsme vlastně zkonstruovali automat přijímající jazyk {w {a,b} wmásufix abaaba}. Modulární postup při návrhu konečných automatů Zkonstruovali jsme konečný automat rozpoznávající jazyk L 0 = {w {0,1} bn(w)jedělitelnétřemiawneobsahujepodřetězec101}, kde bn(w)znamenáčíslo,proněžje wjehobinárnímzápisem(např. bn(0101)=5;definujemetaké bn(ε)=0). Postupovalijsmetak,žejsmenejdřívezkonstruovali(4-stavový)automat A 2projazyk L 2= {w {0,1} wobsahujepodřetězec101}, tenjsmetransformovalina(4-stavový)automat A 2 rozpoznávajícídoplněkjazyka L 2,tj. jazyk L 2 = {0,1} L 2= {w {0,1} wneobsahujepodřetězec101}, pakjsmezkonstruovali(3stavový) A 1 projazyk L 1 = {w {0,1} bn(w) mod3=0} (uvědomilijsmesi,že bn(uv)=bn(u) 2 v +bn(v)(speciálně bn(u0)=bn(u) 2abn(u1)= bn(u) 2+1), takže z dosud přečteného prefixu u si stačí pamatovat hodnotu bn(u) mod 3) anazávěrjsmenaznačilikonstrukci kartézskéhosoučinu,kterákautomatům A 1,A 2 vyrobí(12-stavový)automat Arozpoznávající L(A 1 ) L(A 2 )=L 0.

Teoretická informatika průběh výuky v semestru 3 Induktivní definice Pobavili jsme se o induktivních definicích a ilustrovali jsme příkladem zavedení značení(či ternárníhopredikátu) q w q,jakuvedenov matematicképoznámce nastr.58. (Levý) kvocient jazyka podle slova Uvědomili jsme si, že konstrukce konečných automatů úzce souvisí s operací(levého) kvocientu jazyka podle slova. Ilustrovali jsme definici u\l={v uv L}, uvedliznačení(kdanému A=(Q,Σ,δ,q 0,F)) L toacc q a intuitivně jsme pochopili, že = {v Σ q v F} (tedy L(A)=L toacc q 0 ) w kdyžmáme q 0 q,takplatí L toacc q = w\l toacc q 0 = w\l(a). Pak jsme vyslovili následující větu(3.18 z části 3.8., str. 87). Věta.Jazyk L Σ jeregulární(tzn.přijímanýkonečnýmautomatem)právětehdy,když jemnožinakvocientů {w\l w Σ }konečná. Ukázali jsme implikaci zleva-doprava a začali diskutovat opačnou implikaci. Příště dokončíme,takésvyužitímvětyprodůkaz,žejazyk {a n b n n 1}regulárnínení. Partie textu k prostudování Posluchači by si měli projít Kapitolu 2(Formální jazyky) a sekce 3.1., 3.2., 3.3.(Tzn. udělat si přinejmenším dobrou první představu a zamyslet se nad příklady, speciálně těmi plánovanými na cvičení, ať se mohou na cvičení aktivně účastnit a případné problémy si tam objasnit.) Cvičení Příklad 1.1 Vypišteprvníchdesetslovzjazyka L={w {a,b} každývýskytpodslova aajeve wihnednásledovánznakem b}.odkazujemesekuspořádání < L,tedyslovamámeuspořádána(vzestupně) podle délky a v rámci stejné délky abecedně, přičemž předpokládáme abecední uspořádání a < b. Příklad 1.2 Definujteoperacizřetězeníjazyků L 1 L 2. Připomeňtesi,žeprojazyk Llzedefinovat L (iteracejazyka L)např.takto: L = {w existuje naslova v 1,v 2,...,v n v Ltak,že w=v 1 v 2...v n } (zpřípadu n=0vyplývá,že ε L ).

Teoretická informatika průběh výuky v semestru 4 Příklad 1.3 Charakterizujteslovajazyka L=L 0 L 1,kde L 0 jemnožinavšechslovobsahujícíchvíce 0než1(tedy L 0 = {w {0,1} w 0 > w 1 })al 1 jemnožinavšechslovobsahujících více1než0(tedy L 1 = {w {0,1} w 0 < w 1 }). Jakáslovapatřídoiteracejazyka L,tedydo L? Příklad 1.4 Jaká slova patřídojazyka L R 1,tj. jazyka, kterýje zrcadlovým obrazemjazyka L 1 = {ε,a,abb,baaba}? Jakýjejazyk L R 2 pro L 2 = {w w a mod2=0}? Platíprotytojazyky(L 1 L 2 ) R =(L 1 ) R (L 2 ) R? Platí(L 1 L 2 ) R =(L 2 ) R (L 1 ) R?Platítentovztahobecněprojakékolijazyky L 1,L 2? Příklad 1.5 Navrhnětekonečnýautomat Atak,že L(A)=L,kde L={w {a,b} každývýskyt podslova aajeve wihnednásledovánznakem b}. Charakterizujte jazyky a\l, b\l. Příklad 1.6 Zkonstruujte modulárně konečný automat přijímající jazyk L={w {0,1} wobsahujepodslovo010nebo w 1 jesudé}. Později se zamyslíme, zda půjde počet stavů výsledného automatu zmenšit. Příklad 1.7 Zjistěte, zda obecně platí některý ze vztahů (uv)\l=u\(v\l), (uv)\l=v\(u\l). Dokažte svá zjištění. Příklad 1.8 Vybudujte si intuici o(ne)regulárních jazycích promyšleným zodpovězením otázek na s. 88a89.Tysetýkají(ne)regularitynásledujícíchjazyků.(Zápisem w R značímezrcadlový obraz[reversal]slova w;induktivnělzedefinovattakto: ε R = ε;(au) R = u R a.) {w {a,b} ; w a mod2=0} {w {a,b} ;wzačínánebokončídvojicístejnýchpísmen } {w {a,b} ; w a < w b }

Teoretická informatika průběh výuky v semestru 5 {w {a,b,c} ;jestliže wneobsahujepodřetězec abc,pakkončí bca} {w {a,b} ; w a > w b nebo wkončí baa} {w {a,b} ; w a > w b nebo w b 2} {u;ex. w {a,b} tak,že u=ww R },stručnějitaképsáno {ww R ;w {a,b} }, {w {a,b} ;w=w R } {w {a} ;w=w R } {ww;w {a,b} } {ww;w {a} } {w {a,b} ;rozdílpočtůznaků aaznaků bve wjevětšínež100} {w {a,b} ;součin w a a w b jevětšíneboroven100} {w {a} ; w jeprvočíslo }