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



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. Organizační záležitosti. Přednáška: na webu ( Proč chodit na přednášku?

Automaty a gramatiky. Na zopakování X*/~ Roman Barták, KTIML. Iterační (pumping) lemma. Pravidelnost regulárních jazyků

Automaty a gramatiky

Teorie jazyků a automatů I

Úvod do Teoretické Informatiky ( UTI)

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

Automaty a gramatiky

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. 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. Pro připomenutí. Roman Barták, KTIML. Důkaz věty o dvousměrných automatech (1)

AUTOMATY VE VYHLEDÁVÁNI cvičeni

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

Automaty a gramatiky(bi-aag)

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

AUTOMATY A GRAMATIKY

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

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

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

13. Soustava lineárních rovnic a matice

2.3. DETERMINANTY MATIC

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

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

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

3. Polynomy Verze 338.

Jazyk matematiky Matematická logika Množinové operace Zobrazení Rozšířená číslená osa

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

Úvod do numerické matematiky. Přednáška pro posluchače informatiky. Zimní resp. Letní semestr 2/2

Vlastnosti regulárních jazyků

u, v, w nazýváme číslo u.( v w). Chyba! Chybné propojení.,

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

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

Syntaxí řízený překlad

( 5 ) 6 ( ) 6 ( ) Přijímací řízení ak. r. 2010/11 Kompletní znění testových otázek - matematický přehled

c 2 b 2 a Důkazy Pythagorovy věty Předpoklady:

Teorie jazyků a automatů

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

3.2.1 Shodnost trojúhelníků I

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 Σ

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

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

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

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 m1 a m2 a mn zobrazení. Operaci násobení u matic budeme definovat jiným způsobem.

3. Matice a determinanty

matematika vás má it naupravidl

Determinant. Definice determinantu. Permutace. Permutace, vlastnosti. Definice: Necht A = (a i,j ) R n,n je čtvercová matice.

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

OSTRAVSKÁ UNIVERZITA V OSTRAVĚ

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

Lineární algebra II. Adam Liška. 9. února Zápisky z přednášek Jiřího Fialy na MFF UK, letní semestr, ak. rok 2007/2008

GRAMATIKY A JAZYKY URČENO PRO VZDĚLÁVÁNÍ V AKREDITOVANÝCH STUDIJNÍCH PROGRAMECH HASHIM HABIBALLA

1 i= VLIV ZMĚN FYZIKÁLNÍCH PARAMETRŮ FLUIDNÍCH VRSTEV NA CHARAKTERISTIKY TLAKOVÝCH FLUKTUACÍ. OTAKAR TRNKA a MILOSLAV HARTMAN. i M

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

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

Učební texty k státní bakalářské zkoušce Matematika Matice. študenti MFF 15. augusta 2008

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

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

FI MU. Automaty nad nekonečnými slovy. Fakulta informatiky Masarykova univerzita. Učební text FI MU verze 1.0

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

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

2002 Katedra obecné elektrotechniky FEI VŠB-TU Ostrava Ing.Stanislav Kocman

1 REZOLUČNÍ FORMÁLNÍ DŮKAZY

ANALYTICKÁ GEOMETRIE V PROSTORU

Riemannův určitý integrál.

Prostorové nároky Zatížení Velikost zatížení Směr zatížení Nesouosost Přesnost Otáčky Tichý chod...

c sin Příklad 2 : v trojúhelníku ABC platí : a = 11,6 dm, c = 9 dm, α = Vypočtěte stranu b a zbývající úhly.

10. Suffixové stromy

Studium termoelektronové emise:

Regulární matice. Věnujeme dále pozornost zejména čtvercovým maticím.

Mgr. Karel Pazourek. online prostředí, Operační program Praha Adaptabilita, registrační číslo CZ.2.17/3.1.00/31165.

Složitost a NP-úplnost

TEORIE JAZYKŮ A AUTOMATŮ II

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

Skalární součin je nástroj, jak měřit velikost vektorů a úhly mezi vektory v reálných a komplexních vektorových prostorech.

6. Matice. Algebraické vlastnosti

Dnešní program odvozování v Bayesovských sítích exaktní metody (enumerace, eliminace proměnných) aproximační metody y( (vzorkovací techniky)

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

20. Eukleidovský prostor

Teorie informace a kódování (KMI/TIK)

2. Matice a determinanty

6. a 7. března Úloha 1.1. Vypočtěte obsah obrazce ohraničeného parabolou y = 1 x 2 a osou x.

Kapitola 11. Vzdálenost v grafech Matice sousednosti a počty sledů

Opakovací test. Klíčová slova: výraz, interval, množina, kvadratický trojčlen, mocnina, exponent, výrok, negace

Přehled učiva matematiky 7. ročník ZŠ

Soustavy lineárních rovnic

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

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

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.

Deterministický konečný automat

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

2 Spojité modely rozhodování

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry.

Symetrické a kvadratické formy

1. ÚPRAVY ALGEBRAICKÝCH VÝRAZŮ V REÁLNÉM OBORU 1.1. ZLOMKY A ABSOLUTNÍ HODNOTA

KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO LINEÁRNÍ ALGEBRA 1 OLGA KRUPKOVÁ VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN


Automaty a gramatiky. Roman Barták, KTIML. Chomského normální forma

JICH APLIKACE FAKULTA INFORMAČNÍCH TECHNOLOGIÍ BRNO UNIVERSITY OF TECHNOLOGY FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS

Sémantický Web SPARQL

Transkript:

Automty grmtiky Romn Brták, KTIML rtk@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~rtk Orgnizční záležitosti Přednášk: n weu (http://ktiml.mff.cuni.cz/~rtk/utomty) Proč chodit n přednášku? Cvičení: dozvíte se více než při pouhém čtení í sljdů ude záv (někdy) Proč chodit n cvičení? Zkoušk: vyzkoušíte si, zd látce rozumíte rozšíříte si znlosti z přednášky písemná ústní část porozumění látce + schopnost formlizce

O čem ude přednášk? studium konečného č popisu nekonečných č ojektů studium strktních výpočetních zřízení dvě větve: utomty grmtiky konečné utomty zásoníkové utomty regulární grmtiky ezkontextové grmtiky lineárně ě omezené utomty t kontextové t grmtiky Turingovy stroje grmtiky typu Zdroje litertur M. Chytil: Automty grmtiky, SNTL Prh, 984 R. Brták: Automty grmtiky: on-line http://ktiml.mff.cuni.cz/~rtk/utomty V. Kouek: Automty grmtiky, elektronický text, 996 M. Chytil: Teorie utomtů formálních jzyků, skript M. Chytil: Sírk řešených příkldů z teorie utomtů formálních jzyků, skript M. Demlová, V. Kouek: Algerická teorie utomtů, SNTL Prh, 99 J.E. Hopcroft, R. Motwni, J.D. Ullmn: Introduction to Automt Theory, Lnguges nd Computtion, Addison-Wesley

Pohled do historie Počátky ve druhé čtvrtině 2. století první formlizce pojmu lgoritmus (936) co stroje umí co ne? Church, h Turing, Kleene, Post, Mrkov Polovin 2. století neuronové sítě (943) konečné č utomty t (Kleene 956 neuronové sítě KA) 6. lét 2. století grmtiky (Chomsky) zásoníkové utomty formální teorie konečných utomtů Prktické využití zprcování přirozeného jzyk překldče návrh, popis verifikce hrdwre integrovné ovody, stroje, utomty relizce pomocí softwre formální popis progrm hledání výskytu slov v textu, t verifikce systémů s konečně stvy (protokoly, ), plikce v iologii simulce růstu celulární utomty see-reprodukce utomtů

Úvod do konečných utomtů Projekt SETI (Serch Extr-Terrestril t Intelligence) nlýz signálů - hledání vzorku Hledání vzorku c d Úvod do konečných utomtů 2 Stroj n kávu stroj signlizuje vydání kávy po vhození potřeného onosu Vstupem stroje jsou mince,2,5 Kč, káv stojí 5 Kč 5/ 2/ 5/ 2/- 2/- 2/ / /- /- /- /- 2 3 4 5/ 2/- 5/ 5/ Relizce pomocí Melyho stroje s výstupem při přechodu.

Formlizce konečného utomtu Konečným č utomtem t nzýváme pětici i A = (Q,X,δ,q,F), kde: Q - konečná č neprázdná á množin stvů ů (stvový prostor) X - konečná neprázdná množin symolů (vstupní p eced) ) δ - zorzení Q X Q (přechodová funkce) q Q (počáteční stv) F Q (množin přijímcích stvů) c d Popis konečného utomtu Stvový digrm (grf) vrcholy = stvy hrny = přechody Tulk řádky = stvy+přechody sloupce = písmen c d c c d d c Stvový strom vrcholy = stvy hrny = přechody c pouze dosžitelné stvy! c d

Aeced, slov, jzyky eced X = konečná neprázdná množin symolů slovo = konečná posloupnost symolů (i prázdná) prázdné slovo λ (e, ε,...) X* = množin všech slov v ecedě X X + = množin všech neprázdných slov v ecedě X X* = X + {λ} jzyk L X* (množin slov v ecedě X) Zákldní operce se slovy: zřetězení slov u.v, uv mocnin u n (u = λ, u = u, u n+ = u n.u) délk slov u ( λ = ) Rozšířená přechodová funkce přechodová funkce δ: Q X Q rozšířená přechodová funkce δ*: Q X* Q trnzitivní uzávěr δ induktivní definice δ*(q,λ) = q δ*(q (q,wx) = δ(δ*(q (q,w),x), x X, w X* úmluv: δ* udeme někdy oznčovt tké jko δ

Jzyky rozpozntelné konečnými utomty Jzykem rozpoznávným (kceptovným, přijímným) konečným utomtem A = (Q,X, δ,q,f) nzveme jzyk: L(A) = {w w X* δ*(q,w) F}. Slovo w je přijímáno utomtem A, právě když w L(A). Jzyk L je rozpozntelný konečným utomtem, jestliže existuje konečný utomt A tkový, že L=L(A). Třídu jzyků rozpozntelných konečnými utomty znčíme F, tzv. regulární jzyky. Příkldy regulárních jzyků L= { w w {,}*, w=xux, x {,}, u {,}*} L= { w w {,}*,, w=u, u {,}*} } L= { w w {,} }* w je inární zápis čísl dělitelného 5} 2 3 L={ n n n } 3 není regulární jzyk! 4

Kongruence Jk zjistit, že jzyk není rozpozntelný konečným č utomtem? Jk chrkterizovt regulární jzyky? Kongruence Nechť X je konečná eced, ~ je relce ekvivlence (reflexivní, symetrická, trnsitivní) n X*. Potom: ) ~ je prvá kongruence, jestliže u,v,w X* u~v uw~vw ) je konečného indexu, jestliže rozkld X*/~ má konečný počet tříd Rozkld n třídy u v uw vw Nerodov vět Nechť Lje jzyk nd dkonečnou č ecedou X. Potom následující tvrzení jsou ekvivlentní: ) L je rozpozntelný konečným utomtem, ) existuje prvá kongruence ~ konečného indexu n X* tk, že L je sjednocením jistých tříd rozkldu X*/~. X* X*/~ L

Důkz Nerodovy věty ) ) utomt prvá kongruence konečného indexu definujme u~v δ*(q,u) = δ*(q,v) je to ekvivlence (reflexivní, symetrická, trnsitivní) je to prvá kongruence (z definice δ*) má konečný index (konečně mnoho stvů) L= {w δ*(q δ,w) F} = q F {w δ*(q δ,w) = q} u w v Pozorování: stvy odpovídjí třídám ekvivlence Důkz Nerodovy věty - pokrčování ) ) prvá kongruence konečného indexu utomt oznčme [u] třídu rozkldu oshující slovo u Jk sestrojíme konečný utomt A? eced X dán stvy Q - třídy rozkldu X*/~ u ux L stv q = [λ] koncové stvy F = {c,..,c n }, kde L= i=..n c i přechodová funkce δ([u],x) = [ux] přechodová funkce je korektní (z definice prvé kongruence) Ještě L(A) = L? w L w i=..n c i w c w c n [w]= c [w]= c n [w] F w L(A) δ*([λ],w) = [w]

Použití Nerodovy věty Konstrukce utomtů tů Příkld: Sestrojte utomt přijímjící jzyk L = {w w {,}* & w oshuje 3k+2 symolů } oznčme u x počet symolů x ve slově u definujme u~v ( u mod 3 = v mod 3 ) tři třídy ekvivlence,,2 (zytky po dělení 3) L odpovídá třídě 2 -přechody přesouvjí do následující třídy (mod 3) -přechody ř zchovávjí třídu 2 Použití Nerodovy věty - pokrčování Důkz neregulárnosti jzyk! Příkld: Rozhodněte zd následující jzyk je regulární L = { n n n }. Předpokládejme, že jzyk je regulární existuje prvá kongruence konečného indexu m, L je sjednocením tříd vezmeme slov,,, m+ dvě slov pdnou do stejné třídy y( (kričkový ýprincip) p) i j i ~ j přidejme i i i ~ j i (prvá kongruence) spor i i L & j i L

Prvidelnost regulárních jzyků Konečný č utomt t kóduje pouze konečnou č informci. i Přesto můžeme rozpoznávt nekonečné jzyky! Můžeme přijímt liovolně (le konečně) dlouhá slov! Pozorování: L = {w w {,}* & w =3k+} L potom tké: L řetězec jsme zdvojili L řetězec jsme ztrojili L řetězec jsme vypustili Lze tkovouto t operci provést s kždým slovem liovolného regulárního jzyk? ANO (pokud je slovo dosttečně dlouhé) Iterční (pumping) lemm Nechť Lj je regulární íjzyk. Potom existuje přirozené číslo l n tkové, že liovolné slovo z L, z n lze psát ve tvru uvw, kde: uv n, v pro všechn i uv i w L. Důkz: z n vezměme počet stvů příslušného utomtu při zprcování slov délky n se utomt nutně musí dostt do jednoho stvu dvkrát (kričkový princip) i vezměme tkový stv p, který se opkuje jko první potom δ(q,u)=p poprvé jsme se dostli do p zřejmě δ(q,uv)=p podruhé jsme se dostli do p uv n (pouze p se opkuje tj. mximálně n+ stvů) v (smyčk oshuje lespoň jedno písmeno) smyčku mezi prvním druhým průchodem p (odpovídá jí slovo v) nyní můžeme vypustit neo projít vícekrát tj. i uv i w L q p q F u v w

Použití iterčního lemmtu Důkz neregulárnosti jzyk L= { i i i } není regulární jzyk sporem: nechť L je regulární, potom lze pumpovt ( n tž. ) vezměme slovo n n (to je určitě delší než n) pumpovt můžeme pouze v části n potom, le n+i n L (i> je délk pumpovné části), což je spor POZOR! Iterční lemm předstvuje nutnou podmínku regulárnosti jzyk, nedává podmínku postčující. Existuje jzyk, který není regulární lze pumpovt. L= {u u= + i c i u= i c j } vždy lze pumpovt první písmeno L není regulární (Nerodov vět) Iterční lemm nekonečnost jzyků Umíme lgoritmicky rozhodnout, zd je regulární jzyk L nekonečný? ANO! jzyk L je nekonečný u L tž. n u < 2n n je číslo z iterčního lemmtu stčí prozkoumt všechn slov u tková, že n u < 2n (to je konečně č ě mnoho slov) PROČ? Pokud u L tž. n u (< 2n), potom lze slovo u pumpovt, čímž dostneme nekonečně mnoho slov z jzyk L. Je-li jzyk L nekonečný, č oshuje slovo z tkové, že n z. Pokud z < 2n máme hledné slovo. Jink, podle iterčního lemmtu z = uvw uw L, L tj. zkrácení Pltí-li stále 2n uw, opkuj zkrcování se slovem uw. Poznámk: zkrcujeme mximálně o n písmen, tedy intervl [n,2n) nelze přeskočit!

Jzyk přijímjící utomty Je utomt t pro dný jzyk určen č jednoznčně? č NENÍ! L = {w w {}* w =3k} Ekvivlence utomtů homomorfismus Jk zjistit, zd dv utomty přijímjí stejný jzyk? Říkáme, že konečné utomty A B jsou ekvivlentní, jestliže rozpoznávjí stejný jzyk, tj. L(A)=L(B). L(B). Nechť A A 2 jsou konečné utomty. Řekneme, že zorzení h: Q Q 2 je (utomtovým) homomorfismem, jestliže: ) h(q ) = q 2 stejné počáteční stvy 2) h(δ (q,x)) = δ 2 (h(q),x) stejné přechodové funkce 3) q F h(q) F 2 stejné koncové stvy Homomorfismus prostý n nzýváme isomorfismus.

Vět o ekvivlenci utomtů Existuje-li homomorfismus konečných č utomtů tů A do A 2, pk A A 2 jsou ekvivlentní. Důkz: konečnou itercí h(δ (q,w)) = δ 2 (h(q),w) w X* w L(A ) δ (q,w) F A 2 h(δ qa (q,w)) F 2 F q 2F δ 2 2( (h(q(q ),w) ) F 2 w w δ 2 (q 2,w) F 2 w L(A 2 ) q q 2 Homomorfismus utomtů L = {w w=* w =3k}

Trochu motivce Co dělá tento t utomt? t? L={w w {,} }* w =3k} Dosžitelné stvy A = (Q,X,δ,q δ,f) je konečný č utomt t q Q. Řekneme, že stv q je dosžitelný, jestliže w X* δ*(q,w)=q Vět: Nechť P jsou dosžitelné stvy utomtu A. Potom B = (P,X,δ,q,F ) je konečný utomt ekvivlentní s A (F = F P, δ = δ P X ).

Hledání dosžitelných stvů Iterční č lgoritmus (dosžitelnost t po i krocích): M = {q } repet M i+ = M i {q q Q, p M i x X δ(p,x)=q} until M i+ = M i Korektnost M M Q (lgoritmus je konečný) kždé M i oshuje pouze dosžitelné stvy Úplnost nechť q je liovolný l dosžitelný stv, tj. w X* δ*(q,w)=q vezměme nejkrtší tkové w=x..x n tž. δ*(q,x..x n )=q zřejmě δ*(q,x..x i ) M i (dokonce M i - M i- ) tedy δ*(q,x..x n ) M n q M n Ekvivlentní stvy Výpočty strtující z ekvivlentních stvů nelze rozlišit! Nechť A = (Q,X,δ,q,,q,F) je konečný utomt. Stvy p,q jsou ekvivlentní, znčíme p~q, jestliže: w X* δ*(p,w) F ) F δ*(q,w) F) F

Ekvivlence po krocích Ekvivlence po i krocích p ~ i q w X* tž. w i δ*(p,w) F δ*(q,w) F p ~ q i p ~ i q Itertivní konstrukce ~ i p ~ q... p F q F p ~ i+ q... p ~ i q x X δ(p,x) ~ i δ(q,x) Je to v pořádku? p~ q δ*(p (p,λ)=p F δ*(q (q,λ)= q F p ~ i+ q... p ~ i q tj. pltí pro slov w tž. w i slov délky i+, w = xu, u =i δ(p,x) ~ i δ(q,x) tj. δ*(δ(p,x),u) F δ*(δ(q,x),u) F dohromdy δ*(p,xu) F δ*(q,xu) F Vlstnosti ekvivlence po krocích ) i je ~ i ekvivlence n Q, oznčme č R i =Q/~ i 2) R i+ zjemňuje R i 3) R i+ = R i t> R i+t = R i 4) nechť Q =n, potom k n- R k+ = R k 5) R k+ = R k (p~q p ~ k q) Důkz: ) 2) přímo z definice 3) p ~ i+ q p ~ i q x X δ(p,x) ~ i δ(q,x) p~ i+2 q p~ i+ q x X δ(p,x) ~ i+ δ(q,x) 4) přímo z mx. počtu tříd rozkldu (n) 5) p~q i p ~ i q i k p ~ i q i>k p ~ i q p ~ k q

Hledání ekvivlence stvů Iterční č lgoritmus (ekvivlence po i krocích): sestroj R repet sestroj R i+ z R i until R i+ = R i Příkld: c c c c d d d e e e f f f g g g R R R A A C A A C A A A C A A C A C C C C C D C C C A D D A D A A C A A C A C C C C C D C C C A D D A D R 2 Automtová kongruence Nechť je relce ekvivlence n Q. Říkáme, že je utomtovou kongruencí, jestliže: p,q Q q Qp q (p F q F) x X X(δ(p (δ(p,x) δ(q,x)) Q Q/ p q δ(p,x) δ(q,x) F Tvrzení: Ekvivlence stvů ~ je utomtovou kongruencí. Důkz: nechť p~q, potom: p F q F (položme w=λ, δ*(p,λ)=p) nechť p~q, potom: x X u X* (δ*(p,xu) F δ*(q,xu) F) x X u X* (δ*(δ(p,x),u) F δ*(δ(q,x),u) F) x X δ(p,x) ~ δ(q,x)

Podílový utomt A = (Q,X,δ,q δ,f) je konečný č utomt t je utomtová t kongruence. Potom A/ = (Q/, X, δ, [q ], {[q] q F}), kde δ ([q],x) = [δ(q,x)] je konečný utomt (nzvěme ho podílovým utomtem) ekvivlentní s A. ) Je A/ skutečně konečný utomt? Množiny Q/ X jsou neprázdné konečné. δ je definován korektně (vlstnosti utomtové kongruence) 2) Jsou o utomty t ekvivlentní? Stčí njít homomorfismus A do A/ (vět o ekvivlenci utomtů)! Definujme h: Q Q/ tkto h(q) = [q] h(q ) = [q ] h(δ(q,x)) = [δ(q,x)] = δ ([q],x) = δ (h(q),x) q F h(q)=[q] F (F jsou koncové stvy utomtu A/ ) Podílový utomt ekvivlence stvů Aj je konečný č utomt t ~ je ekvivlence stvů. ů Potom A/~ je konečný utomt ekvivlentní s A žádné stvy A/~ nejsou ekvivlentní. ) Ekvivlence stvů ~ je utomtová kongruence, tedy víme, že A/~ je konečný utomt ekvivlentní s A. 2) V A/~ nejsou ekvivlentní stvy. Sporem: nechť [p] ~ [q] ~ jsou různé ekvivlentní stvy (tj. p~q) vezměme liovolné w X*: δ ~ ([p] ~,w) F ~ δ ~ ([q] ~,w) F ~ ([p] ~ [q] ~ jsou ekvivlentní) δ ~ (h(p),w) F ~ δ ~ (h(q),w) F ~ (h(p)= [p] ~ ) h(δ(p,w)) F ~ h(δ(q,w)) F ~ δ(p,w) F δ(q,w) F p~q (h je homomorfismus) spor

Redukce utomtu Konečný utomt je redukovný, jestliže: - nemá nedosžitelné stvy, - žádné dv stvy nejsou ekvivlentní. Konečný utomt B je reduktem utomtu A, jestliže: - B je redukovný, - A B jsou ekvivlentní. Vět: Ke kždému konečnému utomtu existuje nějký jeho redukt. Konstruktivní důkz (dvě možné metody): ) vyřzení nedosžitelných stvů fktorizce podle ekvivlence stvů (nezpůsoí nedosžitelnost) neo 2) fktorizce podle ekvivlence stvů vyřzení nedosžitelných stvů (nezpůsoí změnu ekvivlence) Příkld redukce utomtů Co dělá tento t utomt t (jký jzyk přijímá)? R R R 2 2 3 I I III I II III I 2 2 4 I I I II II II II 3 3 5 III III III III III III III 4 2 7 I I I II II II II 5 6 3 III III III III III III III 6 6 6 III III III III III III III 7 7 4 I I I II II II II 8 2 3 I I III I II III I 9 9 4 I I I II II II II Redukovný utomt I II III II II II III III III Nedosžitelné stvy II II II L = {w w=u, u {,}*}

Redukce utomtu v kostce. Vyřdit nedosžitelné stvy 2. Njít ekvivlentní stvy 3. Sestrojit podílový utomt Vět o isomorfismu reduktů Pro liovolné l dv redukovné konečné č utomty t jsou následující dvě tvrzení ekvivlentní: ) utomty jsou ekvivlentní, ) utomty jsou isomorfní. Důsledky: Dv redukty liovolných dvou ekvivlentních konečných utomtů tů se shodují ž n isomorfismus. o s Pro kždý konečný utomt je jeho redukt určen ž n isomorfismus jednoznčně. Ve třídě nvzájem ekvivlentních konečných utomtů existuje minimální utomt.

Důkz věty o isomorfismu reduktů ) isomorfismus ekvivlence (víme) ) ekvivlence reduktů isomorfismus hledáme homomorfismus h:q Q 2, který je prostý n tj. pro kždé q Q hledáme právě jedno p Q 2 q je dosžitelný stv, tudíž u X* δ (q,u)=q položme h(q) = δ 2 (q 2,u) je to skutečně funkce? δ (q,u)=δ (q,v) δ 2 (q 2,u)=δ 2 (q 2,v) (*) sporem, nechť δ (q,u)=δ (q,v) & δ 2 (q 2,u) δ 2 (q 2,v) z A víme w X* uw L vw L utomty jsou ekvivlentní, tedy p ~p 2 u v spor - utomt A 2 je redukovný w w w p p 2 q u v q 2 funkce h je prostá n (vlstnost (*) ) h(q )=q 2 (pro u=λ) h(δ (q,x)) = δ 2 (h(q),x) (δ (q,v)=q, u=vx) q F h(q) F 2 (pro u L + ekvivlentní utomty) Normlizce utomtu Jk njít isomorfismus utomtů? tů? Normovný tvr utomtu ) fixujme pořdí písmen v ecedě 2) počáteční č stv oznčme č 3) tulku (utomtu) vyplňujme po řádcích zlev doprv pokud nrzíme n nový stv, přiřdíme mu první volné číslo Příkld: A B A (B) 2 3 B D C 2(D) 4 C A D 3(C) 4 2 D A B 4(A) 4

Poznámky k redukci ekvivlenci Algoritmicky i umíme řešit: zjištění ekvivlence utomtů zredukujeme, znormlizujeme porovnáme zjištění zd L(A)= žádný koncový stv není dosžitelný zjištění zd L(A)=X* po redukci dostneme jednostvový utomt (s koncovým stvem) Umíme njít nejkrtší slovo rozlišující dv stvy p~ i q & p~ i+ q X δ(p, ) ~ i- δ(q, ) & δ(p, ) ~ i δ(q, ) itercí njdeme slovo i+ Slovo odlišující dv stvy R R R 2 A A A A A B A c A C A B C A B c c e C C C C C E C d e d A C A B E B D e e d C C A E E B E Jk je dlouhé nejkrtší slovo rozlišující stvy d? 2 znky A jké je to slovo? neo

Trochu motivce Dosud: Stv písmeno jednoznčně č ě určuje č dlší stv! Příkld: L = { w w=u w=uv w=u, u,v {,}* },, Úvod do nedeterminismu Stv písmeno určuje č množinu možných dlších stvů! Příkld: L = { w w=u w=uv w=u, u,v {,}* },,,,

Nedeterministický konečný utomt Nedeterministickým i ti konečným č utomtem t nzýváme pětici A = (Q,X,δ,S,F), kde: Q - konečná neprázdná množin stvů (stvový ýp prostor) ) X - konečná neprázdná množin symolů (vstupní eced) δ - zorzení Q X P(Q) (přechodová funkce) ) S Q (množin počátečních stvů) F Q (množin přijímcích stvů) Reprezentce: stvový digrm, tulk, stvový strom Jk se počítá s nedeterminismem? Slovo w = x...x n je přijímáno nedeterministickým i ti konečným utomtem, jestliže existuje posloupnost stvů ů q,,q n+ tková, že: q S, q i+ δ(q i, x i ) pro i= n, q n+ F. Prázdné slovo je přijímáno právě když S F Přijímjících výpočtů pro dné slovo může ýt více! Př.,,,,

Determinismus vs. nedeterminismus Konečný č utomt t je speciálním přípdem nedeterministického i ti konečného utomtu! Důsledek: Jzyky rozpoznávné konečnými utomty jsou rozpoznávné nedeterministickými konečnými utomty. Pltí i orácené tvrzení? Zkusme to! potřeujeme postupovt systemticky s konečnou pmětí pomocí znček n stvech simulujeme všechny možné výpočty tzv. podmnožinová konstrukce Př.,,,, Převod nedeterminismu n determinismus Vět: Je-li A nedeterministický i ti konečný č utomt, t potom lze sestrojit konečný utomt B tkový, že L(A)=L(B). Důkz: (podmnožinová konstrukce) nechť A = (Q,X,δ,S,F) potom definujme B = (P(Q),X,δ,S,F ), kde F = { K K P(Q), K F } δ (K,x) = q K δ(q,x) ) B je definován korektně 2) L(A)=L(B)? L(B)? λ L(A) S F S F λ L(B) L(A) L(B) w= x...x n L(A) q,,q n+ Q q S, q i+ δ(q i, x i ), q n+ F položme K =S (q K ), K i+ = δ (K( i i,,x i ) (q i+ K i+ ), potom K n+ F L(B) L(A) w= x...x n L(B) K,,K n+ P(Q) K =S, K i+ =δ (K i, x i ), K n+ F vezměme q n+ F K n+, q i K i tž. q i+ δ(q i,x i ),, q K =S

Ukázk převodu,2 4 {,2} {,2,4}, {3,4} 2 4 3 {,2,4} {,2,4} {3,4} 3 4 {3,4} {,4} {4} 4,4 4 {,4} {,2,4} {4} {4} {,4} {4} 3,2,4 2,2 3,4 2 4,,4 4 Poznámky k nedeterminismu Význm: teoretický (npř. při převodu grmtik n utomty) prktický (zjednodušení návrhu utomtu) U konečných utomtů vede nedeterminismus ke stejné třídě jzyků jko determinismus. nepltí oecně (zásoníkové utomty)! Převod n determinismus znmená (ž) exponenciální nárůst počtu stvů (Q P(Q)). oecně je tento nárůst nezytný! L n = { w w {,}*, w=uv, v =n- } není potře explicitně převádět. Existují tké zoecněné nedeterministické utomty λ-přechod: změn stvu ez čtení vstupu

λ-přechody,,,9,,,9,,,9.,,,9 λ Odstrnění λ-přechodů převodem n NKA λ-uzávěr(q) = stv q stvy, do kterých se z q dostneme λ-přechody nové počáteční stvy: λ-uzávěr(s) nové hrny: δ (q, x) = λ-uzávěr( á δ(q, x) ) Automt může změnit stv ez čtení symolu. Hodí se pro zjednodušení popisu utomtu. Příkld: rozpoznání čísl l s desetinou tečkou s možností vynechání před/z tečkou prefixu +/- λ,+,- +,-,,,9.,,,9.,,,9,,,9,,,9,,,9.. Můžeme konečné utomty ještě zoecnit? Konečný č utomt t 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!

Dvousměrné (dvoucestné) konečné utomty Dvousměrným ě (dvoucestným) konečným č utomtem t nzýváme pětici A = (Q,X,δ,q,F), kde: Q - konečná neprázdná množin stvů (stvový ýp prostor) ) X - konečná neprázdná množin symolů (vstupní eced) δ - zorzení Q X Q {-,,+}, (přechodová funkce) ) přechodová funkce určuje i pohy čtecí hlvy q Q (počáteční stv) F Q (množin přijímcích stvů) Reprezentce: stvový digrm, tulk, stvový strom Počítání s dvousměrnými utomty Kdy dvousměrný ě utomt t 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 přijímcím stvu mimo čtené slovo není výpočet definován (výpočet zde končí slovo není přijto) w q q F

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, q N, q F }), X, δ, q, {q F }) tkto: δ x X # poznámk q q N,- q,+ q je počátek A 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 q u # q q q q N q F Vět o dvousměrných utomtech Jzyky přijímné dvousměrnými ě konečnými č utomty jsou právě jzyky přijímné konečnými utomty. Možnost pohyovt čtecí hlvou po pásce nezvětšil sílu konečného utomtu! Pozor, n pásku nic nepíšeme! Pokud můžeme n pásku psát, dostneme Turingův stroj. Zřejmé: konečný utomt dvousměrný konečný utomt dvousměrný utomt vždy posouvá hlvu doprv KA A=(Q,X,δ,q,F) 2KA B=(Q,X,δ,q,F), δ (q,x)=(δ(q,x),+) Zývá: dvousměrný konečný utomt konečný utomt

Důkz věty o dvousměrných utomtech () u v ) Formální popis vlivu slov u n výpočet nd slovem v (i) kdy poprvé opustíme slovo u vprvo (v jkém stvu poprvé vstoupíme nd v) f(q ) = q poprvé přejdeme n v ve stvu q f(q ) = nikdy neopustíme u vprvo (ii) pokud opustíme slovo v vlevo, kdy se u v nd v opět vrátíme p f(p) = q vrátíme se nd v ve stvu q q f(p) = nikdy už se nevrátíme 2) Výpočet nd u máme popsný funkcí f u f u : Q {q } Q {} f u(q ) popisuje situci (i): v jkém stvu poprvé odejdeme vprvo, pokud zčneme výpočet vlevo v počátečním stvu q f u (p) (p Q) popisuje situci (ii): v jkém stvu opět odejdeme vprvo, pokud zčneme výpočet vprvo v p symol znčí, že dná situce nenstne (odejdeme vlevo neo cyklus) q u q Důkz věty o dvousměrných utomtech (2) Pro kždé slovo u máme funkci f u popisující í výpočet č dvousměrného utomtu A nd u Definujme ekvivlenci slov tkto: u~w def f u =f w tj. slov jsou ekvivlentní, pokud mjí stejné výpočtové funkce Vlstnosti ~: je to ekvivlence (zřejmé, definováno pomocí =) má konečný index (mximální počet různých funkcí je (n+) n+ pro n-stvový dvousměrný utomt) je to prvá kongruence (zřejmě u~w uv~wv, protože rozhrní u v w v je stejné nd v se utomt chová stejně) L(A) je sjednocením jistých tříd rozkldu X*/~ stčí si uvědomit, že w L(A) f w (q ) F u~w f u (q )=f w (q ) (u L(A) w L(A)) Podle Nerodovy věty je L(A) regulární jzyk. v

Převod 2KA n NKA Konstruktivní důkz věty o dvousměrných ě utomtech. t Jk výpočet s návrty převést n lineární výpočet? zjímjí nás jen přijímcí výpočty díváme se n přechody mezi symoly (v jkém stvu se přechází ř n dlší políčko) Pozorování: stvy se v přechodu (řezu) střídjí (doprv/dolev) první stv jde doprv, poslední tké doprv v deterministických přijímjících výpočtech nejsou cykly první poslední řez oshují jediný stv. Njdeme všechny možné řezy - posloupnosti stvů (je jich konečně mnoho). 2. Mezi řezy definujeme (nedeterministické) přechody podle čteného symolu. 3. Rekonstruujeme výpočet skládáním řezů (jko puzzle). Formální převod 2KA n NKA Nechť A=(Q,X,δ,q δ,f) je dvousměrný ě ýkonečný č utomt. t Definujme ekvivlentní nedeterministický konečný utomt B=(Q,X,δ,(q ),F ), kde: Q = všechny korektní přechodové posloupnosti posloupnosti stvů (q,,q k ) z Q tkové, že délk posloupnosti je lichá (k=2m+) žádný stv se neopkuje n liché ni n sudé pozici ( i j q 2i q 2j ) ( i j q 2i+ q 2j+ ) F = {(q) q F} přechodové posloupnosti délky oshující koncový stv δ (c,x) (, ) = { d d Q c d je lokálně konzistentní přechod pro x} x L(A)=L(B)? trjektorie 2KA A odpovídá řezům KA B c d

Příkld převodu 2KA n NKA Mějme následující í dvousměrný ě ýkonečný č utomt: t Možné řezy y jejich j konzistentní přechody: p p,+ q,+ q q+ q,+ r,- r p,+ r,- Ukázk výpočtu: pppqqq r pqqq r pq rr pq rr.. p p q q p q q q r p Výsledný nedeterministický KA: Množinové operce nd jzyky p pqq p,q,q q p p q r p q,r,p qpp q,p,p Sjednocení jzyků L L 2 = { w w L w L 2 } Příkld: jzyk oshuje slov zčínjící neo končící Průnik jzyků L L 2 = { w w L w L 2 } Příkld: jzyk oshuje slov se sudým počtem nul kždý symol je ezprostředně následován Rozdíl jzyků L - L 2 = { w w L w L 2 } Příkld: jzyk oshuje slov zčínjící neoshující Doplněk jzyk -L = { w w L } = X*-L Příkld: slov jzyk neoshují posloupnost tří symolů Pltí trdiční de Morgnov prvidl L L 2 = -(-L -L 2 ) L L 2 = -(-L -L 2 ) L L 2 X* L -L 2 = L -L 2 q

Uzvřenost n množinové operce Nechť L L 2 jsou jzyky rozpoznávné konečnými č utomty. t Potom L L 2, L L 2, L -L 2 -L jsou tké jzyky rozpoznávné konečnými utomty (tříd F je uzvřen n uvedené operce). Konstruktivní důkz: doplněk stčí prohodit koncové nekoncové stvy přijímjícího det. utomtu sjednocení, průnik rozdíl ide: prlelní ěh přijímjících utomtů A =(Q,X,δ δ,q,f ), A 2 =(Q 2,X,δ δ 2,q 2,F 2 ) uděláme spojený utomt A = (Q,X,δ,q,F) Q=Q Q Q 2, q=(q,q 2 ) δ((p,p 2 ),x) = (δ (p,x), δ 2 (p 2,x)) sjednocení F=(F Q 2 ) (Q F 2 ) průnik F = F F 2 rozdíl F = F (Q 2 - F 2 ) Množinové operce v příkldě Nvrhněte konečný č utomt t přijímjící í slov, která oshují 3k+2 symolů neoshují posloupnost. Přímá konstrukce komplikovná! L = {w w {,}* w = 3k+2} L 2 = {w u,v {,}* w = uv} L=L L - L 2 A, c A A Ac B B B Bc C C C Cc

K čemu to je? Můžeme operce s utomty t někde přímo využít? Npříkld v plánování, kde utomt popisuje, jk se mění hodnot nějké stvové proměnné. rloc move-2 lod2, unlod2 cpos move-2, move2- lod, unlod loc loc2 move2- move-2, r lod2 lod move2- loc loc2 move-2, move2- Plán se potom může hledt jko průnik utomtů. V kždém stvovém digrmu se provede stejná posloupnost p kcí. rloc cpos loc loc2 loc loc2 r move 2 move 2 lod2 lod2 move2 move2 unlod unlod Řetězcové operce nd jzyky Zřetězení íjzyků L. L 2 = { uv u L v L 2 } Mocniny jzyk Pozitivní iterce Oecná iterce zřejmě L* =L + {λ} L = {λ} L i+ = L i. L L + = L L 2 = i L i L* = L L = i L i Otočení jzyk L R = { u R u L } reverse, zrcdlový orz (x x 2 x n ) R = x n x 2 x Levý kvocient L podle L 2 L 2 \L = { v uv L u L 2 } Levá derivce L podle w w L = {w} \ L Prvý kvocient L podle L 2 L /L 2 = {u uv L uv L v L 2 } Prvá derivce L podle w R w L = L / {w}

Uzvřenost zřetězení L,L 2 FF L.L 2 FF L L 2 ide: nejprve počítá utomt A =(Q,X,δ,q,F ) potom A 2 =(Q 2,X,δ 2,q 2,F 2 ) relizce: pomocí nedeterministického konečného utomtu B =(Q,X,δ,S,F) nedeterminismus slouží při rozhodování kdy přepnout do A 2 Q = Q Q 2 (předpokládáme p různá jmén stvů,,jink přejmenuj) j) S = {q } pokud λ L (q F ) = {q, q 2 } pokud λ L (q F ), tj. rovnou přejdeme tké do A 2 F = F 2 končíme ž po přečtení slov z L 2 δ(q,x) = {δ (q,x)} pokud q Q δ (q,x) F (počítáme v A ) = {δ (q,x), q 2 } pokud q Q δ (q,x) F (přechod A do A 2 ) = {δ 2 (q,x)} pokud q Q 2 (počítáme v A 2 ) DCV: ověřit L(B) = L(A ). L(A 2 ) Uzvřenost iterce L FF L* FF u L u 2 L u 3 L ide: opkovný výpočet č utomtu t A=(Q,X,δ,q δ,f) relizce: nedeterministické rozhodnutí, zd pokrčovt neo restrt pozor! λ L* ikd když žλ L, řešíme pomocí speciálního stvu hledáme nedeterministický utomt B =(Q,X,δ,S,F ) Q = Q {s} přidáme nový stv pro příjem λ S = {q, s} nový stv F = F {s} končíme po přečtení slov z L neo v s (pro λ) δ (q,x) = {δ(q,x)} pokud q Q δ(q,x) F (počítáme uvnitř A) = {δ(q,x), q } pokud q Q δ(q,x) F (možný restrt) δ (s,x) = {} žádné přechody z nového stvu L F L + F stejná konstrukce, pouze ez použití stvu s

Uzvřenost reverse L FF L R FF L zřejmě ř ě (L R ) R = L, tedy stčí ukázt L F L R F ide: orátíme šipky ve stvovém digrmu relizce: nedeterministický i ti konečný č utomt t A=(Q,X,δ,q,F) B=(Q,X,δ,F,{q }) δ (q,x) = {p δ(p,x)=q } (δ(p,x)=q p δ (q,x) ) w = x x 2 x n q, q, q n je přijímjící výpočet pro w utomtu A tj. δ(q i,x i+ )=q i+ q n F q n, q n-, q je přijímjící výpočet pro w R utomtu B q i δ (q i+,x i+ ) Poznámk: někdy L neo L R má výrzně jednodušší přijímjící utomt Uzvřenost kvocientu L,L 2 FF L 2 \ L F F L 2 L ide: utomt t A udeme strtovt t t ve stvech, do kterých se lze dostt t slovem z L 2 relizce: nedeterministický utomt B téměř téměř totožný s A (rozdíl ve strtovních stvech) S = {q q Q u L 2 q=δ (q,u)} nové strtovní stvy lze nlézt lgoritmicky (A q =(Q,X,δ,q,{q}), pk q S L(A q ) L 2 ) v L 2 \ L u L 2 uv L u L 2 q Q δ (q,u)=q δ (q,v) F q S δ (q,v) F v L(B) L,L 2 F L / L 2 F odoně neo pomocí L / L 2 = (L 2 R \L R ) R

Příkldy řetězcových opercí L = { i, i } LL L.L = { i j, i, j },,,,, L + = { i i 2... i n, n>, i j },, L* = {λ} L +, Příkld kvocientu L = { i i 2 i 3, i j } L 2 = { i i 2, i j },, L 2 \L = { i i 2, i j } = L 2,

Sustituce jzyků nechť Xje konečná č eced pro kždé x X udiž σ(x) jzyk v nějké ecedě Y x dále položme: σ(λ) = {λ} σ(u.v) = σ(u). σ(v) zorzení σ: X* P(Y*), kde Y = x X Y x se nzývá sustituce σ(l) = w L σ(w) nevypouštějící sustituce, žádné σ(x) neoshuje λ Příkld: σ() = { i j, i,j }, σ() = {cd } σ() = { i j cd k l, ijkl i,j,k,l } homomorfismus h: h(x) = w x (speciální přípd p sustituce) nevypouštějící homomorfismus: w x λ Vět: L F, x X σ(x) F σ(l), h(l), h - (L) F h - (L) = {w h(w) L} Poznámky k uzávěrovým vlstnostem Zjednodušení d návrhu utomtů tů L. =.L {λ}.l = L.{λ} = = L (L*)* = L* (L L 2 )* = L *(L 2.L *)* = L 2 *(L.L 2 *)* (L =L.L 2 ) R R 2. L R w (L L 2 ) = w L w L 2 w (X* -L) = X* - w L h(l L 2 ) = h(l ) h(l 2 ) Důkz regulárnosti L = {w w {,}*, w = w } není regulární L { i j, i,j } = { i i, i }

Trochu motivce L = { w w=u w=uv w=u, u,v {,}* } L = L L 2 L 3, kde L = { w w=u, u {,}* }, L 2 = {w w=uv, w u,v {,}* } L 3 = { w w=u, u {,}* } Můžeme jít ještě dál! L = {}. {,}* L 2 = {,}*. {}. {,}* L 3 = {,}*. {} Pojďme ještě dál L 3 = ({} {})*. {}.{}.{} Nešlo y všechny regulární jzyky poskládt z nějkých ti triviálních iál hjzyků? Regulární jzyky Tříd regulárních jzyků RJ(X) nd konečnou č neprázdnou ecedou X je nejmenší tříd jzyků, která: oshuje prázdný jzyk pro kždé písmeno x X oshuje jzyk {x} A,B RJ(X) A B RJ(X) uzvřená n sjednocení A,B RJ(X) A.B RJ(X) uzvřená n zřetězení A RJ(X) A* RJ(X) uzvřená n iterci Vlstně lgerický popis jzyků! Speciálně: {λ} RJ(X) protože {λ} = * X RJ(X) {x i,,x ik } RJ(X) k X* RJ(X) protože X = x X {x} (pozor! je to konečné sjednocení)

Kleeneov vět Liovolný jzyk je regulární právě ě když je rozpozntelný konečným utomtem. Konečnými utomty lze rozpoznávt jen triviální jzyky (prázdný jednopísmenné) jzyky, které z nich lze složit opercemi sjednocení, zřetězení iterce. Důkz RJ F regulární jzyky jsou rozpozntelné konečnými č utomty triviální jzyky jsou rozpozntelné konečným utomtem operce sjednocení, zřetězení iterci dávjí opět jzyk rozpozntelný konečným utomtem Důkz Kleeneovy věty jzyky rozpozntelné konečnými utomty jsou regulární máme utomt A=(Q,X,δ,q,F), který přijímá 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 =R ij n ij (n je počet stvů utomtu) jsou jzyky R k ij regulární? R ij je regulární (žádné mezistvy, tj. mximálně jednopísmenná slov) R k+ ij = R k ij R k i,k+.(r k k+,k+)*. R k k+,j je regulární (sjednocení iterce regulárních jzyků) i k+ j

Alterntivní důkz Kleeneovy věty jzyky rozpozntelné konečnými č utomty t 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 2 = (Q,X,δ,S,{p}) A 3 = (Q,X,δ,{q},{p}) A 4 = (Q,X,δ,{q},F) Potom L(A) = L(A ) (L(A 2 ).).(L(A 3 ).)*L(A 4 ) Jzyky L(A ), L(A 2 ), L(A 3 ), L(A 4 ) jsou regulární (n hrn) Regulární výrzy 2 p 3 q 4 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

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 {,}* } [(***)**] ) = = {w w {,}*, w =3k } Použití regulárních výrzů Prktický ký 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: (*)* λ+ (+)* Jk to zjistíme?

Převod regulárního výrzu n konečný utomt Metod (inkrementální): převeď elementární jzyky (prázdný, jednopísmenné) spoj použitím regulárních opercí podle výrzu Metod 2 (přímá) ( ) +(c+d)*+ očísluj symoly ve výrzu (zlev do doprv) +( 2 c 3 +d 4 )*+ 5 zjisti všechny možné páry symolů, kterése 2 c 3,c 3 d 4,c 3 2, mohou vyskytovt z seou d 4 d 4, d 4 2 zjisti symoly, které mohou ýt první ve slově, 2, d 4, 5 zjisti symoly, které mohou ýt poslední ve slově, c 3, 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 Od utomtu k regulárnímu výrzu 2 3 4, s d 2 d 4 5 c c 3 d Pomocí Kleeneovy věty: R ij R k+ ij = R k ij R k i,k+.(r k k+,k+)*. R k k+,j Pozn.: uzel 4 můžeme ignorovt (nevedou přes něj žádné cesty do osttních uzlů) R 2 3 R 2 3 λ 2 λ 3 λ λ 2 λ 3 λ d R 2 2 3 R 3 2 3 λ λ ( 2 ) * ( 2 ) * 2 λ 2 ( 2 ) * ( 2 ) * 3 λ+ 2 3 ( 2 ) * ( 2 ) *

Od utomtu k regulárnímu výrzu (příkld 2) 2 3 Pomocí Kleeneovy věty: R ij R k+ ij = R k ij R k i,k+.(r k k+,k+)*. R k k+,j R 2 3 R 2 3 +λ * * 2 +λ 2 +λ 3 λ 3 + * λ R 2 2 3 R 3 2 3 * * + * +? (+)* (+)* 2 * * 2??? 3 + * + * + 3??? 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 A F spojení hrn α elimince smyček elimince vrcholů α α α+β β β α * β α * β n β n α β β αm β α ββ n α m α m β n β n

Od utomtu k regulárnímu výrzu v příkldě 2 3 4, λ T Stčí přidt pouze nový koncový stv. Eliminujeme smyčku 4. Eliminujeme uzel 4. 2 Eliminujeme uzel 2. 3 λ T Eliminujeme smyčku 3. ( 2 ) * 3 T Eliminujeme uzel 3. (2 )* T Automty s výstupem (motivce) ne jk zznment výpočet č utomtu? t Dosud jediná zpráv z utomtu - jsme v přijímjícím stvu. Můžeme z konečného utomtu získt více informcí? Můžeme ů zznment trsu výpočtu? ) indikce stvů (všech, nejen koncových) v kždé chvíli víme, kde se utomt nchází Příkld: různé (regulární) čítče 2) indikce přechodůř po přečtení kždého symolu víme, co utomt uděll Příkld: (regulární) překld slov Automt už není tk docel černá skříňk.

Mooreův stroj Mooreovým (sekvenčním) č strojem nzýváme šestici i A = (Q,X,Y,δ,μ,q ) resp. pětici A = (Q,X,Y,δ,μ), kde: Q - konečná neprázdná množin stvů (stvový prostor) X - konečná neprázdná množin symolů (vstupní eced) Y - konečná neprázdná množin symolů (výstupní eced) δ - zorzení Q X Q (přechodová funkce) μ - zorzení Q Y (znčkovcí funkce) q Q (počáteční stv) Poznámky: někdy nás nezjímá počáteční stv, le jen práce utomtu znčkovcí funkce umožňuje suplovt roli koncových stvů F Q nhrdíme znčkovcí funkcí μ : Q {,} tkto: μ(q) =, pokud q F =, pokud q F Příkld Mooreov stroje Nvrhněte utomt t počítjící í tenisové skóre. Vstupní eced: ID hráče, který uhrál od Výstupní eced/stvy: skóre (tj. Q=Y μ(q)=q) Stv/výstup A B Stv/výstup A B : 5: :5 shod A:4 4:A 5: 3: 5:5 A:4 A shod 5:5 3:5 5:3 4:A shod B :5 5:5 :3 A 5: :5 3: 4: 3:5 B 5: :5 3:5 4:5 3:3 3:3 4:3 3:4 5:3 3:3 5:4 :3 5:3 :4 4: A 4:5 4:5 A 4:3 4:3 A shod 3:4 shod B 5:4 3:4 B :4 5:4 B

Melyho stroj Melyho (sekvenčním) č strojem nzýváme šestici i A = (Q,X,Y,δ,λ,q ) resp. pětici A = (Q,X,Y,δ,λ), kde: Q - konečná neprázdná množin stvů (stvový prostor) X - konečná neprázdná množin symolů (vstupní eced) Y - konečná neprázdná množin symolů (výstupní eced) δ - zorzení Q X Q (přechodová funkce) λ - zorzení Q X Y (výstupní funkce) q Q (počáteční stv) Poznámk: výstup je určen stvem vstupním symolem tj. Melyho stroj je oecnějším prostředkem než stroj Mooreův znčkovcí funkci μ : Q Y lze nhrdit výstupní funkcí λ: Q X Y npříkld tkto: x X λ (q,x) = μ(q) neo tkto x X λ(q,x) = μ(δ(q,x)) Příkld Melyho stroje Nvrhněte utomt, t který dělí vstupní slovo v inárním tvru číslem 8 (celočíselně). Relizce: posun o tři ity doprv ( ) potřeujeme si pmtovt poslední trojici itů (vlstně dynmická tříitová pměť-uffer) Stv\symol / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Vdí nám, když nevíme, kde utomt strtuje? NE - po třech symolech zčne počítt správně /

Výstup sekvenčních strojů slovo ve vstupní ecedě slovo ve výstupní ecedě Mooreův stroj znčkovcí funkce μ: Q Y μ*: Q X* Y* μ*(q,λ) = λ (někdy μ*(q,λ) = μ(q) ) μ*(q,wx) = μ*(q,w). μ(δ*(q,wx)) c d (z) x y u v Příkld: μ*(:,aaba) = (:.) 5:. 3:. 3:5. 4:5 Melyho stroj výstupní funkce λ: Q X Y λ* : Q X* Y* λ*(q,λ) = λ λ*(q,wx) ) = λ*(q,w) ). λ(δ*(q,w),x) ) ) Příkld: μ*(,) = c d x y u v Převod Mooreov stroje n Melyho Nechť A = (Q,X,Y,δ,μ,q XYδ )j je Mooreův ů stroj. Umíme njít Melyho stroj B tk, že q,w μ*(q,w) = λ*(q,w)? ANO! položme B = (Q,X,Y,δ,λ,q ), kde λ(q,x) = μ(δ(q,x)) tj. λ vrcí znčku stvu, do kterého přejdeme /x /x Příkld: x stv výstup stv / / c / c/2 c c 2 c c/2 /

Převod Melyho stroje n Mooreův Nechť A = (Q,X,Y,δ,λ,q XYδ λ ), je Melyho stroj. Sestrojme Mooreův stroj B tk, že q,w λ*(q,w) = μ*(q,w). Prolém: do jednoho stvu mohou vést přechody s různým výstupem! /x q /y Řešení: stv rozdělíme n více stvů (podle počtu výstupních symolů). q/x q/y Teď už je to jednoduché! B = (Q Y,X,Y,δ,μ,(q,_)), kde δ ((q,y),x) = (δ(q,x), λ(q,x)) μ((q,y)) = y Příkld: stv výstup (,) (,) (,) stv (,) (,) (,) / / (,) (,) (,) / / (,) (,) (,) Konečné utomty - shrnutí Konečný č utomt t jednoznčný redukovný utomt nedeterminismus (2 n ), dvousměrný KA (n n ) Automty jzyky y regulární jzyky uzvřenost n množinové operce uzvřenost n řetězcové operce uzvřenost ř sustituce Chrkteristik regulárních jzyků Nerodov vět (kongruence) Kleeneov vět (elementární jzyky operce) Iterční lemm (iterce podslov, jen nutná podmínk)

Celulární utomty ne hr n život Buňk = konečný č utomt t vstup utomtu = stvy okolních uněk je definováno uniformní propojení utomtů tů utomty prcují synchronně Conwyov hr Life stv (živá uňk), stv (mrtvá uňk) přechody (dle počtu živých uněk v okolí): zrození: 3-4živé éuňky v okolí úmrtí: - živá uňk v okolí ( je mi smutno ) 4-8 živých uněk v okolí ( je mi těsno ) Život ( Life ).....................X......XX......XX.........X......XX......X.X......X......XXX......XX......X..X......XX..X......XXX......XX......XXX......X..X......XXXXX......X...X......XXX.X......X..XXXX......XXXX..X......X......X..X......X..X......X...X......XX.XXX......X...X......XX...XXX......X..X.X......XXXX......XXX......XX......XXX......X..X......XXXXX......X...X......XXX.X......X..XXXX......XXXX..X.........X......XX......X.X......X......XXX......XX......X..X......XX..X........................X......XX......XX...........................X......XX.....................X......XXX......XX......X..X...............X......XXX......XXX......X......XXXX......X...X.........X......XXX......XXX......X...X......XXXX......X..X......XXX......X..X......XXX......XXX......X...X......XXXXX......X......X......X......X......X..X......X...X......XXXXX......X...X......X...XX......XXXX......X..X......XX......X.XXX......XX...XX......X...X......XX......X...XX......XX..XX......X..X...X......XX......X...XXX.X......XX.XXX.X......X...XXX......X......XXX......X..X......XXX.X.X......X..XX..X......XXXXXX.XXX......X...X...X......XXX.X..X.XX......X...XX......X...X......XX......X...XX......XX..XX......X..X...X......XX......X...XXX.X......XX.XXX.X......X...XXX......X...X... X...XXXXX......X...X... X...X...XX... XX...XXXX......X..X... X...XX......X.XXX... XXX...XX...XX......XXX......XXX......X...X......XXXXX......X......X......X......X......X..X.........X......XXX......XXX......X...X......XXXX......X..X......XXX......X..X...............X......XXX......XXX......X......XXXX......X...X.....................X......XXX......XX......X..X...........................X......XX......XX......X..X...........................XXXX......X......X...............X......XX......X..X... X...XX.XX......X......X......X......XX......XXX......XXX......XXXX......X..X......XXX.X......X...X......X......XXX...X......X.XX...X......XX...XX......X...X..X.X......X..X...X......X...XX.XXX......XX.XXX......X...X......XX...XXX......X..X...X.X......XX.XX...XX......XXXXX..XXX......XX...X..X......XX.X.XX.XX......X.XX.XXX.XXX......XX...X.X......X..X.X..X......XXX...XXX......X...X...X......X...X......XXX...XX......X...XX...X.X......XXX.X.X...X......XX.XX.X...XXX......XX...X..X......X..X...X.X......XXXXX...XXX......X...X......XX......X..X......XX.XX.....X...X.....XXX..XXX......XXX...X......X..X...XX......XXXXXX...XX......X...X...X......XXX......X..X.....XXXXXX.....X...X....XXX...XXX......XX...X..X......X..X...X.X......XXXXX...XXX......X...X......XX......X..X......XX.XX.....X...X.....XXX..XXX......XX...X.X......X..X.X..X......XXX...XXX......X...X...X......X...X......XXX...XX......X...XX...X.X......XXX.X.X...X......XX.XX.X...XXX......XX.XXX......X...X......XX...XXX......X..X...X.X......XX.XX...XX......XXXXX..XXX......XX...X..X......XX.X.XX.XX......X.XX.XXX.XXX......XXX.X......X...X......X......XXX...X......X.XX...X......XX...XX......X...X..X.X......X..X...X......X...XX.XXX......XX.XX......X......X......X......XX......XXX......XXX......XXXX......X..X......XXXX......X......X...............X......XX......X..X......XX......X..X...................................................X..................X............XXX......X...X...............XXX......X..X......X.X......XXXXX......XXXXX......X...X.........X......XXXXX......XXXX......X...X......XXX.XX......X...X......XXXX.XX......X......XX.XXX..X......X...XXXXXX......XX...X...X......X...X..XX......XX...X..X......XX...XX.XX......X...X..X..X.....XX...X.XXX.XX.X.....XX...XX..XXX..XX......XXXXX..XX.X......XX...XXXXX......X...XX...X......XX...X...XX......XX...XXX...X.X.....X...X...X...X.....XX...XXX.XXX.XXX.....XX..X...XXX.....XX..XX..X...X...X......XX...XX.X...X......XXXXX.XXX.XXXX.....X...XX...X.....X...X..X...XXX.....XXXXX..XXX..X..X....X...X.X...X.XXXXX......XXX.XXXX...X......X...XXXX......X...X.....X...XX.X.....XXXX...XXXXXXX....X...XXX...X....X...XX...X...XX... XXX.XXX..XXX..X..X......X.X..X..XXX......XX.XXXXXX...X......X.XXX......XX....X...XX...X...X....XX..XX...X.XX... X...XXX.XX...X... XX..XX...XX...XX.....X.XXX...X...X......X.X.XX..XXX......XX.X...XX...X......X...X.X...X.XXX......XXX..XX...X...X...X...X... XXX...X.XXX... X..X.X.X...X.XX... XX.X...XX...XX.....XX.X..X..X.X..X....XX...X..XXX..XXX......XX.X...XX...X......X...XX.X..X.XXX......XXX.XX.XX.XX...X...X...XX...X...X....XX..XX...X.XX... X...XXX.XX...X... XX..XX...XX...XX.....X.XXX...X...X......X.X.XX..XXX......XX.X...XX...X......X...X.X...X.XXX......XXX..XX...X....X...XX.X.....XXXX...XXXXXXX....X...XXX...X....X...XX...X...XX... XXX.XXX..XXX..X..X......X.X..X..XXX......XX.XXXXXX...X......X.XXX......XX......XX...XX.X...X......XXXXX.XXX.XXXX.....X...XX...X.....X...X..X...XXX.....XXXXX..XXX..X..X....X...X.X...X.XXXXX......XXX.XXXX...X......X...XXXX......X...X......XXXXX..XX.X......XX...XXXXX......X...XX...X......XX...X...XX......XX...XXX...X.X.....X...X...X...X.....XX...XXX.XXX.XXX.....XX..X...XXX.....XX..XX..X...X...X......XX.XXX..X......X...XXXXXX......XX...X...X......X...X..XX......XX...X..X......XX...XX.XX......X...X..X..X.....XX...X.XXX.XX.X.....XX...XX..XXX..XX.........X......XXXXX......XXXX......X...X......XXX.XX......X...X......XXXX.XX......X...............XXX......X..X......X.X......XXXXX......XXXXX......X...X..................X............XXX......X...X..............................X............X.........X.........X......X......XXXX......X......XXX......X......XXX......X......XXX......X.X......XXXXX......XX..X......XX...XXXXX......X.X..X...X......X......XX......XX...XX......X..X...XX......XXXX..X......X..X......X.XX...X.....XX..XXX..XXXXXXX.....XX...X...X.....XX...XXXX...XX.....XX...X..X...X.X.....XX...XXXX.....XX...X..XX.X.XX.....XX...XX...XX.....XX...XXX.X..X.....XX...X.XX.XXXX.....XX..XXX..XXXXX.XX.....XX..X.X..X...XX.....XX...XX.X...XXX.....XX..X...X...X.....XX...X.XXXX.X.....XX...XXXX.XXXX.....XX...X...X...X.....XX...XXX...XX.XX.....XX...X...XXX.XX......XXX......X...X...XX......XXX.XX..XXX......XXXXX...X......X......XXX.X...XX......X..X.X.XX.X......X.X...XX..X......XXX.X.X..X......X..X......XXX...X......X...X.XXX......X..X.XXXX..X......XX...XXXXX......X...XX......X.XXX..XXX......X...X......XXX...X......X..XX.XXX..X......XXXX..X...X.....XXXX...X.X......X..X...XX..X.....X...X.XX..X......XX...X...X.....X.X...XXX.X.XX......X...X...XX......XXX...XXX..XXX......X..X...XX..X..XXX....XXXX..X...XXXX..X.....XXX...XX.X..XXX....X...XX.XX..X.....XX...X..XXXX....XXX...X..XXX.X.....X..X...XXX..X.XXX....XX.XX...X...X......XXX...XXX...X......X..XX.XXX..X......XXXX..X...X.....XXXX...X.X......X..X...XX..X.....X...X.XX..X......XX...X...X.....X.X...XXX.X.XX......X...X...XX......XXX...XXX..XXX......X..X......XXX...X......X...X.XXX......X..X.XXXX..X......XX...XXXXX......X...XX......X.XXX..XXX......X...X......XXX...X......XXX......X...X...XX......XXX.XX..XXX......XXXXX...X......X......XXX.X...XX......X..X.X.XX.X......X.X...XX..X......XXX.X.X..X.....XX..XXX..XXXXX.XX.....XX..X.X..X...XX.....XX...XX.X...XXX.....XX..X...X...X.....XX...X.XXXX.X.....XX...XXXX.XXXX.....XX...X...X...X.....XX...XXX...XX.XX.....XX...X...XXX.XX.....XX..XXX..XXXXXXX.....XX...X...X.....XX...XXXX...XX.....XX...X..X...X.X.....XX...XXXX.....XX...X..XX.X.XX.....XX...XX...XX.....XX...XXX.X..X.....XX...X.XX.XXXX......XX...XXXXX......X.X..X...X......X......XX......XX...XX......X..X...XX......XXXX..X......X..X......X.XX...X......X......XXX......X......XXX......X......XXX......X.X......XXXXX......XX..X............X.........X.........X......X......XXXX...

Jedn uňk nvíc..................................................................................................................................................................................................................x...............x......x......xxx......xxx.........x......xxx......x.x......xxx......x...x......xxxxx......xxx......xxx......xxx......x...x......xx.xx......x...x......xx...xx......x..x......x...x......x...x......x...x......xxx.xxx......x...x......xxx...xxx......xxx......xxx......xxx......x...x......xx.xx......x...x......xx...xx.........x......xxx......x.x......xxx......x...x......xxxxx...............x......x......xxx......xxx........................x................................................................................................................................................................................................................................................................................................................................................x......xxx...............x......xxx......xxx......x...x.........x......xxx......xxx......x...x......xxxxx.........xxx......xxx......x...x......xxxxx......x...x......xxxxx.........x...x......xxxxx......x...x......x......xxx......xxx......x...x......x...x......x...x......xxxxxxxxx......x...x......xx...xx......xx...x...xx......x..x.xxx.x..x......x...x...x......xx..x..xx......x..xxxxx..x......xx...xx......x..x...x..x......xxxx...xxxx......x...x...x...x......x..x.x..x......xxx.xxx.xxx......x..xx.xx..x......xxxx...xxxx......x..x...x..x......xxxxxx...xxxxxx......x...x...x...x......x...x...x......xx..x..xx......x..xxxxx..x......xx...xx......x..x...x..x......xxxx...xxxx......x...x...x...x......x...x... X...X...X... X...XXXXXXXXX......X...X... X...XX...XX......XX...X...XX... X...X..X.XXX.X..X... X XXX X X...X...X......XXXXX......X...X......X......XXX......XXX......X...X......XXX......XXX......X...X......XXXXX......X...X......XXXXX............X......XXX......XXX......X...X......XXXXX..................X......XXX......XXX......X...X.....................X......XXX..............................................................................................................................................................................................................................X.........X......X......XXX......X......XXX......X......XXX......X.X......XXX......X...X......XXX............X.X.........XXX......X...X.........XXXXX......X...X.........XXX......X.X... X...X......X.X... X...XX.XX......X..X..X... X X...XXXXXXX.........X......X.X......X.X......XX.XX......X...X............XXX......XXX......X.X......XX.XX.........X...X......XXXXX......X...X......X......XXX......X.X......XX..XX.XX..XX......X...XXXXX...X......XXXXXXX...............XXXX...X...XXXX......X...X..X..X...X......XXX.XXXXXXXXX.XXX......XX..XXXXXXX..XX......X.X.X...X.X.X......X.XX...XX.X......XXXXXX...XXXXXX......X.XXXX...XXXX.X......XX...X...X...XX......X..X..XX...XX..X..X......XXX..XXX.XXX..XXX......X..XX...XX..X......XX.X.XX...XX.X.XX......XX...X...X...XX......X...X...X...X......XXXX...X...X...XXXX......X..X..XX...XX..X..X......XX..XXXXXXX..XX......X.X.X...X.X.X......X.XX...XX.X......XXXXXX...XXXXXX......X.XXXX...XXXX.X......XX...X...X...XX......X..X..XX...XX..X..X......XXXXXXX...............XXXX...X...XXXX......X...X..X..X...X......XXX.XXXXXXXXX.XXX......XXXXX......X...X......X......XXX......X.X......XX..XX.XX..XX......X...XXXXX...X.........XXX......XXX......X.X......XX.XX.........X...X.........X......X.X......X.X......XX.XX......X...X.........XXX......X.X......X......X.X......XX.XX......X..X..X......XXXXXXX......XXX.........X.X......XXX......X...X......XXXXX......X...X......X......XXX......X......XXX......X.X......XXX......X...X............X.........X......X......XXX............................................................................................................X..................X......XXX......XXX............X......XXX......XXX......X...X......XXXXX......X......XXX......XXX......X...X......XXXXX......X...X......X...X......XXX......X...X......XXXXX......X...X......XXXXXXX......X...X......XX...XX......XXXXX......X...X......XX...XX......X.XXX.X......XX.XXX.XX......X...X......XXX...XXX......X..X..X......X...X......X...X......XX...XX......XXXXXXX......XX...XX......XXXXXXXXX......XXXXXXX......X...X...............XXXXX......XXXXXXX......XXXXXXX.....................X...XXX...X......XXXXX......X..X...X..X......X.........X...X......XXX...XXX......XXX...XXX......XXX...XXX......X..X..XXX..X..X......XX...X...XX......XXX...X.X...XXX......XXX...XXX......X..X...X..X......XXXXX...XXXXX......X.XXX...XXX.X......XX...XX......XX...XXX...XX......X..X...X...X...X..X......XX.X...X...X...X.XX.....X...X...X...X.....X...XX...XX...X......XX.XXX...X...XXX.XX......X...X..X..X...X......XX...XXXXX...XX.....X..X...X...X...X..X.....XXXXX...XXXXX....X...X...X...X...XX...XXX...XXX...XX.....XXXXXXX..X.X..XXXXXXX......X...X.XXX.X...X.....XXX...XXXX.XXXX...XXX.....X..X...X..X....XXXXXX...XXXXXX...X...X...X...X.. XXX...XXX...XXX...XXX....XX.XXX...X...XXX.XX......X...X..X..X...X......XX...XXXXX...XX.....X..X...X...X...X..X.....XXXXX...XXXXX....X...X...X...X...XX...XXX...XXX...XX.....X.XXX...XXX.X......XX...XX......XX...XXX...XX......X..X...X...X...X..X......XX.X...X...X...X.XX.....X...X...X...X.....X...XX...XX...X......XXX...XXX......X..X..XXX..X..X......XX...X...XX......XXX...X.X...XXX......XXX...XXX......X..X...X..X......XXXXX...XXXXX......XXXXX......X..X...X..X......X.........X...X......XXX...XXX......XXX...XXX......XXXXXXX........................X...XXX...X............XXXXXXX......X...X...............XXXXX......XXXXXXX......X..X..X......X...X......X...X......XX...XX......XXXXXXX......XX...XX......XXXXXXXXX......XXXXX......X...X......XX...XX......X.XXX.X......XX.XXX.XX......X...X......XXX...XXX......XXX......X...X......XXXXX......X...X......XXXXXXX......X...X......XX...XX......X......XXX......XXX......X...X......XXXXX......X...X......X...X............X......XXX......XXX......X...X......XXXXX..................X......XXX......XXX........................X......XXX......XXX......X...X..................X...X......XXXXX......X...X...............X......X...X......X.........XX...XX......X..X...X..X......XXX......XXX......XXXXXXXXX......X...X...X......XXX...XXX......XXXX.X.XXXX......X...XXX...X......X...X...X...X......XXXXX......X..X...X..X......XXX...XXX......X..X.XXX.X..X......XX.X.X.X.X.XX......X...XXX...X......X...X...X...X......X...XX...XX...X......X...XXX...X......XXX..XXX..XXX......X..X.XXX.X..X......XXXXX...XXXXX......X...X.XXX.X...X......X...XX...XX...X......X...X.X...X.X...X......X...X......XX...X...XX......X.X..XXX..X.X......XXXX..XX.XX..XXXX......X...XXXXXXXXX...X......X...XX...XX...X......X...X...X...X......X...X......X...X......XXX...XXX......XXX...X...XXX......X...XXX...X......X...XX...XX...X......XXX...XXX......XXX...X...X...XXX......XXX...XXX......X...X......XXXX...XXXX.....X...X......X.........X...X...X...X...X......XXXX...XXXX......X..X...X..X.....XX.X...X.XX......X...X......XX...XX......X.X...X.X...X.....X...X......X...X......XXX...XXX.....XXXX...XXXX......XX...XX...X.....XXX...XXX..XXX....X..X...X..XXXX...XXXX...X...X...XXXX...X...X.. XX...XX....X..X...X..X..X...X...X...X...XXXX...XX..X...X..XX......XXXXX...XXXXXXX.. X..X.X...X.X..X. XX...X...X...XX....XXX...XXX...X...X.X...X.X...XX...XXXXX...XXXXX.X....X.....XX... X..X.X...X...X...X.X..X. XXXX.XX...XX.XXXXX...XXX...XXX...X...X...X...X...X..XX...XXXXX...XXXXX.X....X...X...X...XX..XXX... X..X.X...X.X..X. XX...X...X...XX....XXX...XXX...X...X.X...X.X...XX...XXXXX...XXXXX.X....X.....XX....XXXX...X...X...XXXX...X...X.. XX...XX....X..X...X..X..X...X...X...X...XXXX...XX..X...X..XX......XXXXX...XXXXXXX.....X...X......X...X......XXX...XXX.....XXXX...XXXX......XX...XX...X.....XXX...XXX..XXX....X..X...X..XXXX.....X...X...X...X...X......XXXX...XXXX......X..X...X..X.....XX.X...X.XX......X...X......XX...XX......X.X...X.X...X.....XXX...X...X...XXX......XXX...XXX......X...X......XXXX...XXXX.....X...X......X.........X...X......X...X......XXX...XXX......XXX...X...XXX......X...XXX...X......X...XX...XX...X......XXX...XXX......X...X......XX...X...XX......X.X..XXX..X.X......XXXX..XX.XX..XXXX......X...XXXXXXXXX...X......X...XX...XX...X......X...X...X...X......X...XXX...X......XXX..XXX..XXX......X..X.XXX.X..X......XXXXX...XXXXX......X...X.XXX.X...X......X...XX...XX...X......X...X.X...X.X...X......X..X...X..X......XXX...XXX......X..X.XXX.X..X......XX.X.X.X.X.XX......X...XXX...X......X...X...X...X......X...XX...XX...X......XXXXXXXXX......X...X...X......XXX...XXX......XXXX.X.XXXX......X...XXX...X......X...X...X...X......XXXXX......X...X......X.........XX...XX......X..X...X..X......XXX......XXX......X...X......XXXXX......X...X...............X......XXX......XXX......X...X............... Úvod do formálních grmtik Grmtiky, všichni i je známe, le co to je? Popis jzyk pomocí prvidel, podle kterých se vytvářejí všechny řetězce dného jzyk. Původně pro popis přirozených jzyků <vět> <podmětná část> <přísudková část> Zdání syntxe vyšších progrmovcích o c c jzyků ů od do Algolu 6 Bckus-Nurov normální form (BNF) <číslo> :== <číslo ez zn.> +<číslo ez zn.> -<číslo ez zn.> <číslo ez zn.> :== <číslice> <číslice><číslo ez znm>. <číslice> :== 2 3 4 5 6 7 8 9