Čí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:
|
|
- Arnošt Štěpán Hruška
- před 7 lety
- Počet zobrazení:
Transkript
1 1) Syntaktická analýza shora a zdola, derivační strom, kanonická derivace ezkontextová gramatika gramatika typu 2 Nechť G = <U,V,S,R> je gramatika typu 1. Řekneme, že je gramatikou typu 2, platí-li: y U V y, x R, tzn. levá strana libovolného pravidla je tvořena jedním neterminálním symbolem. Syntaktická analýza shora, zdola syntaktickou analýzu (analýzu toho, zda předložený řetěz je či není generován gramatikou typu 2) lze provádět pomocí zásobníkového automatu ZA (obdoba KNA), nebo přímo, bez sestrojení ZA, analýzou shora či zdola: analýza shora z počátečního symbolu se pomocí zadaných pravidel gramatiky snažíme získat předložený řetěz analýza zdola v předloženém řetězu hledáme podřetěz, který je pravou stranou nějakého pravidla a ten nahradíme levou stranou tohoto pravidla. Tento postup opakujeme pro takto získané řetězy. Pokud je po konečném počtu opakování získán počáteční symbol, je předložený řetěz generován gramatikou Derivační strom Př. 1.: Nechť G = <{a,+,*,),(,a,,},{a,+,*,),(},{a},p> P = {(A,A+), (A,), (,*), (,), (,(A)), (,a)} očíslujme zadaná pravidla, tedy: (A,A+) (A,) (,*) (,) (,(A)) (,a) Zjisti, zda řetěz a*(a+a) je generován L(G). Čísla značí použité pravidlo, šipka směr postupu Analýza shora Analýza zdola A 2 3 * a * ( a + a ) ( A ) A a A + A a 6 a 3 2 A Derivace zleva: Derivace zleva: Derivace zprava: Derivace zprava: Poznámka: Derivace je posloupnost použitých pravidel při dané analýze. Např. derivaci zprava analýzy zdola sepíšu takto: Modrá šipka (pravidla 6,4), narazili jsme na společný proud, musím se vrátit do druhé větve; zelená šipka (pravidla 6,4,2); nyní mohu zpracovat společný proud tedy oranžová šipka (pravidla 1,5); opět narážím na společný proud, vracím se do počátku druhého ramena, což představuje hnědá šipka (pravidla 6,4) a nakonec sepíši společný proud červená šipka (pravidla 3,2). Výsledná derivace: 6,4, 6,4,2, 1,5, 6,4, 3,2. 1/6
2 Kanonická derivace provedeme na příkladu 1: kanonická derivace zleva Kontrola písmen v zadaném řetězu Pravidlo, které užijeme Stádium vývoje derivačního stromu Pravý zbytek derivačního stromu a*(a+a) posun na první znak A A 2 3 * * 4 * * čtení a*(a+a) posun na a*(a+a) 6!!! a* a* čtení a*(a+a) posun na a*(a+a)!!! a* * čtení a*(a+a) posun na a*(a+a) 5!!! a*(a) (A) a* a*(a) A) 1 a*(a+) A+) 2 a*(+) +) 4 a*(+) +) čtení a*(a+a) posun na a*(a+a) 6!!! a*(a+) a+) čtení a*(a+a) posun na a*(a+a)!!! a*(a+) +) a*(a+) ) 4 a*(a+) ) čtení a*(a+a) posun na a*(a+a) 6!!! a*(a+a) a) čtení a*(a+a) posun na a*(a+a)λ!!! a*(a+a) ) a*(a+a)λ čtení a*(a+a)λ a*(a+a)λ Úspěch!!!!!!! - objeví-li se v derivačním stromě terminál, načte se aktuální písmeno v zadaném řetězu a provede se porovnání; pokud jsou shodná pokračuje se, pokud nejsou, ukončí se proces zadaný řetěz není generovaný jazykem L(G) 2) Zásobníkový automat (ZA) s jedním stavem (souvislost činnosti jeho komponent s průběhem kanonické derivace řetězu) λ ZA = ({s},v,u,δ,s,q,r) {s} množina všech stavů V terminální znaky U všechny znaky δ přechodová funkce s stav jednotky Q počáteční symbol v zásobníku R množina akceptačních stavů Páska se zadaným řetězem Přečtená část řídící jednotka (Automat) S Nepřečtená část W Čtecí hlava Situace automatu (s,w,ξ): s aktuální stav řídící jednotky (automatu) w V* nepřečtená část slova (řetěz) ξ U* symboly (řetěz) v zásobníku Zásobník ξ (LIFO) 2/6
3 ZA s jedním stavem předveden na příkladu 1. ZA = ({s},v,u,δ,s,a,ø) {s} množina všech stavů V = {a,+,*,),(} - terminální znaky U = V {A,,} všechny znaky δ přechodová funkce s stav jednotky A počáteční symbol v zásobníku Ø akceptačních stav Zásobníkový automat pracuje takto: Čtecí hlava je nastavena na první symbol zadaného řetězu, zásobník obsahuje počáteční symbol A. Postupně se provádí vyhodnocování situace automatu a následná akce (substituce či výmaz ze zásobníku) pomocí přechodové funkce. Přechodová funkce δ δ: {s} x (V {λ}) x u P({s} x u*) V závislosti na aktuálním stavu řídící jednotky (s {s}), aktuálního přečtené znaku (w {V {λ}}) a aktuálního znaku v zásobníku (u) je provedena náhrada takto: stav s je změněn na stav s a znak z vrcholu zásobníku u je zaměněn za nový znak u, případně řetěz u*. Obecně mohou nastat dvě situace: a) čtecí jednotka se nepohybuje, provádí se substituce a uložení substituovaných znaků do zásobníku (nastává při příchodu neterminálu tedy znaků A, či ), nebo b) čtení znaku čtecí jednotkou, ověření (zda je shodný načtený znak se znakem na vrcholu zásobníku), posun hlavy a výmaz znaku na vrcholu zásobníku. a) δ(s,λ,y) = {(s,x);y x je pravidlo} b) δ(s,α,α) = {(s,λ)} Pozn.: ad a) (s,λ,y): λ nenačtený znak (hlava je připravena číst, ještě nenačetla, jen se posunula) ad b) (s,λ): jedná se o výmaz znaku z vrcholu zásobníku ukončení: δ(s,λ,λ) = úspěch! Slovo patří do jazyka. Jedná se o konečný nedeterministický automat Konkrétně pro náš příklad: a) δ(s,λ,a) = {(s,a+),(s,)} δ(s,λ,) = {(s,*),(s,)} δ(s,λ,) = {(s,(a)),(s,a)} b) δ(s,a,a) = δ(s,+,+) = δ(s,*,*) = δ(s,),)) = δ(s,(,() = {(s,λ)} δ(s,λ,λ) = úspěch! Slovo patří do jazyka. 3/6
4 Ukázka vztahující se ke kanonické derivaci (řetěz a*(a+a) z příkladu 1.) Načtený znak zadaného řetězu Znak na vrcholu zásobníku Situace automatu (stav,zbytek_zadaného_řetězu, zásobník) Přechodová funkce Znaky vložené do zásobníku (od vrcholu dolů v tomto pořadí) λ A (s,a*(a+a),a) Počáteční stav A λ A (s,a*(a+a),a) δ(s,λ,a) = {(s,)} λ (s,a*(a+a),) δ(s,λ,) = {(s,*)} * λ (s,a*(a+a),*) δ(s,λ,) = {(s,)} * λ (s,a*(a+a),*) δ(s,λ,) = {(s,a)} a* a a (s,*(a+a),a*) δ(s,a,a) = {(s,λ)} * * * (s,(a+a),*) δ(s,*,*) = {(s,λ)} λ (s,(a+a),) δ(s,λ,) = {(s,(a))} (A) ( ( (s,a+a),(a)) δ(s,(,() = {(s,λ)} A) λ A (s,a+a),a)) δ(s,λ,a) = {(s,a+)} A+) λ A (s,a+a),a+)) δ(s,λ,a) = {(s,)} +) λ (s,a+a),+)) δ(s,λ,) = {(s,)} +) λ (s,a+a),+)) δ(s,λ,) = {(s,a)} a+) a a (s,+a),a+)) δ(s,a,a) = {(s,λ)} +) + + (s,a),+)) δ(s,+,+) = {(s,λ)} ) λ (s,a),)) δ(s,λ,) = {(s,)} ) λ (s,a),)) δ(s,λ,) = {(s,a)} a) a a (s,),a)) δ(s,a,a) = {(s,λ)} ) ) ) (s,λ,)) δ(s,),)) = {(s,λ)} λ λ λ (s,λ,λ) δ(s,λ,λ) = {(s,λ)} 3) Obecná definice zásobníkového automatu (ZA), pojmy situace ZA, přijímání prázdným zásobníkem, přijímání koncovým stavem, vztah ZA a KNA Zásobníkový automat ZA = (Q,Σ,Γ,δ,q 0,Z 0,F) Q neprázdná množina stavů Σ (sigma) konečná vstupní abeceda Γ (gama) konečná zásobníková abeceda δ (delta) přechodová funkce q 0 počáteční stav Z 0 počáteční zásobníkový symbol F akceptační stavy Přechodová funkce δ δ: Q x (Σ {λ}) x Γ P(Q x Γ*) Upřesníme-li: δ(q,a,x) = {(q 1,η 1 ),(q 2,η 2 ),...,(q m,η m )} a {Σ {λ}} vstupní abeceda doplněná o λ x Γ zásobníkový znak 4/6
5 q 1...q m stavy z množiny Q η 1...η m Γ* Pozn.: platí-li a = λ, jedná se o prázdné kroky Situace ZA (q,w,ξ) q aktuální stav w Σ* řetěz nad Σ (nepřečtená část slova (řetěz)) ξ Γ* symboly (řetěz) v zásobníku η Γ* část symbolů (řetězu) v zásobníku Řekneme, že situace (q,aw,yη) vede bezprostředně k situaci (q,w,xη); předložený řetěz se zkrátí o a (za předpokladu (q,x) δ(q,a,y)). Značíme: (q,aw,yη) (q,w,xη). w w a *(a+a) *(a+a) Můžeme rozšířit na posloupnost E E ' (situace E vede ne-bezprostředně k situaci E*) Přijímání slov ZA může přijímat dvěma způsoby: a) Prázdným zásobníkem N(ZA) b) Koncovým stavem L(ZA) N(ZA) = {w q Q : q 0, w, z 0 q,, } L(ZA) = {w q F, : q 0, w, z 0 q,, } q koncový stav λ konec slova (už není co číst v zadaném slově) η něco v zásobníku Zásobníkový automat se užívá jen pro bezkontextové jazyky a vyskytuje ve dvou variantách: a) s jedním stavem přijímá jen prázdným zásobníkem b) s více stavy přijímá buď prázdným zásobníkem, nebo koncovým stavem Př. 2.: ZA s rozpoznáváním prázdným zásobníkem; ZA = ({p,q},{0,1},{a,,},δ,p,a,ø) L = {ww R w {O,1}*} (w je z množiny řetězců nad množinou {0,1}; w R značí inverzi: je-li w = a 1 a 2...a n je w R = a n...a 2 a 1 ). Pravidla: 1. δ(p,0,a) = {(p,a)} 2. δ(p,1,a) = {(p,a)} 3. δ(p,0,) = {(p,),(q,λ)} 4. δ(p,0,) = {(p,)} 5. δ(p,1,) = {(p,)} 6. δ(p,1,) = {(p,),(q,λ)} 7. δ(q,0,) = {(η,λ)} 8. δ(q,1,) = {(q,λ)} 9. δ(p,λ,a) = {(q,λ)} 10. δ(q,λ,a) = {(q,λ)} Je slovo generováno jazykem L? 5/6
6 Jde o to, zda platí: p,110011, A?? p,, či q,, Lze vyvodit tuto posloupnost: p,110011, A 2 p,10011, A 6 p,0011,a 4 p,011, A 3 q,11, A 8 q,1,a 8 q,, A 10 q,, Pozn.: čísla nad znaky vyvozování značí číslo užitého pravidla. Platí: p,110011, A q,, a řetězec je generován jazykem. Vztah KNA = (S,V,g,I,G) a ZA = (Q,Σ,Γ,δ,q 0,Z 0,F) KNA (konečný nedeterministický akceptor) je speciálním případem ZA (zásobníkového automatu) 6/6
Automaty a gramatiky
Automaty a gramatiky Roman Barták, KTIML bartak@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Co bylo minule Úvod do formálních gramatik produkční systémy generativní gramatika G=(V N,V T,,P) G =
VíceZ. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu / 43
Zásobníkové automaty Z. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu 2018 1/ 43 Zásobníkový automat Chtěli bychom rozpoznávat jazyk L = {a i b i i 1} Snažíme se navrhnout zařízení (podobné konečným
VíceSyntaxí řízený překlad
Syntaxí řízený překlad Překladový automat Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 27. listopadu 2008 Zobecněný překladový automat Překladový automat
VíceTuringovy stroje. Teoretická informatika Tomáš Foltýnek
Turingovy stroje Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika strana 2 Opakování z minulé přednášky Jaké znáte algebraické struktury s jednou operací? Co je to okruh,
Vícedoplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je
28 [181105-1236 ] 2.7 Další uzávěrové vlastnosti třídy regulárních jazyků Z předchozích přednášek víme, že třída regulárních jazyků je uzavřena na sjednocení, průnik, doplněk, zřetězení, Kleeneho operaci
VíceVýpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory
Plán přednášky Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory Obecný algoritmus pro parsování bezkontextových jazyků dynamické programování 1 Zásobníkový
VíceKapitola 6. LL gramatiky. 6.1 Definice LL(k) gramatik. Definice 6.3. Necht G = (N, Σ, P, S) je CFG, k 1 je celé číslo.
Kapitola 6 LL gramatiky 6.1 Definice LL(k) gramatik Definice 6.1. Necht G = (N, Σ, P, S) je CFG, k 1 je celé číslo. Definujme funkci FIRST G k : (N Σ) + P({w Σ w k}) předpisem FIRST G k (α) = {w Σ (α w
VíceVztah jazyků Chomskeho hierarchie a jazyků TS
Vztah jazyků Chomskeho hierarchie a jazyků TS Jan Konečný; (přednáší Lukáš Havrlant) 15. října 2013 Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 1 / 23 Rychlé
VícePROGRAMOVACÍ JAZYKY A PŘEKLADAČE LL SYNTAKTICKÁ ANALÝZA DOKONČENÍ, IMPLEMENTACE.
PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LL SYNAKICKÁ ANALÝZA DOKONČENÍ, IMPLEMENACE. VLASNOSI LL GRAMAIK A JAZYKŮ. 2011 Jan Janoušek BI-PJP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Gramatika
VíceAutomaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů
BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 2/29 Hodnocení předmětu BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 4/29 Automaty a gramatiky(bi-aag) 1. Základní pojmy Jan Holub Katedra teoretické
VíceZásobníkový automat. SlovoaaaabbbbpatřídojazykaL={a i b i i 1} a a a a b b b b
ChtělibychomrozpoznávatjazykL={a i b i i 1} Snažíme se navrhnout zařízení(podobné konečným automatům), které přečte slovo, a sdělí nám, zda toto slovo patřídojazykalčine. Při čtení a-ček si musíme pamatovat
VíceZáklady teoretické informatiky Formální jazyky a automaty
Základy teoretické informatiky Formální jazyky a automaty Petr Osička KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI Outline Literatura Obsah J.E. Hopcroft, R. Motwani, J.D. Ullman Introduction to
VíceFakulta informačních technologií. Teoretická informatika
Vysoké učení technické v Brně Fakulta informačních technologií Teoretická informatika Třetí úkol 2 Jan Trávníček . Tato úloha je řešena Turingovým strojem, který je zobrazen na obrázku, který si můžeme
VíceVlastnosti Derivační strom Metody Metoda shora dolů Metoda zdola nahoru Pomocné množiny. Syntaktická analýza. Metody a nástroje syntaktické analýzy
Metody a nástroje syntaktické analýzy Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 14. října 2011 Vlastnosti syntaktické analýzy Úkoly syntaktické
VíceJednoznačné a nejednoznačné gramatiky
BI-AAG (2011/2012) J. Holub: 11. Bezkontextové gramatiky p. 2/36 Jednoznačné a nejednoznačné gramatiky BI-AAG (2011/2012) J. Holub: 11. Bezkontextové gramatiky p. 4/36 Automaty a gramatiky(bi-aag) 11.
VíceFormální jazyky a gramatiky Teorie programovacích jazyků
Formální jazyky a gramatiky Teorie programovacích jazyků doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Připomenutí základních pojmů ABECEDA jazyk je libovolná podmnožina
VíceMnož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 Σ
Abecedou se rozumí libovolná konečná množina Σ. Prvky abecedy nazýváme znaky (symboly) Slovo (řetězec) v nad abecedou Σ je libovolná konečná posloupnost znaků této abecedy. Prázdné posloupnosti znaků odpovídá
VíceImplementace LL(1) překladů
Překladače, přednáška č. 6 Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 30. října 2007 Postup Programujeme syntaktickou analýzu: 1 Navrhneme vhodnou LL(1) gramatiku
VíceBezkontextové jazyky. Bezkontextové jazyky 1 p.1/31
Bezkontextové jazyky Bezkontextové jazyky 1 p.1/31 Jazyky typu 2 Definice 4.1 Gramatika G = (N, Σ, P, S) si nazývá bezkontextovou gramatikou, jestliže všechna pravidla z P mají tvar A α, A N, α (N Σ) Lemma
VíceNaproti tomu gramatika je vlastně soupis pravidel, jak
1 Kapitola 1 Úvod V přednášce se zaměříme hlavně na konečný popis obecně nekonečných množin řetězců symbolů dané množiny A. Prvkům množiny A budeme říkat písmena, řetězcům (konečným posloupnostem) písmen
VíceFormální jazyky a automaty Petr Šimeček
Formální jazyky a automaty Petr Šimeček Úvod Formální jazyky a automaty jsou základním kamenem teoretické informatiky. Na počátku se zmíníme o Chomského klasifikaci gramatik, nástroje, který lze aplikovat
VíceAUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace
AUTOMATY A 11 GRAMATIKY Pavel Surynek Univerzita Karlova v Praze Matematicko-fyzikální fakulta Katedra teoretické informatiky a matematické logiky Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně
VíceTURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
TURINGOVY STROJE Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 12 Evropský sociální fond Praha & EU: Investujeme do vaší
VíceAutomaty a gramatiky. Uzávěrové vlastnosti v kostce R J BKJ DBKJ. Roman Barták, KTIML. Kvocienty s regulárním jazykem
11 Automaty a gramatiky Roman Barták, KTIML bartak@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Uzávěrové vlastnosti v kostce Sjednocení Průnik Průnik s RJ Doplněk Substituce/ homomorfismus Inverzní
VíceOSTRAVSKÁ UNIVERZITA V OSTRAVĚ PŘÍRODOVĚDECKÁ FAKULTA
OSTRAVSKÁ UNIVERZITA V OSTRAVĚ PŘÍRODOVĚDECKÁ FAKULTA BAKALÁŘSKÁ PRÁCE 2002 SEDLÁK MARIAN - 1 - OSTRAVSKÁ UNIVERZITA PŘÍRODOVĚDECKÁ FAKULTA KATEDRA INFORMATIKY A POČÍTAČŮ Vizualizace principů výpočtu konečného
VíceAutomaty a gramatiky(bi-aag) Formální překlady. 5. Překladové konečné automaty. h(ε) = ε, h(xa) = h(x)h(a), x, x T, a T.
BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 2/41 Formální překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 4/41 Automaty a gramatiky(bi-aag) 5. Překladové konečné
VíceKonstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,
[161014-1204 ] 11 2.1.35 Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, kde i = 0, 1,..., takto: p 0 q právě tehdy, když bud p, q F nebo p, q F. Dokud i+1 i konstruujeme p
VíceBezkontextové gramatiky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 6. května / 49
Bezkontextové gramatiky Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 6. května 2018 1/ 49 Bezkontextové gramatiky Příklad: Chtěli bychom popsat jazyk aritmetických výrazů obsahující výrazy jako například:
VíceRegulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:
IB102 Automaty, gramatiky a složitost, 6. 10. 2014 1/29 Regulární výrazy Definice 2.58. Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto: 1 ε, a a pro každé a
Více/1: Teoretická informatika(ti) přednáška 4
456-330/1: Teoretická informatika(ti) přednáška 4 prof. RNDr Petr Jančar, CSc. katedra informatiky FI VŠB-TUO www.cs.vsb.cz/jancar LS 2009/2010 Petr Jančar (FI VŠB-TU) Teoretická informatika(ti) LS 2009/2010
VíceBezkontextové jazyky. Bezkontextové jazyky 1 p.1/39
Bezkontextové jazyky Bezkontextové jazyky 1 p.1/39 Jazyky typu 2 Definice 4.1 Gramatika G = (N, Σ, P, S) si nazývá bezkontextovou gramatikou, jestliže všechna pravidla z P mají tvar A α, A N, α (N Σ) Lemma
VíceBezkontextové jazyky 2/3. Bezkontextové jazyky 2 p.1/27
Bezkontextové jazyky 2/3 Bezkontextové jazyky 2 p.1/27 Transformace bezkontextových gramatik Bezkontextové jazyky 2 p.2/27 Ekvivalentní gramatiky Definice 6.1 Necht G 1 a G 2 jsou gramatiky libovolného
Více/01: Teoretická informatika(ti) přednáška 5
460-4005/01: Teoretická informatika(ti) přednáška 5 prof. RNDr Petr Jančar, CSc. katedra informatiky FEI VŠB-TUO www.cs.vsb.cz/jancar LS 2010/2011 Petr Jančar (FEI VŠB-TU) Teoretická informatika(ti) LS
VíceBezkontextové jazyky 3/3. Bezkontextové jazyky 3 p.1/27
Bezkontextové jazyky 3/3 Bezkontextové jazyky 3 p.1/27 Vlastnosti bezkontextových jazyků Bezkontextové jazyky 3 p.2/27 Pumping teorém pro BJ Věta 6.1 Necht L je bezkontextový jazyk. Pak existuje konstanta
Více2 Formální jazyky a gramatiky
2 Formální jazyky a gramatiky 2.1 Úvod Teorie formálních gramatik a jazyků je důležitou součástí informatiky. Její využití je hlavně v oblasti tvorby překladačů, kompilátorů. Vznik teorie se datuje přibližně
VíceBRNO UNIVERSITY OF TECHNOLOGY FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS MASTER S THESIS AUTHOR
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS SYSTÉMY FORMÁLNÍCH
VícePřijímací zkouška na navazující magisterské studium 2018
Přijímací zkouška na navazující magisterské studium 2018 Řešení příkladů pečlivě odůvodněte. Příklad 1 (2 bodů) Studijní program: Studijní obory: Varianta A Matematika MMUI Navrhněte deterministický konečný
VíceTeoretická informatika
Teoretická informatika Ladislav Lhotka lhotka@cesnet.cz 2011-12 Zdroje LINZ, P. Formal Languages and Automata, Fourth Edition. Sudbury: Jones and Bartlett, 2006, 415+xiii s. ISBN 07-63-73798-4. CHYTIL,
VíceZÁKLADY TEORETICKÉ INFORMATIKY
KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO ZÁKLADY TEORETICKÉ INFORMATIKY PAVEL MARTINEK VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM
VíceStrukturální rozpoznávání
Strukturální rozpoznávání 1 Strukturální rozpoznávání obsah hierarchický strukturální popis systém strukturálního rozpoznávání teorie gramatik volba popisu výběr primitiv výběr gramatiky syntaktická analýza
VíceMinimalizace KA - Úvod
Minimalizace KA - Úvod Tyto dva KA A,A2 jsou jazykově ekvivalentní, tzn. že rozpoznávají tentýž jazyk. L(A) = L(A2) Názorně lze vidět, že automat A2 má menší počet stavů než A, tudíž našim cílem bude ukázat
VíceVirtuální počítač. Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor. PGS K.
Virtuální počítač Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor Virtuální počítač Překladač Překladač : Zdrojový jazyk Cílový jazyk Analytická část:
VíceSYNTAKTICKÁ ANALÝZA ZALOŽENÁ NA GRAMATICKÝCH A AUTOMATOVÝCH SYSTÉMECH PARSING BASED ON GRAMMAR AND AUTOMATA SYSTEMS
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS SYNTAKTICKÁ ANALÝZA
VíceTeoretická informatika TIN 2013/2014
Teoretická informatika TIN 2013/2014 prof. RNDr. Milan Češka, CSc. ceska@fit.vutbr.cz doc.ing. Tomáš Vojnar, Ph.D. vojnar@fit.vutbr.cz sazba Ing. A. Smrčka, Ing. P. Erlebach, Ing. P. Novosad Vysoké učení
VíceZÁPADOČESKÁ UNIVERZITA V PLZNI
ZÁPADOČESKÁ UNIVERZITA V PLZNI FAKULTA PEDAGOGICKÁ KATEDRA VÝPOČETNÍ A DIDAKTICKÉ TECHNIKY PŘÍPRAVA KOMPONENT PRO E-KURZ KONEČNÉ AUTOMATY A FORMÁLNÍ JAZYKY BAKALÁŘSKÁ PRÁCE Luděk Hroch Informatika se zaměřením
VíceNa 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
Teoretická informatika průběh výuky v semestru 1 Týden 5 Přednáška 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íceTeoretická informatika
Teoretická informatika TIN 2017/2018 prof. RNDr. Milan Češka, CSc. ceska@fit.vutbr.cz prof. Ing. Tomáš Vojnar, Ph.D. vojnar@fit.vutbr.cz sazba dr. A. Smrčka, Ing. P. Erlebach, Ing. P. Novosad Vysoké učení
VíceNávrh algoritmů pro sémantické akce při výstavbě interpretu metodou rekurzivního sestupu
Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta Návrh algoritmů pro sémantické akce při výstavbě interpretu metodou rekurzivního sestupu Diplomová práce Vedoucí práce: RNDr.
VíceVYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS GRAMATICKÉ SYSTÉMY
VícePř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})
Teoretická informatika průběh výuky v semestru 1 Týden 4 Přednáška Ukázali jsme jednoduchý převod konečného automatu na bezkontextovou gramatiku, čímž jsme prokázali, že každý regulární jazyk je bezkontextovým
VíceAutomaty a gramatiky. Roman Barták, KTIML. Chomského normální forma
10 Automaty a gramatiky Roman Barták, KTIML bartak@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Chomského normální forma Podívejme se nyní na derivační stromy. Jak odhadnout výšku stromu podle délky
VíceSyntaktická analýza. Implementace LL(1) překladů. Šárka Vavrečková. Ústav informatiky, FPF SU Opava
Implementace LL(1) překladů Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 6. ledna 2012 Postup Programujeme syntaktickou analýzu: 1 Navrhneme vhodnou LL(1) gramatiku
VícePostův korespondenční problém. Meze rozhodnutelnosti 2 p.1/13
Postův korespondenční problém Meze rozhodnutelnosti 2 p.1/13 Postův korespondenční problém Definice 10.1 Postův systém nad abecedou Σ je dán neprázdným seznamem S dvojic neprázdných řetězců nadσ, S = (α
VíceNaproti tomu gramatika je vlastně soupis pravidel, jak
1 Kapitola 1 Úvod V přednášce se zaměříme hlavně na konečný popis obecně nekonečných množin řetězců symbolů dané množiny A. Prvkům množiny A budeme říkat písmena, řetězcům (konečným posloupnostem) písmen
Více3. 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
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
VíceÚvod do informatiky. Miroslav Kolařík
Úvod do informatiky přednáška desátá Miroslav Kolařík Zpracováno dle R. Bělohlávek, V. Vychodil: Diskrétní matematika 2, http://phoenix.inf.upol.cz/esf/ucebni/dm2.pdf P. Martinek: Základy teoretické informatiky,
VíceAutomaty a gramatiky. Roman Barták, KTIML. Separované gramatiky. Kontextové gramatiky. Chomského hierarchie
Chomského hierarchie Automaty a gramatiky Roman Barták, KTIML bartak@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak gramatiky typu 0 (rekurzivně spočetné jazyky L 0 ) pravidla v obecné formě gramatiky
VíceUčební texty k státní bakalářské zkoušce Programování Základy teoretické informatiky. študenti MFF 15. augusta 2008
Učební texty k státní bakalářské zkoušce Programování Základy teoretické informatiky študenti MFF 15. augusta 2008 1 1 Základy teoretické informatiky Požadavky Logika - jazyk, formule, sémantika, tautologie
VíceKonečný automat. Jan Kybic.
Konečný automat Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2017 1 / 33 Konečný automat finite state machine Konečný automat = výpočetní model, primitivní počítač Řídící jednotka s
VíceAUTOMATY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ BRNO UNIVERSITY OF TECHNOLOGY FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS MODIFIKOVANÉ
VíceAUTOMATY A GRAMATIKY
AUTOMATY A 1 GRAMATIKY Pavel Surynek Univerzita Karlova v Praze Matematicko-fyzikální fakulta Katedra teoretické informatiky a matematické logiky Stručný přehled přednášky Automaty Formální jazyky, operace
VíceVlastnosti regulárních jazyků
Vlastnosti regulárních jazyků Podobně jako u dalších tříd jazyků budeme nyní zkoumat následující vlastnosti regulárních jazyků: vlastnosti strukturální, vlastnosti uzávěrové a rozhodnutelné problémy pro
VíceKonečný automat Teorie programovacích jazyků
Konečný automat Teorie programovacích jazyků oc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@menelu.cz Automaty v běžném životě Konečný automat Metoy konstrukce konečného automatu
VíceIV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel
Matematická analýza IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel na množině R je definováno: velikost (absolutní hodnota), uspořádání, aritmetické operace; znázornění:
Vícepopel, glum & nepil 16/28
Lineární rezoluce další způsob zjemnění rezoluce; místo stromu směřujeme k lineární struktuře důkazu Lineární rezoluční odvození (důkaz) z Ë je posloupnost dvojic ¼ ¼ Ò Ò taková, že Ò ½ a 1. ¼ a všechna
VíceSekvenční logické obvody
Sekvenční logické obvody Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou Sekvenční obvody - paměťové členy, klopné obvody flip-flop Asynchronní klopné obvody
VíceTeoretická informatika - Úkol č.1
Teoretická informatika - Úkol č.1 Lukáš Sztefek, xsztef01 18. října 2012 Příklad 1 (a) Gramatika G 1 je čtveřice G 1 = (N, Σ, P, S) kde, N je konečná množina nonterminálních symbolů N = {A, B, C} Σ je
VíceMorfologická analýza Bezkontextové gramatiky
Počítačové zpracování přirozeného jazyka Morfologická analýza Bezkontextové gramatiky Daniel Zeman http://ufal.mff.cuni.cz/course/popj1/ Bezkontextové gramatiky Zkratka CFG (context-free grammar) Čtveřice
VíceJe regulární? Pokud ne, na regulární ji upravte. V původní a nové gramatice odvod te řetěz 1111.
Grmtiky. Vytvořte grmtiku generující množinu řetězů { n m } pro n, m N {} tková, že n m. Pomocí této grmtiky derivujte řetezy,. 2. Grmtik je dán prvidly S ɛ S A A S B B A B. Je regulární? Pokud ne, n regulární
VíceLexikální analýza Teorie programovacích jazyků
Lexikální analýza Teorie programovacích jazyků doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Osnova dnešní přednášky 1 Úvod do teorie překladačů kompilátor a interpret
VíceSyntaktická analýza založená na multigenerativních systémech Závěrečná práce z předmětu TJD. Jakub Martiško
Syntaktická analýza založená na multigenerativních systémech Závěrečná práce z předmětu TJD Jakub Martiško 29. ledna 2016 Obsah 1 Úvod 2 2 Definice a pojmy 4 2.1 Syntaktická analýza...............................
VíceSyntaxí řízený překlad
Syntaxí řízený překlad Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 27. listopadu 2008 Definice Překlad z jazyka L 1 do jazyka L 2 je definován množinou
Více4.2 Syntaxe predikátové logiky
36 [070507-1501 ] 4.2 Syntaxe predikátové logiky V tomto oddíle zavedeme syntaxi predikátové logiky, tj. uvedeme pravidla, podle nichž se tvoří syntakticky správné formule predikátové logiky. Význam a
VíceOSTRAVSKÁ UNIVERZITA V OSTRAVĚ
OSTRAVSKÁ UNIVERZITA V OSTRAVĚ REGULÁRNÍ A BEZKONTEXTOVÉ JAZYKY II HASHIM HABIBALLA OSTRAVA 2005 Recenzenti: RNDr. PaedDr. Eva Volná, PhD. Mgr. Rostislav Fojtík Název: Regulární a bezkontextové jazyky
VíceReferát z předmětu Teoretická informatika
Referát z předmětu Téma: Algoritmus Coke-Younger-Kasami pro rozpoznávání bezkontextových jazyků VŠB-TU Ostrava:Fakulta Elektrotechniky a informatiky jaro 2011 Martin Dočkal doc068 dockal.martin@gmail.com
Více3. Sekvenční logické obvody
3. Sekvenční logické obvody 3. Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou 3. Sekvenční logické obvody příklad sekv.o. Příklad sledování polohy vozíku
VíceNP-úplnost problému SAT
Problém SAT je definován následovně: SAT(splnitelnost booleovských formulí) Vstup: Booleovská formule ϕ. Otázka: Je ϕ splnitelná? Příklad: Formule ϕ 1 =x 1 ( x 2 x 3 )jesplnitelná: např.přiohodnocení ν,kde[x
VíceVYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS PŘEVODY MEZI
Více1) Sekvenční a paralelní gramatiky
A. Kapitoly z teorie formálních jazyků a automatů c Milan Schwarz (006) ) Sekvenční a paralelní gramatiky Derivace v gramatikách: Sekvenční postup sekvenční gramatiky (např. gramatiky v Chomského hierarchii)
VíceDefinice. Necht M = (Q, T, δ, q 0, F ) je konečný automat. Dvojici (q, w) Q T nazveme konfigurací konečného automatu M.
BI-AAG (20/202) J. Holu: 2. Deterministické nedeterministické konečné utomty p. 2/3 Konfigurce konečného utomtu BI-AAG (20/202) J. Holu: 2. Deterministické nedeterministické konečné utomty p. 4/3 Automty
VíceTřídy složitosti P a NP, NP-úplnost
Třídy složitosti P a NP, NP-úplnost Cíle přednášky: 1. Definovat, za jakých okolností můžeme problém považovat za efektivně algoritmicky řešitelný. 2. Charakterizovat určitou skupinu úloh, pro které není
VíceUniverzální Turingův stroj a Nedeterministický Turingův stroj
27 Kapitola 4 Univerzální Turingův stroj a Nedeterministický Turingův stroj 4.1 Nedeterministický TS Obdobně jako u konečných automatů zavedeme nedeterminismus. Definice 14. Nedeterministický Turingův
VícePřijímací zkouška na navazující magisterské studium 2015
Přijímací zkouška na navazující magisterské studium 2015 Studijní program: Studijní obory: Matematika MMUI Varianta A Řešení příkladů pečlivě odůvodněte. Příklad 1 (25 bodů Navrhněte deterministický konečný
Vícep 2 q , tj. 2q 2 = p 2. Tedy p 2 je sudé číslo, což ale znamená, že
KAPITOLA 1: Reálná čísla [MA1-18:P1.1] 1.1. Číselné množiny Přirozená čísla... N = {1,, 3,...} nula... 0, N 0 = {0, 1,, 3,...} = N {0} Celá čísla... Z = {0, 1, 1,,, 3,...} Racionální čísla... { p } Q =
VíceZáklady algoritmizace. Pattern matching
Základy algoritmizace Pattern matching 1 Pattern matching Úloha nalézt v nějakém textu výskyty zadaných textových vzorků patří v počítačové praxi k nejfrekventovanějším. Algoritmy, které ji řeší se používají
VícePumping lemma - podstata problému. Automaty a gramatiky(bi-aag) Pumping lemma - problem resolution. Pumping lemma - podstata problému
BI-AAG (2011/2012) J. Holub: 10. Vlastnosti regulárních jazyků p. 2/22 Pumping lemma - podstata problému BI-AAG (2011/2012) J. Holub: 10. Vlastnosti regulárních jazyků p. 4/22 Automaty a gramatiky(bi-aag)
VíceIV113 Validace a verifikace. Převod LTL formule na Büchi automat. Jiří Barnat
IV113 Validace a verifikace Převod LTL formule na Büchi automat Jiří Barnat Připomenutí IV113 úvod do validace a verifikace: LTL BA str. 2/26 Problém Kripkeho struktura M LTL formule ϕ M = ϕ? Řešení pomocí
VíceNÁSTROJ PRO PRÁCI S BÜCHI AUTOMATY
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS NÁSTROJ PRO
VíceInformatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A
Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A Každá úloha je hodnocena maximálně 25 body. Všechny své odpovědi zdůvodněte! 1. Postavte na stůl do řady vedle
Více1.3. Číselné množiny. Cíle. Průvodce studiem. Výklad
1.3. Cíle Cílem kapitoly je seznámení čtenáře s axiomy číselných oborů a jejich podmnožin (intervalů) a zavedení nových pojmů, které nejsou náplní středoškolských osnov. Průvodce studiem Vývoj matematiky
VícePopište a na příkladu ilustrujte(rychlý) algoritmus testující, zda dané dva automaty jsou izomorfní.
Teoretická informatika referáty 1 Referátč.1 Vysvětlete, co znamená tvrzení, že operace levého kvocientu je asociativní. Pak toto tvrzení pečlivě dokažte či vyvraťte. Dálevysvětlete,pročprokonečnýautomat
VíceSLD-derivace. Petr Štěpánek. S využitím materiálu Krysztofa R. Apta
SLD-derivace Petr Štěpánek S využitím materiálu Krysztofa R. Apta 2006 Logické programování 5 1 Při systematickém studiu SLD-derivací je užitečné využít rezultanty a přiřadit je k SLD-derivačním krokům
VícePQ-stromy a rozpoznávání intervalových grafů v lineárním čase
-stromy a rozpoznávání intervalových grafů v lineárním čase ermutace s předepsanými intervaly Označme [n] množinu {1, 2,..., n}. Mějme permutaci π = π 1, π 2,..., π n množiny [n]. Řekneme, že množina S
VíceTeoretická informatika průběh výuky v semestru 1
Teoretická informatika průběh výuky v semestru 1 Týden 7 Přednáška (Výpočetní) problémy, rozhodovací(ano/ne) problémy,... Připomněli jsme si obecné definice a konkrétní problémy, jako např. SAT[problém
VíceEKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24.
EKO-KOLONIE OBHAJOBA DISERTAČNÍ PRÁCE RNDr. Šárka Vavrečková Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě sarka.vavreckova@fpf.slu.cz 24. dubna 2008 Obsah 1 Eko-kolonie
VíceDefinice 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í.
9.5 Třída NP 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í. Příklad. Uvažujme problém IND a následující
VíceTeorie informace: řešené příklady 2014 Tomáš Kroupa
Teorie informace: řešené příklady 04 Tomáš Kroupa Kolik otázek je třeba v průměru položit, abychom se dozvěděli datum narození člověka (den v roce), pokud odpovědi jsou pouze ano/ne a tázaný odpovídá pravdivě?
Více- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku
Znaky - standardní typ char var Z, W: char; - znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku - v TP (často i jinde) se používá kódová
VíceTuringovy stroje. Turingovy stroje 1 p.1/28
Turingovy stroje Turingovy stroje 1 p.1/28 Churchova teze Churchova (Church-Turingova) teze: Turingovy stroje (a jim ekvivalentní systémy) definují svou výpočetní silou to, co intuitivně považujeme za
VícePoslední aktualizace: 14. října 2011
Lexikální analýza Překladače, přednáška č. 2 Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz http://fpf.slu.cz/ vav10ui Poslední aktualizace: 14. října 2011 Symboly Co je to
Více