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

Podobné dokumenty
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(bi-aag)

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

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

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

Automaty a gramatiky

Automaty a gramatiky

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

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

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

Riemannův určitý integrál.

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

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

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

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

Jsou to rovnice, které obsahují neznámou nebo výraz s neznámou jako argument logaritmické funkce.

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

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

ANALYTICKÁ GEOMETRIE V PROSTORU

Teorie jazyků a automatů

x + F F x F (x, f(x)).

Deterministický konečný automat

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)

a i,n+1 Maticový počet základní pojmy Matice je obdélníkové schéma tvaru a 11

Lineární nerovnice a jejich soustavy

1. LINEÁRNÍ ALGEBRA 1.1. Matice

Základy teorie matic

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

Úvod do Teoretické Informatiky ( UTI)

8. cvičení z Matematiky 2

Svazy. Def Svaz je algebra S ( M ;, ) = se dvěma binárními operacemi taková, že pro libovolné prvky c M platí následující podmínky axiomy svazu:

13. Exponenciální a logaritmická funkce

LINEÁRNÍ DIFERENCIÁLNÍ ROVNICE 2.ŘÁDU

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

Jak již bylo uvedeno v předcházející kapitole, můžeme při výpočtu určitých integrálů ze složitějších funkcí postupovat v zásadě dvěma způsoby:

Hyperbola, jejíž střed S je totožný s počátkem soustavy souřadnic a jejíž hlavní osa je totožná

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

Komplexní čísla tedy násobíme jako dvojčleny s tím, že použijeme vztah i 2 = 1. = (a 1 + ia 2 )(b 1 ib 2 ) b b2 2.

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

Teorie jazyků a automatů I

OBECNÝ URČITÝ 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ží.

ZÁKLADY. y 1 + y 2 dx a. kde y je hledanou funkcí proměnné x.

Souhrn základních výpočetních postupů v Excelu probíraných v AVT listopad r r. . b = A

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

ANALYTICKÁ GEOMETRIE

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,

A DIRACOVA DISTRIBUCE 1. δ(x) dx = 1, δ(x) = 0 pro x 0. (1) Graficky znázorňujeme Diracovu distribuci šipkou jednotkové velikosti (viz obr. 1).

Teoretická informatika - Úkol č.1

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

integrovat. Obecně lze ale říct, že pokud existuje určitý integrál funkce podle různých definic, má pro všechny takové definice stejnou hodnotu.

m n. Matice typu m n má

Reprezentovatelnost částek ve dvoumincových systémech

{ } ( ) ( ) Vztahy mezi kořeny a koeficienty kvadratické rovnice. Předpoklady: 2301, 2508, 2507

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

Technická univerzita v Liberci. Pedagogická fakulta. Katedra matematiky a didaktiky matematiky. Matematika I. (Obor: Informatika a logistika)

Diferenciální počet. Spojitost funkce

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

7. Integrální počet Primitivní funkce, Neurčitý integrál

( ) ( ) Sinová věta II. β je úhel z intervalu ( 0;π ). Jak je vidět z jednotkové kružnice, úhly, pro které platí. Předpoklady:

+ c. n x ( ) ( ) f x dx ln f x c ) a. x x. dx = cotgx + c. A x. A x A arctgx + A x A c

Logaritmická funkce teorie

3. ROVNICE A NEROVNICE Lineární rovnice Kvadratické rovnice Rovnice s absolutní hodnotou Iracionální rovnice 90

FI: JARO 2017 Verze: 9. února 2017

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

R n výběr reprezentantů. Řekneme, že funkce f je Riemannovsky integrovatelná na

Zkoušku snadno provedeme tak, že do soustavy (1), která je ekvivalentní dané soustavě rovnic, dosadíme příslušné hodnoty s a p.

I Diferenciální a integrální počet funkcí jedné proměnné 3

2.5.9 Vztahy mezi kořeny a koeficienty kvadratické rovnice

2.5.9 Vztahy mezi kořeny a koeficienty kvadratické rovnice

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

1.1 Numerické integrování

2.3. DETERMINANTY MATIC

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

63. ročník matematické olympiády III. kolo kategorie A. Ostrava, března 2014

26. listopadu a 10.prosince 2016

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

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

4.4.1 Sinová věta. Předpoklady: Trigonometrie: řešení úloh o trojúhelnících.

4. Determinanty. Výpočet: a11. a22. a21. a12. = a 11 a 22 a 33 + a 12 a 23 a 31 + a 13 a 21 a 32 a 13 a 22 a 31. a 11 a 23 a 32 a 12 a 21 a 33

Větu o spojitosti a jejich užití

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.

Petr Hasil. Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF)

4.4.3 Kosinová věta. Předpoklady:

(1) přičemž všechny veličiny uvažujeme absolutně. Její úpravou získáme vztah + =, (2) Přímé zvětšení Z je dáno vztahem Z = =, a a

( t) ( t) ( t) Nerovnice pro polorovinu. Předpoklady: 7306

ZÁKLADNÍ POZNATKY. p, kde ČÍSELNÉ MNOŽINY (OBORY) N... množina všech přirozených čísel: 1, 2, 3,, n,

Integrální počet - III. část (určitý vlastní integrál)

Definice. Nechť k 0 celé, a < b R. Definujeme. x < 1. ϕ(x) 0 v R. Lemma [Slabá formulace diferenciální rovnice.] x 2 1

Definice limit I

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

Doc. Ing. Vlastimil Jáneš, CSc., K620

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

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

Komentáře k domácímu kolu kategorie Z9

Podobnosti trojúhelníků, goniometrické funkce

3.2.1 Shodnost trojúhelníků I

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

2. Funkční řady Studijní text. V předcházející kapitole jsme uvažovali řady, jejichž členy byla reálná čísla. Nyní se budeme zabývat studiem

( a) Okolí bodu

Transkript:

Převody Regulárních Výrzů Minimlizce Konečných Automtů Regulární jzyky 2 p.1/35

Kleeneho lger Definice 2.1 Kleeneho lger sestává z neprázdné množiny se dvěm význčnými konstntmi 0 1, dvěm inárními opercemi +. unární opercí, které splňují následující xiomy: +(+c) = (+)+c socitivit + [A.1] + = + komuttivit + [A.2] + = idempotence + [A.3] +0 = 0 je identitou pro + [A.4] (c) = ()c socitivit. [A.5] 1 = 1 = 1 je identitou pro. [A.6] 0 = 0 = 0 0 je nihilátorem pro. [A.7] ( + c) = + c distriutivit zlev [A.8] ( + )c = c + c distriutivit zprv [A.9] 1+ = [A.10] 1+ = [A.11] +c c c [A.12] +c c c [A.13] V A.12 A13 reprezentuje uspořádání definovné tkto: def + =. Regulární jzyky 2 p.2/35

Příkldy Kleeneho lgeer: Tříd 2 Σ všech podmnožin Σ s konstntmi {} opercemi,.. Tříd všech regulárních podmnožin Σ s konstntmi {} opercemi,.. Tříd všech inárních relcí nd množinou X s konstntmi v podoě prázdné relce identity, kompozicí (součinem) inárních relcí reflexivním trnzitivním uzávěrem inární relce jko opercemi. Mtice nd Kleeneho lgermi. Ukázk pltnosti A.2 pro regulární množiny: Necht p, resp. q, oznčují reg. množiny P, resp. Q. Pk p+q oznčuje P Q q +p oznčuje Q P. P Q = Q P (komuttivit množinového sjednocení) p+q = q +p. Regulární jzyky 2 p.3/35

Poznámk: Axiomy A.12 A.13 lze nhrdit následujícími ekvivlentními vzthy: c c c c c c c c [A.14] [A.15] Důkz. Viz D. Kozen. A Completeness Theorem for Kleene Algers nd the Alger of Regulr Events. Technicl Report TR 90-1123, Dept. of Comp. Sci., Cornell University, Ithc, NY, USA, 1990. Dostupné n Internetu: odkz viz stránky kurzu. Některé užitečné teorémy Kleeneho lgery, které lze odvodit z jejich xiómů: 0 = 1 1+ = = + = = ( ) = (+) prvidlo vynořování [R.16] () = () prvidlo posuvu [R.17] = () +() Regulární jzyky 2 p.4/35

Dlší vlstnosti Kleeneho lgeer, které lze odvodit z uvedených xiómů: je neostrým částečným uspořádáním: je reflexivní ( ), je trnzitivní ( c c), je ntisymetrické ( = ). + je supremum (nejmenší horní omezení lest upper ound) vůči. je monotónní vůči všem operátorům: c c c c, +c +c,. Sndno se smozřejmě tké ukáže, že =. Regulární jzyky 2 p.5/35

Důkz. Příkldy důkzů uvedených vlstností osttní viz npř. D. Kozen. A Completeness Theorem for Kleene Algers nd the Alger of Regulr Events neo Automt nd Computility: 0 = 1: 0 A.10 = 1+00 A.7 = 1+0 A.4 = 1. 1+ = pro stručnost neuvádíme použití A.1, A.2: 1+ : A.10: = 1+ A.3: + = 1+ A.10: 1+ + = 1+ A.3: 1+1+ + = 1+, neoli 1+ +1+ = 1+ def. : 1+ 1+ A.10: 1+ 1+ : 1+ = 1+ A.3: 1+ + = 1+ def. : 1+ ntisymetrie. Regulární jzyky 2 p.6/35

Poznámk: Různé vlstnosti Kleeneho lgeer se někdy snáze dokzují pro jednotlivé konkrétní příkldy těchto lgeer, npř. pro Kleeneho lgeru regulárních výrzů, kde lze npř. využít vzy n teorii množin. Vlstnosti Kleeneho lgeer umožňují sndno řešit systémy lineárních rovnic nd těmito lgermi. V dlší části udeme s těmito rovnicemi prcovt již přímo nd Kleeneho lgerou regulárních výrzů. Regulární jzyky 2 p.7/35

Rovnice nd regulárními výrzy Definice 2.2 Rovnice, jejímiž složkmi jsou koeficienty neznámé, které reprezentují (dné hledné) regulární výrzy, nzýváme rovnicemi nd regulárními výrzy. Příkld 2.1 Uvžujme rovnici nd regulárními výrzy nd ecedou {,} Jejím řešením je regulární výrz X =. X = X + Důkz. LS = PS = ( )+ = + + = ( + +) =. Ne vždy existuje jediné řešení rovnice nd reg. výrzy. Regulární jzyky 2 p.8/35

Vět 2.1 Necht X = px +q je rovnice nd reg. výrzy, kde p, q jsou reg. výrzy p oznčuje regulární množinu P tkovou, že P. Pk X = p (q +r) je řešením této rovnice pro liovolné r (kterému nemusí ni odpovídt regulární množin, le přípdně i oecnější jzyk). Důkz. PS = p (q +r) LS = p(p (q+r))+q = pp (q+r)+q = p (q+r)+q = p (q+r) (Uvědomme si, že P.) Ovykle le hledáme nejmenší řešení, tzv. nejmenší pevný od, dné rovnice. Regulární jzyky 2 p.9/35

Vět 2.2 Nejmenším pevným odem rovnice X = px +q je: X = p q Důkz. PS = p q LS = pp q +q = (pp +)q = p q Minimlit plyne přímo z A.12. Regulární jzyky 2 p.10/35

Soustvy rovnic nd regulárními výrzy Příkld 2.2 Budiž dán soustv rovnic X = 1 X + 2 Y + 3 Y = 1 X + 2 Y + 3 Její řešení je: X = ( 1 + 2 2 1 ) ( 3 + 2 2 3 ) Y = ( 2 + 1 1 2 ) ( 3 + 1 1 3 ) Důkz. Ponecháno n čtenáře. Regulární jzyky 2 p.11/35

Definice 2.3 Soustv rovnic nd reg. výrzy je ve stndrdním tvru vzhledem k neznámým = {X 1,X 2,...,X n }, má-li soustv tvr i {1,...,n} X i = α i0 +α i1 X 1 +α i2 X 2 +...+α in X n kde α ij jsou reg. výrzy nd nějkou ecedou Σ, Σ =. Vět 2.3 Je-li soustv rovnic nd reg. výrzy ve std. tvru, pk existuje její minimální pevný od lgoritmus jeho nlezení. Důkz. Vyjdřujeme hodnotu jednotlivých proměnných pomocí řešení rovnice X = px +q jko regulární výrz s proměnnými, jejichž počet se postupně snižuje: Z rovnice pro X n vyjádříme npř. X n jko regulární výrz nd Σ X 1,...,X n 1. Dosdíme z X n do rovnice pro X n 1 postup opkujeme. Jsou přitom možné (le ne nutné) různé optimlizce tohoto pořdí. Regulární jzyky 2 p.12/35

Příkld 2.3 Řešme soustvu rovnic nd reg. výrzy: (1) X 1 = (01 +1)X 1 +X 2 (2) X 2 = 11+1X 1 +00X 3 (3) X 3 = +X 1 +X 2 Výrz pro X 3 dosdíme z (3) do (2). Dostneme soustvu: (4) X 1 = (01 +1)X 1 +X 2 (5) X 2 = 11+1X 1 +00(+X 1 +X 2 ) = 00+11+(1+00)X 1 +00X 2 Ze (4) vyjádříme X 1 s využitím řešení rovnice X = px +q (vět 2.3): (6) X 1 = (01 +1) X 2 = (0+1) X 2 Doszením do (5): (7) X 2 = 00+11+(1+00)(0+1) X 2 +00X 2 = 00+11+(1+00)(0+1) X 2 Vypočtením X 2 jko řešení rovnice X = px +q dostneme: (8) X 2 = ((1+00)(0+1) ) (00+11) Doszením do (6) dostneme: (9) X 1 = (0+1) ((1+00)(0+1) ) (00+11) = (0+1) (00+11) Doszením do (3) dostneme: (10) X 3 = +(0+1) (00+11)+((1+00)(0+1) ) (00+11) = = +((0+1) +((1+00)(0+1) ) )(00+11) = = +(0+1) (00+11) Regulární jzyky 2 p.13/35

Regulární množiny jzyky typu 3 Vět 2.4 Jzyk L je regulární množinou právě tehdy, je-li L jzykem typu 3. Oznčíme-li L R třídu všech regulárních množin, pk: L R = L 3 Důkz. I. L R L 3, tj. kždou regulární množinu lze generovt grmtikou typu 3. regulární množin grmtik typu 3 (1) G = ({S},Σ,,S) (2) {} G = ({S},Σ,{S },S) (3) {} pro kždé Σ G = ({S},Σ,{S },S) Nyní ukážeme, že sjednocení, konktenci iterci reg. množin lze generovt rovněž grmtikou typu 3. Necht tedy L 1 = L(G 1 ), kde G 1 = (N 1,Σ 1,P 1,S 1 ), L 2 = L(G 2 ), kde G 2 = (N 2,Σ 2,P 2,S 2 ) G 1, G 2 jsou grmtiky typu 3, N 1 N 2 = (nonterminály je vždy možno tkto odlišit). Důkz pokrčuje dále. Regulární jzyky 2 p.14/35

Pokrčování důkzu. regulární množin grmtik typu 3 (4) L 1 L 2 N 4 = N 1 N 2 {S 4 }, S 4 N 1 N 2, G 4 = (N 4,Σ 1 Σ 2,P 4,S 4 ), kde P 4 = {S 4 S 1 S 2 } P 1 P 2 (5) L 1.L 2 G 5 = (N 1 N 2,Σ 1 Σ 2,P 5,S 1 ) P 5 je nejmenší množin tková, že: je-li (A xb) P 1, pk (A xb) P 5, je-li (A x) P 1, pk (A xs 2 ) P 5, (A α) P 2 : (A α) P 5. (6) L 1 G 6 = (N 1 {S 6 },Σ 1,P 6,S 6 ), S 6 N 1 P 6 je nejmenší množin tková, že: je-li (A xb) P 1, pk (A xb) P 6, je-li (A x) P 1, pk (A xs 6 ) P 6, (S 6 S 1 ) P 6. Důkz pokrčuje dále. Regulární jzyky 2 p.15/35

Pokrčování důkzu. II. L 3 L R, tj. kždý jzyk generovný grmtikou typu 3 je regulární množinou. Necht L L 3 je liovolný jzyk typu 3. Již vím, že ho můžeme popst KA M = (Q,Σ,δ,q 0,F). Necht Q = {q 0,q 1,...,q n }. Vytvoříme soustvu rovnic n reg. výrzy s proměnnými X 0,X 1,...,X n ve stndrdním tvru. Rovnice pro X i popisuje množinu řetězců přijímných ze stvu Q i. Řešením této soustvy získáme reg. výrz pro proměnnou X 0, který reprezentuje jzyk L. Příkld 2.4 1 3 X 1 = + X 1 + X 2 + X 3 X 2 = X 1 + X 3 X 3 = + X 2 + X 3 2 Jzyk L popisuje reg. výrz, který je řešením této soustvy pro proměnnou X 1. Regulární jzyky 2 p.16/35

Poznámk: jiný převod KA n RV Regulární přechodový grf je zoecnění KA, které umožňuje množinu počátečních stvů regulární výrzy n hrnách. Kždý RPG je možné převést n RPG s jediným přechodem, ze kterého odečteme hledný RV. Zvedeme nový počáteční koncový stv, které propojíme s původními počátečními koncovými stvy přechody. Pk postupně odstrňujeme všechny původní stvy následujícím způsoem: S 1 R 1 (S 1 +S 2 +)*T 1 R 1 T 1 R 2 (S 1 +S 2 +)*T 1 R 1 (S 1 +S 2 +)*T 2 R 2 T 2 S 2 R 2 (S 1 +S 2 +)*T 2 Regulární jzyky 2 p.17/35

Přímý převod RV n DKA Regulární jzyky 2 p.18/35

Rozšířené konečné utomty RV udeme převádět nejprve n tzv. rozšířené KA ty pk n DKA. Definice 2.4 Rozšířený konečný utomt (RKA) je pětice M = (Q,Σ,δ,q 0,F), kde Q je konečná množin stvů, Σ je konečná vstupní eced, δ je zorzení Q (Σ {}) 2 Q, q 0 Q je počáteční stv, F Q je množin koncových stvů. Příkld 2.5 M = ({0,1,2,3,4},{,},δ,0,{2,4}) 1 2 0 3 4 L(M) = + = + + + Regulární jzyky 2 p.19/35

-uzávěr Klíčovou funkci v lgoritmu převodu RKA n DKA má výpočet funkce, která k dnému stvu určí množinu všech stvů, jež jsou dostupné po hrnách digrmu přechodů funkce δ. Oznčme tuto funkci jko -uzávěr: -uzávěr(q) = {p w Σ : (q,w) (p,w)} Funkci -uzávěr zoecníme tk, y rgumentem mohl ýt množin T Q: -uzávěr(t) = -uzávěr(s) s T Příkld 2.6 t q p -uzávěr({q,r,s}) = {p,q,r,s,t} r s Regulární jzyky 2 p.20/35

Výpočet -uzávěru Zvedeme relci v množině Q tkto: Pk -uzávěr(p) = {q Q p q}. q 1,q 2 Q : q 1 q 2 def q 2 δ(q 1,) K výpočtu -uzávěru pk použijeme Wrshllův lgoritmus, doplníme digonálu jedničkmi z příslušného řádku mtice výsledné relce vyčteme -uzávěr. Příkld 2.7 L(M) = (+) 2 3 0 1 6 7 8 9 10 4 5 -uzávěr(3) = {3,6,7,1,2,4} -uzávěr({1,0}) = {0,1,2,4,7} Regulární jzyky 2 p.21/35

Převod RKA n ekvivlentní DKA Algoritmus 2.1 Převod RKA n DKA Vstup: RKA M = (Q,Σ,δ,q 0,F). Výstup: DKA M = (Q,Σ,δ,q 0,F ), L(M) = L(M ). Metod: 1. Q := 2 Q \{ }. 2. q 0 := -uzávěr(q 0 ). 3. δ : Q Σ Q je vypočten tkto: Necht T Q, Σ : δ(t,) = q T δ(q,). Pk pro kždé T Q, Σ: () pokud δ(t,), pk δ (T,) = -uzávěr(δ(t,)), () jink δ (T,) není definováno. 4. F := {S S Q S F }. Regulární jzyky 2 p.22/35

Příkld 2.8 Aplikujeme lgoritmus 2.3 n utomt z příkldu 2.10: 1. Počáteční stv, oznčíme ho A, je A = -uzávěr(0) = {0, 1, 2, 4, 7}. 2. δ (A,) = -uzávěr({3,8}) = {1,2,3,4,6,7,8} = B. 3. δ (A,) = -uzávěr({5}) = {1,2,4,5,6,7} = C. 4. δ (B,) = -uzávěr({3,8}) = B. 5. δ (B,) = -uzávěr({5,9} = {1,2,4,5,6,7,9} = D. 6. δ (C,) = -uzávěr({3,8}) = B. 7. δ (C,) = -uzávěr({5}) = C. 8. δ (D,) = -uzávěr({3,8}) = B. 9. δ (D,) = -uzávěr({5,10} = {1,2,4,5,6,7,10} = E. 10. δ (E,) = -uzávěr({3,8}) = B. 11. δ (E,) = -uzávěr({5}) = C. 12. Množin koncových stvů F = {E}. Automt z příkldu 2.10: 2 3 0 1 6 7 8 9 10 4 5 Regulární jzyky 2 p.23/35

Převod RV n ekvivlentní RKA Algoritmus 2.2 Převod RV n RKA Vstup: RV r popisující regulární množinu R nd Σ. Výstup: RKA M tkový, že L(M) = R. Metod: 1. Rozložíme r n jeho primitivní složky podle rekurzivní definice reg. množiny/výrzu. 2. () Pro výrz zkonstruujeme utomt: s f () Pro výrz, Σ zkonstruujeme utomt: s f (c) Pro výrz zkonstruujeme utomt: (d) Necht N 1 je utomt přijímjící jzyk specifikovný výrzem r 1 necht N 2 je utomt přijímjící jzyk specifikovný výrzem r 2. i. Pro výrz r 1 +r 2 zkonstruujeme utomt: s f N 1 s f N 2 Regulární jzyky 2 p.24/35

2. (d) ii. Pro výrz r 1 r 2 zkonstruujeme utomt: N 1 N 2 iii. Pro výrz r 1 zkonstruujeme utomt: s N 1 f Příkld 2.9 Vytvořme RKA pro RV (+) : 1. Rozkld RV vyjádříme stromem: r 4 ( ) r 5 * r 11 r 9. r 7. r 8. r 6 r 10 r 3 r 1 + r 2 Regulární jzyky 2 p.25/35

2. () Regulárnímu výrzu r 1 = přísluší utomt N 1 : () Regulárnímu výrzu r 2 = přísluší utomt N 2 : (c) Regulárnímu výrzu r 1 +r 2 přísluší utomt N 3 : 2 3 2 3 4 5 1 6 4 5 (d) Automt N 4 pro r 4 = (r 3 ) je stejný jko N 3, zkonstruujeme tedy rovnou N 5 pro výrz r 5 = r 4 = (+) : 2 3 0 1 6 7 4 5 Regulární jzyky 2 p.26/35

2. (e) Regulárnímu výrzu r 6 = přísluší utomt N 6 : (f) Regulárnímu výrzu r 7 = r 5 r 6 přísluší utomt N 7 : 7 8 2 3 pro zopkování N 5 : 0 1 4 5 6 7 2 3 N 7 : 0 1 4 5 6 7 8 (...) Pokrčujeme ž do získání utomtu z příkldu 2.10. Převod RV n RKA zvádí mnoho vnitřních stvů je proto ovykle následován použitím lgoritmu minimlizce DKA (lgoritmus 2.2). Regulární jzyky 2 p.27/35

Vzthy regulárních grmtik, KA RV Můžeme tedy shrnout, že grmtiky typu 3 (prvé/levé regulární grmtiky, prvé/levé lineární grmtiky), (rozšířené/nedeterministické/deterministické) konečné utomty regulární výrzy mjí ekvivlentní vyjdřovcí sílu. grmtiky typu 3 konečné utomty regulární výrzy Regulární jzyky 2 p.28/35

Minimlizce DKA Regulární jzyky 2 p.29/35

Elimince nedosžitelných stvů Definice 2.5 Necht M = (Q,Σ,δ,q 0,F) je konečný utomt. Stv q Q nzveme dosžitelný, pokud existuje w Σ tkové, že (q 0,w) M (q,). Stv je nedosžitelný, pokud není dosžitelný. Algoritmus 2.3 Elimince nedosžitelných stvů Vstup: DKA M = (Q,Σ,δ,q 0,F). Výstup: DKA M ez nedosžitelných stvů, L(M) = L(M ). Metod: 1. i := 0 2. S i := {q 0 } 3. repet 4. S i+1 := S i {q p S i Σ : δ(p,) = q} 5. i := i + 1 6. until S i = S i 1 7. M := (S i,σ,δ Si,q 0,F S i ) Regulární jzyky 2 p.30/35

Jzykově nerozlišitelné stvy Definice 2.6 Necht M = (Q,Σ,δ,q 0,F) je úplně definovný DKA. Říkáme, že řetězec w Σ rozlišuje q 1,q 2, jestliže (q 1,w) M (q 3,) (q 2,w) M (q 4,) pro nějké q 3, q 4 právě jeden ze stvů q 3, q 4 je v F. Říkáme, že stvy q 1,q 2 Q jsou k-nerozlišitelné píšeme q 1 k q2, právě když neexistuje w Σ, w k, který rozlišuje q 1 q 2. Stvy q 1, q 2 jsou nerozlišitelné, znčíme q 1 q 2, jsou-li pro kždé k 0 k-nerozlišitelné. Poznámk: Dá se sndno dokázt, že je relcí ekvivlence n Q, tj. relcí, která je reflexivní, symetrickou trnzitivní. Definice 2.7 Úplně definovný DKA M nzýváme redukovný, jestliže žádný stv z Q není nedostupný žádné dv stvy nerozlišitelné. Regulární jzyky 2 p.31/35

Vět 2.5 Necht M = (Q,Σ,δ,q 0,F) je úplně definovný DKA Q = n, n 2. Pltí q 1,q 2 Q : q 1 q 2 q 1 n 2 q 2. Důkz. triviální, ukážeme : 1. Jestliže F = 0 neo F = n, pk pltí q 1 n 2 q 2 q 1 q 2. 2. Necht F > 0 F < n. Ukážeme, že pltí = n 2 n 3... 1 : 0 Zřejmě pltí: () q 1,q 2 Q : q 1 0 q2 (q 1 F q 2 F) (q 1 F q 2 F), tj. q 1 0 q2 (q 1 F q 2 F). () q 1,q 2 Q k 1 : q 1 k q2 (q 1 k 1 q 2 Σ : δ(q 1,) k 1 δ(q 2,)). Relce 0 je ekvivlencí určující rozkld {F,Q\F}. Je-li k+1 k, pk k+1 je vlstním zjemněním k, tj. oshuje lespoň o jednu třídu více než rozkld k. Jestliže pro nějké k pltí k+1 = k, pk tké k+1 = k+2 = k+3 =... podle () tedy k je hledná ekvivlence. Protože F neo Q\ F oshuje nejvýše n 1 prvků, získáme relci po nejvýše n 2 zjemněních 0. Regulární jzyky 2 p.32/35

Převod n redukovný DKA Algoritmus 2.4 Převod n redukovný DKA Vstup: Úplně definovný DKA M = (Q,Σ,δ,q 0,F). Výstup: Redukovný DKA M = (Q,Σ,δ,q 0,F ), L(M) = L(M ). Metod: 1. Odstrň nedostupné stvy s využitím lg. 2.1. 2. i := 0 0 3. := {(p,q) p F q F} 4. repet i+1 5. := {(p,q) p i q Σ : δ(p,) 6. i := i + 1 7. until i = i 1 8. Q := Q/ i 9. p,q Q Σ : δ ([p],) = [q] δ(p,) = q 10. q 0 = [q 0 ] 11. F = {[q] q F} i δ(q,)} Poznámk: Výrz [x] znčí ekvivlenční třídu určenou prvkem x. Regulární jzyky 2 p.33/35

Příkld minimlizce DKA Příkld 2.10 Převed te níže uvedený DKA (zdný digrm přechodů) n odpovídjící redukovný DKA. A F D B E C 0 δ 1. Neoshuje nedostupné stvy. 3. 5.1. 0 = {{A,F},{B,C,D,E}} 1 = {{A,F},{B,E},{C,D}} I: A F I B II F A I E II II: B E II D II C C II F I D D II A I E B II C II Pokrčuje n druhé strně... Regulární jzyky 2 p.34/35

Pro zopkování utomt z předchozího sljdu, v jehož minimlizci níže pokrčujeme: A F D B E C 1 δ 5.2. 2 = {{A,F},{B,E},{C,D}} = 1 = I: A F I B II F A I E II II: B E II D III E B II C III III: C C III F I D D III A I 8. Q = {[A],[B],[C]}, kde [A] = {A,F}, [B] = {B,E}, [C] = {C,D} 11. [A] [B] [C] Regulární jzyky 2 p.35/35