Automaty a gramatiky

Podobné dokumenty
Automaty a gramatiky. Roman Barták, KTIML. Důkaz věty o isomorfismu reduktů. Věta o isomorfismu reduktů. Pro připomenutí

Automaty a gramatiky. Trochu motivace. Roman Barták, KTIML. rní jazyky. Regulárn. Kleeneova věta. L = { w w=babau w=uabbv w=ubaa, u,v {a,b}* }

Automaty a gramatiky

Automaty a gramatiky. Úvod do formáln. lních gramatik. Roman Barták, KTIML. Příklady gramatik

6. Zobrazení δ: (a) δ(q 0, x) obsahuje x i, x i Z. (b) δ(x i, y) obsahuje y j, x i y j P 7. Množina F je množinou koncových stavů.

písemná a ústní část porozumění látce + schopnost formalizace

Automaty a gramatiky(bi-aag)

Je regulární? Pokud ne, na regulární ji upravte. V původní a nové gramatice odvod te řetěz 1111.

Definice. Necht M = (Q, T, δ, q 0, F ) je konečný automat. Dvojici (q, w) Q T nazveme konfigurací konečného automatu M.

Automaty a gramatiky. Organizační záležitosti. Přednáška: na webu ( Proč chodit na přednášku?

Převody Regulárních Výrazů. Minimalizace Konečných. Regulární jazyky 2 p.1/35

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

Minimalizace automatů. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 28. března / 31

Automaty a gramatiky. Pro připomenutí. Roman Barták, KTIML. Důkaz věty o dvousměrných automatech (1)

2.5.4 Věta. Každý jazyk reprezentovaný regulárním výrazem je regulárním jazykem.

Úvod 1. 3 Regulární jazyky Konečné jazyky Pumping Lemma pro regulární jazyky a nekonečné jazyky Sjednocení...

Teorie jazyků a automatů I

MULTIDIMENSIONÁLNÍ JAZYKY A JEJICH AUTOMATY MULTI-DIMENSIONAL LANGUAGES AND THEIR AUTOMATA

Teorie jazyků a automatů

Úvod do Teoretické Informatiky ( UTI)

Vnit ní síly ve 2D - p íklad 2

Teorie jazyků a automatů

Text m ºe být postupn upravován a dopl ován. Datum poslední úpravy najdete u odkazu na staºení souboru. Veronika Sobotíková

pokud A Rat(M), pak také A Rat(M).

Formální jazyky. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 6. března / 48

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

je jedna z orientací určena jeho parametrizací. Je to ta, pro kterou je počátečním bodem bod ϕ(a). Im k.b.(c ) ( C ) (C ) Obr Obr. 3.5.

10. Suffixové stromy

TROJÚHELNÍK. JAN MALÝ UK v Praze a UJEP v Ústí n. L. sin α = b a.

odvodit vzorec pro integraci per partes integrovat sou in dvou funkcí pouºitím metody per partes Obsah 2. Odvození vzorce pro integraci per partes

Deterministický konečný automat

Plánováníá a rozvrhování

Vztah jazyků Chomskeho hierarchie a jazyků TS

Petriho sítě PES 2007/2008. Doc. Ing. Tomáš Vojnar, Ph.D.

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

íslicová technika Radek Maík Maík Radek 1

VIII. Primitivní funkce a Riemannův integrál

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

4. přednáška 22. října Úplné metrické prostory. Metrický prostor (M, d) je úplný, když každá cauchyovská posloupnost bodů v M konverguje.

Syntaxí řízený překlad

AUTOMATY VE VYHLEDÁVÁNI cvičeni

množina, na které je zavedena určitá struktura. Zejména, součet každých dvou prvků X = [x 1,..., x n ] R n,

Integrace pomocí substituce. Obsah. 1. Úvod 2 2. Integrace substitucí u = ax + b Nalezení. f(g(x)) g (x) dx pomocí substituce u = g(x) 6

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

Matice. a B =...,...,...,...,..., prvků z tělesa T (tímto. Definice: Soubor A = ( a. ...,..., ra

( a, { } Intervaly. Předpoklady: , , , Problém zapíšeme snadno i výčtem: { 2;3; 4;5}?

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

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

Zavedení a vlastnosti reálných čísel PŘIROZENÁ, CELÁ A RACIONÁLNÍ ČÍSLA

2.8.5 Lineární nerovnice s parametrem

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

3.1.3 Vzájemná poloha přímek

Podobnosti trojúhelníků, goniometrické funkce

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

H - Řízení technologického procesu logickými obvody

Integrál a jeho aplikace Tomáš Matoušek

3 Algebraické výrazy. 3.1 Mnohočleny Mnohočleny jsou zvláštním případem výrazů. Mnohočlen (polynom) proměnné je výraz tvaru

Pravoúhlý trojúhelník goniometrické funkce. Výpočet stran pravoúhlého trojúhelníka pomocí goniometrických funkcí


Návrh základních kombinačních obvodů: dekodér, enkodér, multiplexor, demultiplexor

Spojitost funkce v bodě, spojitost funkce v intervalu

56. ročník Matematické olympiády. b 1,2 = 27 ± c 2 25

6. Určitý integrál a jeho výpočet, aplikace

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

Ur itý integrál. Úvod. Denice ur itého integrálu

8. Elementární funkce

( a) Okolí bodu

ROZVAHA. ve zjednodušeném rozsahu ke dni 31. prosince ( v celých tisících Kč ) IČ. A. Pohledávky za upsaný základní kapitál.

Obecně: K dané funkci f hledáme funkci ϕ z dané množiny funkcí M, pro kterou v daných bodech x 0 < x 1 <... < x n. (δ ij... Kroneckerovo delta) (4)


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

2. referát (Pruºnost a pevnost I.)

matematika vás má it naupravidl

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

Konzultace z předmětu MATEMATIKA pro první ročník dálkového studia

Stereometrie metrické vlastnosti 01

Větu o spojitosti a jejich užití

Půjdu do kina Bude pršet Zajímavý film. Jedině poslední řádek tabulky vyhovuje splnění podmínky úvodního tvrzení.

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

2.cvičení. 1. Polopřímka: bod O dělí přímku na dvě navzájem opačné polopřímky.

Logické obvody. Logický obvod. Rozdělení logických obvodů - Kombinační logické obvody. - Sekvenční logické obvody

Návrh realizace transformátoru Thane C. Heinse

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 Σ

je parciální derivace funkce f v bodě a podle druhé proměnné (obvykle říkáme proměnné

P íklady k procvi ení znalostí na písemnou ást bakalá ské státní zkoušky. Elektrické obvody:

Až dosud jsme se zabývali většinou reálnými posloupnostmi, tedy zobrazeními s definičním

NEWTONŮV INTEGRÁL. V předchozích kapitolách byla popsána inverzní operace k derivování. Zatím nebylo jasné, k čemu tento nástroj slouží.

Kapitola 1. Formální jazyky. 1.1 Formální abeceda a jazyk. Cíle kapitoly: Cíle této části: Klíčová slova: abeceda, slovo, jazyk, operace na jazycích

2. INTEGRÁLNÍ POČET FUNKCE JEDNÉ PROMĚNNÉ

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.

Reprezentovatelnost částek ve dvoumincových systémech


( ) ( ) Výrazy Výraz je druh matematického zápisu, který obsahuje konstanty, proměnné, symboly matematických operací, závorky.

Limity, derivace a integrály Tomáš Bárta, Radek Erban

II. INTEGRÁL V R n. Obr. 9.1 Obr. 9.2 Integrál v R 2. z = f(x, y)

10 Určitý integrál Riemannův integrál. Definice. Konečnou posloupnost {x j } n j=0 nazýváme dělením intervalu [a,b], jestliže platí



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

Transkript:

5 Automty grmtiky Romn Brták, KTIML rtk@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~rtk Co ylo minule Množinové operce s jzyky sjednocení, pr nik, rozdíl, dopln k uzv enost opercí (lgoritmus p evodu) et zcové operce nd jzyky z et zení, mocniny, pozitivní/oecná iterce, zrcdlový orz kvocienty derivce (zlev, zprv) uzv enost opercí (lgoritmus p evodu) Sustituce homomorfismus jzyk Regulární jzyk jko slou enin elementární jzyky (prázdný, jednopísmenný) + operce sjednocení, z et zení, iterce Kleeneov v t Jzyk je regulární práv když je rozpozntelný kone ným utomtem. Automty grmtiky, Romn Brták

D kz Kleeneovy v ty v ty jzyky rozpozntelné kone nými utomty jsou regulární máme utomt A=(Q,X,δ,q,F), který definuje jzyk L(A) chceme ukázt, že L(A) dostneme z elementárních jzyk opercí definujme R ij = {w X* δ*(q i,w)=q j } slov p evád jící stv q i n q j potom L(A) = qi F R i slov p evád jící po áte ní stv q n n jký koncový stv q i jsou jzyky R ij regulární pokud no, potom L(A) je tké regulární, protože zchovává regulárnost definujme R k ij =slov p evád jící stv q i n q j ez mezipr chodu stvy q m m>k z ejm R ij = R n ij (n je po et stv utomtu) jsou jzyky R k ij regulární R 0 ij je regulární (žádné mezistvy, tj. mximáln jednopísmenná slov) R k+ ij = Rk ij Rk i,k+.(rk k+,k+ )*. Rk k+,j je regulární (sjednocení iterce regulárních jzyk ) i k+ j Automty grmtiky, Romn Brták Alterntivní d kz Kleeneovy v ty jzyky rozpozntelné kone nými utomty jsou regulární Indukcí podle po tu hrn v nedeterministickém utomtu A = (Q,X,δ,S,F) pro dný jzyk L(A) žádná hrn pouze jzyky neo {} (n+) hrn vyereme si jednu hrnu: p q tj. q δ(p,) sestrojíme ty i utomty ez této hrny (δ ) A = (Q,X,δ,S,F) A = (Q,X,δ,S,{p}) A = (Q,X,δ,{q},{p}) A 4 = (Q,X,δ,{q},F) Potom L(A) = L(A ) (L(A ).).(L(A ).)*L(A 4 ) Jzyky L(A ), L(A ), L(A ), L(A 4 ) jsou regulární (n hrn) p q 4 Automty grmtiky, Romn Brták

Regulární výrzy Množin regulárních výrz RV(X) nd kone nou neprázdnou ecedou X={x,,x n } je nejmenší množin slov v eced {x,,x n,,, +,.,*, (,)}, která: oshuje výrz výrz RV(X), RV(X) pro kždé písmeno x X oshuje výrz x x RV(X) α,β RV(X) (α+β) RV(X) α,β RV(X) (α.β) RV(X) α RV(X) α* RV(X) P íkld: ((+((.c)+d)*)+e) Konvence: vn jší závorky lze vynecht (+((.c)+d)*)+e závorky lze vynecht u. + díky socitivit +((.c)+d)*+e te ku lze vynecht +((c)+d)*+e priorit opercí (nejvyšší) *,., + (nejnižší) +(c+d)*+e Automty grmtiky, Romn Brták Hodnot regulárního výrzu Hodnotou regulárního výrzu α RV(X) je množin slov [α] (jzyk) definovná následovn : [] =, [] ={}, [x] = {x} [(α+β)] =[α] [β] [(α.β)] = [α]. [β] [α*] = [α]* Regulární výrzy odpovídjí regulárním jzyk m hodnotou regulárního výrzu je regulární jzyk kždý regulární jzyk lze reprezentovt pomocí regulárního výrzu (jzyk je hodnotou tohoto výrzu) P íkldy: [(+)* + (+)*(+)* + (+)*] = = { w w=u w=uv w=u, u,v {,}* } [(0*0*0*)*0*] = = {w w {0,}*, w =k } Automty grmtiky, Romn Brták

Použití regulárních výrz Prktický p ehledný zápis jzyk Teoretický zjednodušení n kterých d kz V t: L F, x X σ(x) F σ (L) F L σ(x) jsou regulární jzyky, lze je tedy reprezentovt regulárními výrzy kždý výskyt x ve výrzu pro L st í nhrdit výrzem pro σ(x) Rozší ené regulární výrzy máme i dlší regulární operce, np. pr nik (α & β) Ekvivlence regulárních výrz α β jestliže [α] = [β] (tj. výrzy reprezentují stejné jzyky) P íkld: (0*)* + (0+)* Jk to zjistíme Automty grmtiky, Romn Brták P evod regulárního výrzu n kone Metod (inkrementální): p eve elementární jzyky (prázdný, jednopísmenné) spoj použitím regulárních opercí podle výrzu ný utomt Metod (p ímá) +(c+d)*+ o ísluj symoly ve výrzu (zlev do doprv) +( c +d 4 )*+ 5 zjisti všechny možné páry symol, které se c, c d 4, c, mohou vyskytovt z seou d 4 d 4, d 4 zjisti symoly, které mohou ýt první ve slov,, d 4, 5 zjisti symoly, které mohou ýt poslední ve slov, c, d 4, 5 zjisti, zd jzyk oshuje prázdné slovo ANO vytvo nedeterministický utomt stvy: s + o íslovné symoly po átek = s konec = poslední symoly (+s pro ) p echody: s první symol x i x j, pokud je pár x i x j s d 4 5 c c d d d Automty grmtiky, Romn Brták 4

Od utomtu k regulárnímu výrzu 4, Pomocí Kleeneovy v ty: R 0 ij R k+ ij = Rk ij Rk i,k+.(rk k+,k+ )*. Rk k+,j Pozn.: uzel 4 m žeme ignorovt (nevedou p es n j žádné cesty do osttních uzl ) R 0 R R R ( ) * ( ) * ( ) * ( ) * + ( ) * ( ) * Automty grmtiky, Romn Brták Od utomtu k regulárnímu výrzu (p íkld ) Pomocí Kleeneovy v ty: R 0 ij R k+ ij = Rk ij Rk i,k+.(rk k+,k+ )*. Rk k+,j R 0 + + R * * + + * R * * + * * + * R (+)* (+)* + * + * + Automty grmtiky, Romn Brták 5

Od utomtu k regulárnímu výrzu jink Ohodnocení hrn regulárním výrzem α Nejprve vytvo íme utomt s jedním vstupem jedním výstupem q 0 A F spojení hrn α α+β β elimince smy ek α β α * β β n α * β n elimince vrchol α α m β β n α m β α β α β n α m β n Automty grmtiky, Romn Brták Od utomtu k regulárnímu výrzu v p íkld 4, T St í p idt pouze nový koncový stv. Eliminujeme smy ku 4. Eliminujeme uzel 4. Eliminujeme uzel. T Eliminujeme smy ku. ( ) * T Eliminujeme uzel. ( ) * T Automty grmtiky, Romn Brták 6

M žeme kone né utomty ješt zoecnit Kone ný utomt provádí následující innosti: p e te písmeno zm ní stv vnit ní jednotky posune tecí hlvu doprv tecí hlv se nesmí vrcet! Co když utomtu povolíme ovládání hlvy Pozor! Automt n pásku nic nepíše! Automty grmtiky, Romn Brták Dvousm rné (dvoucestné) kone né utomty Dvousm rným (dvoucestným) kone ným utomtem nzýváme p tici A = (Q,X,δ,q 0,F), kde: Q - kone ná neprázdná množin stv (stvový prostor) X - kone ná neprázdná množin symol (vstupní eced) δ - zorzení Q X Q {-,0,+} (p echodová funkce) p echodová funkce ur uje i pohy tecí hlvy q 0 Q (po áte ní stv) F Q (množin koncových stv ) Reprezentce: stvový digrm, tulk, stvový strom Automty grmtiky, Romn Brták 7

Po ítání s dvousm rnými utomty Kdy dvousm rný utomt p ijímá slovo Co se d je, je-li hlv mimo tené slovo Slovo w je p ijto dvousm rným kone ným utomtem, pokud: výpo et z l n prvním písmenu slov w vlevo v po áte ním stvu tecí hlv poprvé opustil slovo w vprvo v n kterém koncovém stvu mimo tené slovo není výpo et definován (výpo et zde kon í slovo není p ijto) q 0 w q F Automty grmtiky, Romn Brták P íkld dvousm rného utomtu Nejprve poznámk: ke slov m si m žeme p idt speciální koncové znky # X je-li L(A)= {#w# w L X*} regulární, potom i L je regulární L = # R # (L(A) #X*#) P íkld: L(B) = {#u# uu L(A)} Pozor! Toto není levý ni prvý kvocient! Nech A= (Q,X,δ,q,F), definujme dvousm rný kone ný utomt B=(Q Q Q {q 0, q N,q F }), X, δ, q 0, {q F }) tkto: δ x # poznámk q 0 q 0,- q,+ q p,+ q,- p= δ(q,x) q q,- q,+ q p,+ q F,+ q F, p= δ(q,x) q p,+ q N,+ q F, p= δ(q,x) q N q N,+ q N,+ q F q N,+ q N,+ # q 0 q u # q q q q N q F Automty grmtiky, Romn Brták 8