Vlastnosti regulárních jazyků



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

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 Σ

AUTOMATY A GRAMATIKY

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

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

Teoretická informatika - Úkol č.1

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

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

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

Naproti tomu gramatika je vlastně soupis pravidel, jak

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

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

Teoretická informatika TIN 2013/2014

Teoretická informatika

Relace. R, S vyjmenovaním prvků. Sestrojte grafy relací R, S. Určete relace

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

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

Vztah jazyků Chomskeho hierarchie a jazyků TS

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

PŘEDNÁŠKA 7 Kongruence svazů

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

Lineární algebra Kapitola 1 - Základní matematické pojmy

Matematická analýza 1

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

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

Každé formuli výrokového počtu přiřadíme hodnotu 0, půjde-li o formuli nepravdivou, a hodnotu 1, půjde-li. α neplatí. β je nutná podmínka pro α

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

Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace

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

Úvod do matematiky. Mgr. Radek Horenský, Ph.D. Důkazy

Základy teorie množin

Základy teorie množin

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

Matematický ústav Slezské univerzity v Opavě Učební texty k přednášce ALGEBRA I, zimní semestr 2000/2001 Michal Marvan. 2.

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

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

PŘEDNÁŠKA 2 POSLOUPNOSTI

15. Moduly. a platí (p + q)(x) = p(x) + q(x), 1(X) = id. Vzniká tak struktura P [x]-modulu na V.

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

1 Výroková logika 1. 2 Predikátová logika 3. 3 Důkazy matematických vět 4. 4 Doporučená literatura 7

Úvod do informatiky. Miroslav Kolařík

Kongruence na množině celých čísel

Fuzzy množiny, Fuzzy inference system. Libor Žák

Minimalizace KA - Úvod

Teorie množin. Čekají nás základní množinové operace kartézské součiny, relace zobrazení, operace. Teoretické základy informatiky.

Kapitola 1. Relace. podle definice podmnožinou každé množiny. 1 Neříkáme už ale, co to je objekt. V tom právě spočívá intuitivnost našeho přístupu.

4 Pojem grafu, ve zkratce

Definice 4.1 Nechť (X, ) je svaz s nejmenším prvkem 0 a největším prvkem 1. Komplement prvku x X je každý prvek y, pro který platí. x y = 1, x y = 0.

Matematické důkazy Struktura matematiky a typy důkazů

Teoretická informatika TIN

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

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

Naproti tomu gramatika je vlastně soupis pravidel, jak

Výroková a predikátová logika - VII

Matematická indukce, sumy a produkty, matematická logika

Matematická logika. Miroslav Kolařík

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

1 Lineární prostory a podprostory

Výroková a predikátová logika - XII

Úlohy k procvičování textu o svazech

Výroková a predikátová logika - IV

Projekty - Úvod do funkcionální analýzy

Kapitola 1. Úvod. 1.1 Značení. 1.2 Výroky - opakování. N... přirozená čísla (1, 2, 3,...). Q... racionální čísla ( p, kde p Z a q N) R...

1. Základy logiky a teorie množin

Lebesgueovsky neměřitelné množiny

Výroková a predikátová logika - VIII

Matematika IV - 7. přednáška Uspořádané množiny, svazy a Booleovy algebry

Aritmetika s didaktikou I.

Nechť je číselná posloupnost. Pro všechna položme. Posloupnost nazýváme posloupnost částečných součtů řady.

B i n á r n í r e l a c e. Patrik Kavecký, Radomír Hamřík

6 Lineární geometrie. 6.1 Lineární variety

Výroková a predikátová logika - VIII

Nechť M je množina. Zobrazení z M M do M se nazývá (binární) operace

Základy logiky a teorie množin

Důkaz Heineho Borelovy věty. Bez újmy na obecnosti vezmeme celý prostor A = M (proč? úloha 1). Implikace. Nechť je (M, d) kompaktní a nechť.

1 Řešení soustav lineárních rovnic

Vlastní číslo, vektor

Syntaxí řízený překlad

Oproti definici ekvivalence jsme tedy pouze zaměnili symetričnost za antisymetričnost.

Výroková logika. Teoretická informatika Tomáš Foltýnek

= je prostý orientovaný graf., formálně c ( u, v) 0. dva speciální uzly: zdrojový uzel s a cílový uzel t. Dále budeme bez

Booleovská algebra. Booleovské binární a unární funkce. Základní zákony.

Cvičení ke kursu Vyčíslitelnost

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

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

Bezkontextové gramatiky nad volnými grupami

UČEBNÍ TEXTY VYSOKÝCH ŠKOL. Prof. RNDr. Milan Češka, CSc. Gramatiky a jazyky

Matematická analýza pro informatiky I. Limita funkce

FI MU. Automaty a formální jazyky I. Mojmír Křetínský Antonín Kučera. Fakulta informatiky Masarykova univerzita. Učební text FI MU verze 1.

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.

Hypergrafové removal lemma a Szemérediho

10. Vektorové podprostory

Výroková a predikátová logika - V

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

Definice 5.1 Graf G = (V, E) je tvořen množinou vrcholů V a množinou hran, kde

Modely Herbrandovské interpretace

PŘEDNÁŠKA 5 Konjuktivně disjunktivní termy, konečné distributivní svazy

FREDHOLMOVA ALTERNATIVA

M M. Je-li ρ M 2 relace, pak vztah (x, y) ρ zapisujeme x ρ y.

Lineární algebra : Báze a dimenze

Transkript:

Vlastnosti regulárních jazyků Podobně jako u dalších tříd jazyků budeme nyní zkoumat následující vlastnosti regulárních jazyků: vlastnosti strukturální, vlastnosti uzávěrové a rozhodnutelné problémy pro regulární jazyky. Regulární jazyky 3 p.1/25

Strukturální vlastnosti regulárních jazyků Regulární jazyky 3 p.2/25

Konečné jazyky Věta 3.1 Každý konečný jazyk je regulární. Důkaz. Necht L = {w 1, w 2,...,w n }, w i Σ. Pak L = L(G), kde G = ({S},Σ, {S w 1, S w 2,...,S w n },S). G je zřejmě gramatika typu 3. Opak věty 3.1 zjevně neplatí: Příklad 3.1 Sestrojte gramatiku typu 3 generující jazyk {0,1}. Řešení: G = ({S}, {0,1}, {S ε, S 0S, S 1S}, S) Regulární jazyky 3 p.3/25

Pumping lemma Věta 3.2 Necht L je nekonečný regulární jazyk. Pak existuje celočíselná konstanta p > 0 taková, že platí: w L w p w = xyz y ε xy p xy i z L pro i 0. Poznámka: Neformálně řečeno Pumping lemma tvrdí, že v každé dostatečně dlouhé větě každého regulárního jazyka jsme schopni poblíž jejího začátku najít poměrně krátkou sekvenci, kterou je možné vypustit, resp. zopakovat libovolný počet krát, přičemž zůstáváme stále v rámci daného jazyka. Regulární jazyky 3 p.4/25

Věta 3.2 (z předchozí strany) Necht L je nekonečný regulární jazyk. Pak existuje celočíselná konstanta p > 0 taková, že platí: w L w p w = xyz y ε xy p xy i z L pro i 0. Důkaz. Necht L = L(M), M = (Q, Σ,δ, q 0, F) je konečný automat, kde Q = n > 0. Položme p = n. Je-li w L a w n, pak M přijme větu w průchodem alespoň n + 1 konfiguracemi a tudíž alespoň dvě z nich obsahují stejný stav, tedy: (q 0, w) = (q 0, xyz) (r, yz) k (r, z) (q F, ε), q F F pro nějaký stav r Q a k takové, že 0 < k n. Dále je zřejmé, že k zopakování stavu r dojde nejpozději po přečtení prvních n znaků vstupního řetězce a tudíž xy p. Pak ale existuje posloupnost konfigurací: (q 0, xy i z) (r, y i z) + (r, y i 1 z). + (r, z) (q F,ε) Důkaz pokračuje dále. Regulární jazyky 3 p.5/25

Věta 3.2 (z předchozí strany) Necht L je nekonečný regulární jazyk. Pak existuje celočíselná konstanta p > 0 taková, že platí: w L w p w = xyz y ε xy p xy i z L pro i 0. Pokračování důkazu. Z existence posloupnosti konfigurací: (q 0, xy i z) (r, y i z) + (r, y i 1 z). + (r, z) (q F,ε) plyne xy i z L(M), a to nejen pro i > 0, ale i pro případ i = 0: (q 0, xz) (r,z) (q F, ε), q F F Regulární jazyky 3 p.6/25

Věty 3.2 se často používá k důkazu, že daný jazyk není regulární. Příklad 3.2 Dokažte, že jazyk L = {0 n 1 n n 1} není regulární. Důkaz: Předpokládejme, že L je regulární. Pak podle věty 3.2 existuje p > 0 takové, že každá věta 0 k 1 k, kde 2k p, může být zapsána ve tvaru xyz = 0 k 1 k, y ε xy p, a platí xy i z L pro i 0. Při hledání podřetězce y mohou nastat 3 možnosti: 0 0 0.. {z } y. 0 1 1 {z } y 1 {z... } 1 y y {0} + pak ale xy i z / L nesouhlasí počet 0 a 1 y {1} + pak ale xy i z / L nesouhlasí počet 0 a 1 y {0} + {1} + pak ale xy i z / L (všechny 0 nepředcházejí všechny 1) Řetězec y tudíž nelze vybrat, a proto L / L 3. Regulární jazyky 3 p.7/25

Nyní ukážeme, že vhodná volba slova může důkaz výrazně zjednodušit. Alternativní důkaz příkladu 3.2: Předpokládejme, že L je regulární. Pak podle věty 3.2 existuje p > 0 takové, že věta 0 p 1 p může být zapsána ve tvaru xyz = 0 p 1 p, y ε xy p, a platí xy i z L pro i 0. Při hledání podřetězce y může díky podmínce xy p nastat pouze jedna možnost: 0 0 0.. {z } y. 0 1 1 1...1 y {0} + pak ale xy i z / L nesouhlasí počet 0 a 1 Řetězec y tudíž nelze vybrat, a proto L / L 3. Regulární jazyky 3 p.8/25

Příklad 3.3 Dokažte, že jazyk L = {a q q je prvočíslo } není regulární. Důkaz: Předpokládejme, že L je regulární. Pak podle věty 3.2 existuje p > 0 takové, že každá věta a q L, kde q p, může být zapsána ve tvaru a q = xyz, y ε, xy p, a platí xy i z L pro i 0. Zvolme r prvočíslo větší než p. a r L, a r = r a r p, což implikuje a r = xyz, y ε, xy p, a platí xy i z L pro i 0. Necht y = k a zvolme i = r + 1. Pak ale xy r+1 z = xyz + y r = r + r.k = r.(k + 1), což však není prvočíslo, a tedy xy r+1 z L. Spor. Regulární jazyky 3 p.9/25

Myhill-Nerodova věta Regulární jazyky 3 p.10/25

Motivace Myhill-Nerodova věta charakterizuje některé zásadní vztahy mezi konečnými automaty nad abecedou Σ a jistými ekvivalenčními relacemi nad řetězci ze Σ, popisuje některé z nutných a postačujících podmínek pro to, aby daný jazyk byl jazykem regulárním (používá se často k důkazu neregularity jazyka), poskytuje formální bázi pro elegantní důkaz existence unikátního (až na isomorfismus) minimálního DKA k danému regulárnímu jazyku. Regulární jazyky 3 p.11/25

Pravá kongruence a prefixová ekvivalence Zopakování: ekvivalence je binární relace, která je reflexivní, symetrická a tranzitivní. Index ekvivalence je počet tříd rozkladu Σ /. Je-li těchto tříd nekonečně mnoho, definujeme index jako. Definice 3.1 Necht Σ je abeceda a je ekvivalence na Σ. Ekvivalence je pravou kongruencí (je zprava invariantní), pokud pro každé u,v, w Σ platí u v = uw vw Věta 3.3 Ekvivalence na Σ je pravá kongruence právě tehdy, když pro každé u,v Σ, a Σ platí u v = ua va. Důkaz. je triviální, lze snadno ukázat indukcí nad délkou w. Definice 3.2 Necht L je libovolný (ne nutně regulární) jazyk nad abecedou Σ. Na množině Σ definujeme relaci L zvanou prefixová ekvivalence pro L takto: u L v def w Σ : uw L vw L Regulární jazyky 3 p.12/25

Myhill-Nerodova věta Věta 3.4 Necht L je jazyk nad Σ. Pak následující tvrzení jsou ekvivalentní: 1. L je jazyk přijímaný deterministickým konečným automatem. 2. L je sjednocením některých tříd rozkladu určeného pravou kongruencí na Σ s konečným indexem. 3. Relace L má konečný index. Důkaz. Dokážeme následující implikace: 1 2 2 3 3 1 Z definice ekvivalence (a b def a b b a) a ze základní tautologie výrokové logiky (a b b c) (a c) plyne tvrzení věty. Regulární jazyky 3 p.13/25

Důkaz implikace 1 2 Je-li L přijímán DKA, pak L je sjednocením některých tříd rozkladu určeného pravou kongruencí na Σ s konečným indexem. Pro DKA M = (Q, Σ,δ, q 0, F) zaved me zobecněnou přechodovou funkci ˆδ : Q Σ Q tak, že q 1, q 2 Q,w Σ : ˆδ(q 1, w) = q 2 (q 1, w) M (q 2, ε). Důkaz. Pro daný L přijímaný konečným automatem M zkonstruujeme s potřebnými vlastnostmi: Necht M = (Q, Σ, δ,q 0, F) a δ je totální. Zvolíme jako binární relaci na Σ takovou, že u v ˆδ(q 0, u) = ˆδ(q 0,v). Ukážeme, že má potřebné vlastnosti: je ekvivalence: je reflexivní, symetrická a tranzitivní. má konečný index: třídy rozkladu odpovídají stavům automatu. je pravá kongruence: Necht u v a a Σ. Pak ˆδ(q 0, ua) = δ(ˆδ(q 0, u),a) = δ(ˆδ(q 0,v), a) = ˆδ(q 0, va) a tedy ua va. L je sjednocením některých tříd Σ \ : těch, které odpovídají F. Regulární jazyky 3 p.14/25

Důkaz implikace 2 3 Existuje-li relace splňující podmínku 2, pak L má konečný index. Důkaz. Pro všechny u, v Σ takové, že u v, platí u L v: Necht u v. Ukážeme, že také u L v, tj. w Σ : uw L vw L. Víme, že uw vw a protože L je sjednocením některých tříd rozkladu Σ \, platí též uw L vw L. Víme tedy, že L (tj. L je největší pravá kongruence s danými vlastnostmi). Každá třída je obsažena v nějaké třídě L. Index L nemůže být větší než index. má konečný index a tedy i L má konečný index. Regulární jazyky 3 p.15/25

Důkaz implikace 3 1 Má-li L konečný index, pak L je přijímán nějakým konečným automatem. Důkaz. Zkonstruujeme M = (Q, Σ,δ, q 0, F) přijímající L: Q = Σ \ L (stavy jsou třídy rozkladu Σ relací L ), u Σ, a Σ : δ([u],a) = [ua], q 0 = [ε], F = {[x] x L}. Uvedená konstrukce je korektní, tj. L = L(M): Indukcí nad délkou slova v ukážeme, že v Σ : ˆδ([ε], v) = [v]. v L [v] F ˆδ([ε], v) F. Regulární jazyky 3 p.16/25

Důkaz neregularity pomocí M.-N. věty Příklad 3.4 Dokažte, že jazyk L = {a n b n n 0} není regulární. Důkaz. Žádné řetězce ε, a, a 2,a 3,... nejsou L -ekvivalentní, protože a i b i L, ale a i b j L pro i j. L má tedy nekonečně mnoho tříd (neboli nekonečný index). Dle Myhill-Nerodovy věty tudíž nemůže být L přijímán žádným konečným automatem. Regulární jazyky 3 p.17/25

M.-N. věta a minimalita DKA Věta 3.5 (2. varianta Myhill-Nerodovy věty) Počet stavů libovolného minimálního DKA přijímajícího L je roven indexu L. (Takový DKA existuje právě tehdy, když je index L konečný.) Důkaz. Každý DKA (můžeme uvažovat DKA bez nedosažitelných stavů) určuje jistou pravou kongruenci s konečným indexem a naopak. Je-li L regulární, je L největší pravou kongruencí s konečným indexem takovou, že L je sjednocením některých tříd příslušného rozkladu. Konečný automat, který odpovídá L (viz důkaz 3 1 Myhill-Nerodovy věty), je tedy minimální konečný automat přijímající L. Regulární jazyky 3 p.18/25

Uzávěrové vlastnosti regulárních jazyků Regulární jazyky 3 p.19/25

Uzávěrové vlastnosti regulárních jazyků Věta 3.6 Třída regulárních jazyků je uzavřena (mimo jiné) vzhledem k operacím: (sjednocení), (konkatenace) a (iterace). Důkaz. Plyne z definice regulárních množin a ekvivalence regulárních množin a regulárních jazyků. Věta 3.7 Třída regulárních jazyků tvoří množinovou Booleovu algebru. Důkaz. Označme L 3 třídu všech regulárních jazyků abecedou Σ. Ukážeme, že algebraická struktura < L 3,,,, Σ, > je Booleova algebra. Důkaz pokračuje dále. Regulární jazyky 3 p.20/25

Pokračování důkazu. 1. Protože Σ L 3 i L 3, jsou tyto jazyky zřejmě jedničkou, resp. nulou uvažované algebry. Dále je zřejmá uzavřenost vůči. 2. Dokážeme uzavřenost vzhledem ke komplementu nad abecedou, Σ. K jazyku L sestrojíme úplně definovaný KA M. takový, že L = L(M). Pak KA M M = (Q,, δ,q 0, F) M = (Q,,δ,q 0, Q \ F) zřejmě přijímá jazyk \ L (komplement L v ). Komplement vzhledem k Σ : což je podle věty 3.3 regulární jazyk. L = L(M ) Σ (Σ \ )Σ Důkaz pokračuje dále. Regulární jazyky 3 p.21/25

Pokračování důkazu. 3. Uzavřenost vzhledem k průniku plyne z de Morganových zákonů: L 1 L 2 = L 1 L 2 = L 1 L 2 a tedy L 1, L 2 L 3 L 1 L2 L 3. Věta 3.8 Necht L L 3 a necht L R = {w R w L}. Pak L R L 3. Důkaz. Necht M je KA takový, že L = L(M). Sestrojíme M tak, aby L(M ) = L R. Popis konstrukce na cvičení. Regulární jazyky 3 p.22/25

Rozhodnutelné problémy regulárních jazyků Regulární jazyky 3 p.23/25

Rozhodnutelné problémy v L 3 Základní problémy: problém neprázdnosti: L? problém náležitosti: w L? problém ekvivalence: L(G 1 ) = L(G 2 )? Věta 3.9 Ve třídě L 3 je rozhodnutelný problém neprázdnosti jazyka i problém náležitosti řetězce (do jazyka). Důkaz. K jazyku L L 3 sestrojíme DKA M, L = L(M): M = (Q, Σ,δ, q 0, F) neprázdnost: L(M) q Q : (q F q je dostupný z q 0 ) náležitost: w L (q 0, w) (q,ε) q F Regulární jazyky 3 p.24/25

Věta 3.10 Necht L 1 = L(G 1 ) a L 2 = L(G 2 ) jsou dva jazyky generované regulárními gramatikami G 1 a G 2. Pak je rozhodnutelný problém ekvivalence, tj. L(G 1 ) = L(G 2 ) nebo L(G 1 ) L(G 2 ). Důkaz. Necht M 1 = (Q 1, Σ 1, δ 1,q 1 0, F 1 ), resp. M 2 = (Q 2,Σ 2, δ 2, q 2 0,F 2 ) jsou KA přijímající jazyky L 1, resp. L 2 takové, že Q 1 Q 2 =. Vytvoříme konečný automat M takto: M = (Q 1 Q 2, Σ 1 Σ 2,δ 1 δ 2, q 1 0, F 1 F 2 ) a vypočítáme relaci nerozlišitelnosti stavů z Q 1 Q 2 pro automat M. Pak L(G 1 ) = L(G 2 ) q 1 0 q 2 0 Regulární jazyky 3 p.25/25