Vztah jazyků Chomskeho hierarchie a jazyků TS

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

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

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

Univerzální Turingův stroj a Nedeterministický Turingův stroj

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

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

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

Kapitola 6. LL gramatiky. 6.1 Definice LL(k) gramatik. Definice 6.3. Necht G = (N, Σ, P, S) je CFG, k 1 je celé číslo.

Vlastnosti regulárních jazyků

Základy teoretické informatiky Formální jazyky a automaty

Bezkontextové jazyky. Bezkontextové jazyky 1 p.1/39

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

Automaty a gramatiky. Uzávěrové vlastnosti v kostce R J BKJ DBKJ. Roman Barták, KTIML. Kvocienty s regulárním jazykem

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

Čí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:

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

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

Syntaxí řízený překlad

Naproti tomu gramatika je vlastně soupis pravidel, jak

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 Σ

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

Teoretická informatika - Úkol č.1

Automaty a gramatiky. Roman Barták, KTIML. Separované gramatiky. Kontextové gramatiky. Chomského hierarchie

AUTOMATY A GRAMATIKY

Jednoznačné a nejednoznačné gramatiky

Vlastnosti Derivační strom Metody Metoda shora dolů Metoda zdola nahoru Pomocné množiny. Syntaktická analýza. Metody a nástroje syntaktické analýzy

Postův korespondenční problém. Meze rozhodnutelnosti 2 p.1/13

Automaty a gramatiky

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

Bezkontextové jazyky. Bezkontextové jazyky 1 p.1/31

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

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Složitost Filip Hlásek

Katedra aplikované matematiky FEI VŠB Technická univerzita Ostrava luk76/la1

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

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LL SYNTAKTICKÁ ANALÝZA DOKONČENÍ, IMPLEMENTACE.

Formální systém výrokové logiky

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

Báze konečněrozměrných vektorových prostorů, lineární zobrazení vektorových prostorů

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

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

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

Vysoké učení technické v Brně Fakulta informačních technologií. Gramatiky nad volnými grupami Petr Blatný

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

Pro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie.

ZÁKLADY TEORETICKÉ INFORMATIKY

Teoretická informatika TIN 2013/2014

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 α

TOPOLOGIE A TEORIE KATEGORIÍ (2017/2018) 3. PREDNÁŠKA - KOMPAKTNÍ PROSTORY.

Bezkontextové gramatiky nad volnými grupami

Teoretická informatika

2 Formální jazyky a gramatiky

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

Úlohy nejmenších čtverců

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

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

Modely Herbrandovské interpretace

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

10. Soustavy lineárních rovnic, determinanty, Cramerovo pravidlo

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

BRNO UNIVERSITY OF TECHNOLOGY FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS MASTER S THESIS AUTHOR

Lineární algebra : Změna báze

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

Úvod do informatiky. Miroslav Kolařík

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

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

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

SYNTAKTICKÁ ANALÝZA ZALOŽENÁ NA GRAMATICKÝCH A AUTOMATOVÝCH SYSTÉMECH PARSING BASED ON GRAMMAR AND AUTOMATA SYSTEMS

Operace s maticemi. 19. února 2018

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

[1] Motivace. p = {t u ; t R}, A(p) = {A(t u ); t R} = {t A( u ); t R}

Vlastní číslo, vektor

Bezkontextové gramatiky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 6. května / 49

Vlastní čísla a vlastní vektory

1 Kardinální čísla. množin. Tvrzení: Necht X Cn. Pak: 1. X Cn a je to nejmenší prvek třídy X v uspořádání (Cn, ),

Minimalizace KA - Úvod

Teoretická informatika

1) Sekvenční a paralelní gramatiky

22 Základní vlastnosti distribucí

Úvod do informatiky. Miroslav Kolařík

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

Greenova funkce pro dvoubodové okrajové úlohy pro obyčejné diferenciální rovnice

3. přednáška 15. října 2007

Matematika B101MA1, B101MA2

Kapitola 11: Vektory a matice 1/19

PRIMITIVNÍ FUNKCE DEFINICE A MOTIVACE

prof. RNDr. Čestmír Burdík DrCs. prof. Ing. Edita Pelantová CSc. BI-ZMA ZS 2009/2010

Matematická logika. Miroslav Kolařík

Limita a spojitost funkce

[1] Determinant. det A = 0 pro singulární matici, det A 0 pro regulární matici

Učební texty k státní bakalářské zkoušce Programování Základy teoretické informatiky. študenti MFF 15. augusta 2008

Markov Chain Monte Carlo. Jan Kracík.

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

PRIMITIVNÍ FUNKCE. Primitivní funkce primitivní funkce. geometrický popis integrály 1 integrály 2 spojité funkce konstrukce prim.

Referát z předmětu Teoretická informatika

Lineární programování

1 Soustavy lineárních rovnic

Lineární algebra : Skalární součin a ortogonalita

Výroková logika syntaxe a sémantika

3. Podmíněná pravděpodobnost a Bayesův vzorec

Transkript:

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é (průběžné) opáčko KMI/FJAA Definice Formální gramatika (typu 0, bez omezení) je struktura Σ, N, S, P, kde N abeceda neterminálních symbolů, Σ abeceda terminálních symbolů, S N startovní symbol, P konečná množina odvozovacích pravidel ve tvaru (N Σ) N(N Σ) (N Σ). (tj. generativních pravidel) Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 2 / 23

Definice Uvažujme odvozovací pravidlo π = x y nad Σ N. Pak řekneme, že řetězec v (Σ N) je přímo odvozen z řetězce u (Σ N) pomocí pravidla π, pokud existují řetězce p, q (Σ N) tak, že u = pxq a v = pyq; označujeme u π v. Píšeme u P v pokud existuje pravidlo π P tak, že u π v. Definice Posloupnost řetězců x 0,..., x k (k 0), kde {x 0,..., x k } (Σ N) se nazývá P -derivace (délky k), pokud x i 1 P x i. Definice Pokud pro u, v (N Σ) existuje P -derivace u = x 0,..., x k = v, pak říkáme, že v je odvozen z u pomocí pravidel z P a píšeme u P v. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 3 / 23

Definice Větná forma je jakýkoli řetězec x (N Σ), pro který S P x. Větné formy, které se skládají jen z terminálů, se nazývají věty gramatiky. Jazyk L(G) gramatiky G je množina všech vět gramatiky. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 4 / 23

Věta Třída jazyků generovaných gramatikami typu 0 = částečně rekurzivní jazyky. Důkaz. Ukážeme tak, že a) ke každému TS T sestavíme gramatiku G T, tak že L(T ) = L(G). b) ke každé gramatice G sestavíme TS T G, tak že L(T ) = L(G). ad b) snažší část. Sestrojíme nedeterministický TS T G k lib. gramatice G: (dvojpáskový) NTS T G pro w: 1 (na první pásce nechá w), na druhou pásku napíše S. 2 pokud na druhé pásce není žádný neterminál, srovná obsah první a druhé pásky: pokud jsou stejné, přijme. 3 nedeterministicky zvolí pravidlo z P nedeterministicky zvolí výskyt jeho pravé strany na druhé pásce (pokud ho nenajde zamítne). 4 přepíše obsah druhé pásky podle zvoleného pravidla, pokrač. bodem 2. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 5 / 23

Důkaz, pokračování. ad a) sestrojíme gramatiku G T k lib. TS T : Víme že k libovolnému TS existuje ekvivalentní TS, který po sobě uklízí. Můžeme tedy předpokládat, že T po sobě uklízí a že Gramatika bude s pravidly P : T = Q, Σ, Γ, δ, q 0, q +, q. Q { } {N a a Γ}, Σ, S, P pro δ(q, a) = (q, a, L) budou v P přechody q N b N a N b qn a pro všechna b Γ, pro δ(q, a) = (q, a, R) bude v P přechod N a q qn a. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 6 / 23

Důkaz, pokračování. pravidlo S q + Neterminál reprezentuje konec uvažovaného úseku pásky, bude zajišťovat přidávání a odebírání prázdných políček (symbolů); pomocí následujících pravidel: pravidla na přidávání a odebírání volných políček pravidla pro finalizaci N N N a a pro všechna a Σ ε q 0 ε. Tato gramatika G T bude generovat stejný jazyk jako T ; sleduje výpočet pozpátku Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 7 / 23

Rychlé (průběžné) opáčko KMI/FJAA Definice Kontextově závislá gramatika je formální gramatika, pro jejíž množinu pravidel P platí: P konečná množina odvozovacích pravidel ve tvaru αnβ αγβ, kde γ 1 s vyjímkou, že je možno mít v P i pravidlo S ε, pokud se S nevyskytuje na pravé straně žádného pravidla. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 8 / 23

Definice Nezkracující gramatika je formální gramatika, pro jejíž množinu pravidel P platí: P konečná množina odvozovacích pravidel ve tvaru α β kde α β s vyjímkou, že je možno mít v P i pravidlo S ε, pokud se S nevyskytuje na pravé straně žádného pravidla. Věta Každá kontextová gramatika je nezkracující. Věta Ke každé nezkracující gramatice existuje ekvivalentní kontextově závislá gramatika. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 9 / 23

Věta Jazyky generované kontextové závislými gramatikami = jazyky přijímané LBA. Idea důkazu. a) ke každému LBA T sestavíme kontextovou gramatiku G T, tak že L(T ) = L(G). b) ke každé kontextové gramatice G sestavíme LBA T G, tak že L(T ) = L(G). V podstatě totožné s předchozím. Využijeme toho, že jsou nezkracující. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 10 / 23

Důkaz. ad a) sestrojíme gramatiku G T k lib. TS T : Víme že k libovolnému TS existuje ekvivalentní TS, který po sobě uklízí. Můžeme tedy předpokládat, že T po sobě uklízí a že Gramatika bude s pravidly P : T = Q, Σ, Γ, δ, q 0, q +, q. Q { } {N a a Γ}, Σ, S, P pro δ(q, a) = (q, a, L) budou v P přechody q N b N a N b qn a pro všechna b Γ, pro δ(q, a) = (q, a, R) bude v P přechod N a q qn a. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 11 / 23

Důkaz, pokračování. pravidlo S q + Neterminál reprezentuje konec uvažovaného úseku pásky, bude zajišťovat přidávání a odebírání prázdných políček (symbolů); pomocí následujících pravidel: pravidla na přidávání a odebírání volných políček pravidla pro finalizaci N N a a pro všechna a Σ ε q 0. Tato gramatika G T bude generovat stejný jazyk jako T. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 12 / 23

Všimněme si, že pokud je gramatika G nezkracující (resp. kontextově závislá), tak T G z důkazy první věty nepotřebuje víc políček než w, klidně by to mohl být LBA. Důkaz. (dvojpáskový) NTS T G pro w: 1 (na první pásce nechá w), na druhou pásku napíše S. 2 pokud na druhé pásce není žádný neterminál, srovná obsah první a druhé pásky: pokud jsou stejné, přijme. 3 nedeterministicky zvolí pravidlo z P nedeterministicky zvolí výskyt jeho pravé strany na druhé pásce (pokud ho nenajde zamítne). 4 přepíše obsah druhé pásky podle zvoleného pravidla, pokrač. bodem 2. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 13 / 23

Věta Existuje rekurzivní jazyk, který není generovaný kontextovou gramatikou. Poznámka Neboli Typ 1 R. Idea důkazu. Ukážeme, že L Gd = {[G] G je kontextová gramatika, která negeneruje [G]} je takový jazyk. Viz následující dvě lemmata. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 14 / 23

Lemma L Gd je rekurzivní. Idea důkazu. Procházíme do šířky strom derivací gramatiky G a hledáme, jestli negeneruje [G]. Stačí jít jen do určité hloubky, protože díky nezkracujícímu charakteru gramatiky nemá smysl procházet větve, kde je větná forma delší, než [G]. Navíc větných forem s délkou [G] je jen konečně mnoho. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 15 / 23

Lemma L Gd není generován kontextově závislou gramatikou. Důkaz je nápadně podobný důkazu toho, že L d není přijímán TS. Důkaz. Protože gramatiky lze zakódovat do řetězců a řetězce lze očíslovat můžu seřadit gramatiky podle jejich kódů. Můžu tedy uvažovat tabulku, jejíž řádky budou gramatiky, sloupce budou kódy gramatik, tak aby když je v i-tém řádku G i, tak v i-tém sloupci [G i ]. [G 1 ] [G 2 ] [G 3 ] [G 4 ]... G 1 1 G 2 1 G 3 1 G 4 1. Tabuka obsahuje 1 na pozici i, j pokud G i generuje [G j ]. Pokud existuje TS G d generující L Gd, musí být někde v té tabulce, řekněme na řádku x. Co ale bude na pozici x, x? Ta hodnota se musí sama od sebe lišit. SPOR Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 16 / 23

Shrnutí Typ 3 Typ 2 Typ 1 R Typ 0 = ČR Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 17 / 23

Problémy z PŘEDNÁŠKY 1 Z PŘEDNÁŠKY 1 známe pár příkladů (zatím tomu jenom věříme). R ČR Ekvivalence bezkontextových gramatik Nonekvivalence bezkontextových gramatik Ekvivalence KA Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 18 / 23

Ekvivalence KA Věta Jazyk je rekurzivní. Pomocné tvrzení: Lemma L eqka = {[A 1, A 2 ] A 1, A 2 jsou KA, L(A 1 ) = L(A 2 )} Jazyk L KA = {[A] A je KA, L(A) = } je rekurzivní. Idea důkazu. Stačí zjistit jestli je aspoň jeden koncový stav dostupný z počátečního. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 19 / 23

Důkaz. Z KMI/FJAA víme, že regulární jazyky jsou uzavřené na průnik, sjednocení, doplněk (mj.). A umíme sestavit příslušné KA (nedeterministické, s ε-přechody. Máme L 1 = L 2 p.k. (L 1 L 2 ) ( L 1 L 2 ) =. Sestavíme TS M, který rozhoduje L eqka. TS M pro [A 1, A 2 ] 1 Sestaví KA A, který rozhoduje (L 1 L 2 ) ( L 1 L 2 ). 2 Zjistí, jestli [A] L KA. Ekvivalenci a nonekvivalenci gramatik ještě odložíme, potřebujeme Postův problém přiřazení (PŘEDNÁŠKA 6) Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 20 / 23

Další problémy/jazyky Věta Jazyk REG T S = { T T je TS a L(T ) je regulární}. není rekurzivní. Důkaz. (sporem), Nechť R je TS, který rozhoduje REG T S a zkonstruujeme TS U, který rozhoduje L U. TS U pro vstup [T, w], kde T je TS a w je vstup 1 Sestrojí následující stroj M TS M pro x: pokud x má tvar 0 n 1 n, přijmi pokud x nemá tento tvar, spust M pro w, přijmi, pokud M přijme. 2 Spustí R pro [M 2 ]. 3 pokud R přijme, U přijme; pokud R zamítne, U zamítne. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 21 / 23

Věta Jazyk L LBA = {[B] B je LBA a L(B) = } není rekurzivní. Idea důkazu. (sporem) Ukážeme, že pokud by L LBA byl rekurzivní tak L U bude taky rekurzivní. Pro TS T a slovo w sestavíme LBA B, jehož jazykem bude jazyk všech přijímajících historií výpočtu TS T nad slovem w. DODELAT JAKO CVIČENÍ. Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 22 / 23

Jan Konečný; (přednáší Lukáš Havrlant) Chomskeho hierarchie a jazyky TS 15. října 2013 23 / 23