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

Rozměr: px
Začít zobrazení ze stránky:

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

Transkript

1 Osh Úvod 1 1 Teoretická informtik Vznik vývoj teoretické informtiky Mtemtik Jzykověd Biologie Možnosti použití teoretické informtiky Konečné utomty Konečný utomt Nedeterminismus Totální utomt Odstrnění nepotřených stvů utomtu Nedosžitelné stvy Ndytečné stvy Regulární jzyky Konečné jzyky Pumping Lemm pro regulární jzyky nekonečné jzyky Uzávěrové vlstnosti třídy regulárních jzyků Sjednocení Zřetězení Iterce I

2 OBSAH II Pozitivní iterce Zrcdlový orz Průnik Homomorfismus Regulární výrzy Možnosti využití regulárních výrzů Definice Vzth ke konečným utomtům Využití vzthu regulárních výrzů k reg. jzykům Důkzy uzávěrových vlstností regulárních jzyků Normovný utomt Minimlizce konečného utomtu Formální grmtiky Generování slov jzyk Regulární grmtiky Chomského hierrchie grmtik Grmtiky v Chomského hierrchii Související typy grmtik Operce nd slovy jzyky Bezkontextové jzyky Bezkontextové grmtiky Vlstnosti ezkontextových grmtik Bezkontextová grmtik nezkrcující Redukovná grmtik Grmtik ez jednoduchých prvidel Dlší typy ezkontextových grmtik Normální formy pro ezkontextové grmtiky Chomského normální form Greichov normální form

3 Kpitol 1 Teoretická informtik Tto kpitol je především motivční dovíme se zde, jký má teoretická informtik význm, jk vznikl tké jké jsou možnosti jejího prktického použití. 1.1 Vznik vývoj teoretické informtiky Vznik teoretické informtiky tři kořeny: 1. mtemtik, 2. jzykověd, 3. iologie Mtemtik Počátek 20. století: rozvoj logiky. Roku 1936 zjištění: Nelze cokoliv jednoznčně určit vypočítt. Otázk: Co lze vypočítt? = Turingův stroj dlší výpočetní modely Aln Turing ( ) Vytvořil Turingův stroj jko mtemtický model N tomto stroji lze vypočítt právě to, co je vypočittelné. 2

4 KAPITOLA 1 TEORETICKÁ INFORMATIKA 3 $ X A $ (jednostrnně) nekonečná pásk čtecí zápisová hlv, pohy oěm směry Konečná řídicí jednotk stv (proměnná, vnitřní pmět ) Orázek 1.1: Turingův stroj Vlstnosti Turingov stroje: řídicí jednotk se vždy nchází v některém z předem určených stvů, čtecí zápisová hlv je vždy n některém políčku pásky, v kždém kroku se stroj řídí podle stvu jednotky podle oshu políčk, n které ukzuje hlv, podle těchto dvou údjů se rozhodne o kci, která spočívá ve změně stvu jednotky (npříkld ze stvu nčítání do stvu nčteno neo ze stvu prcuji do stvu vypínám ), přepsání oshu políčk n pásce něčím jiným (neo může políčko zůstt eze změny), posun n pásce vprvo, vlevo, neo může hlv zůstt n stejném políčku. Výsledkem činnosti stroje ovykle ývá osh pásky, důležitou informcí může ýt stv, ve kterém stroj skončil výpočet (je množin koncových stvů). Dlší modely: Turingův stroj yl moc složitý pro některé jednodušší výpočty, proto vznikly jednodušší modely konečný utomt zásoníkový utomt. Vlstnosti konečného utomtu: řídicí jednotk se vždy nchází v některém z předem určených stvů, čtecí hlv je vždy n některém políčku pásky,

5 KAPITOLA 1 TEORETICKÁ INFORMATIKA f w jednostrnně nekonečná pásk čtecí hlv, pohy doprv Konečná řídicí jednotk stv (proměnná, vnitřní pmět ) Orázek 1.2: Konečný utomt v kždém kroku se stroj řídí podle stvu jednotky podle oshu políčk, n které ukzuje hlv, podle těchto dvou údjů se rozhodne o kci, která spočívá ve změně stvu jednotky (npříkld ze stvu nčítání do stvu nčteno neo ze stvu prcuji do stvu vypínám ), posunem n pásce o políčko vprvo. Nrozdíl od Turingov stroje se čtecí hlv posouvá v kždém kroku o políčko doprv nemá možnost zpisovt. Výsledkem činnosti utomtu je pouze informce o tom, ve kterém stvu stroj skončil, zd přečetl celý osh pásky (když nepřečetl zsekl se pro dný osh pole n pásce momentální stv tře není definován žádná kce) f w jednostrnně nekonečná pásk čtecí hlv, pohy doprv Konečná řídicí jednotk stv (proměnná, vnitřní pmět ) 5 Z zásoník Orázek 1.3: Zásoníkový utomt

6 KAPITOLA 1 TEORETICKÁ INFORMATIKA 5 Vlstnosti zásoníkového utomtu: řídicí jednotk se vždy nchází v některém z předem určených stvů, čtecí hlv je vždy n některém políčku pásky, utomt má k dispozici zásoník, kde přidává shor tké shor vyírá, v kždém kroku utomt vyjme jeden prvek ze zásoníku, řídí se podle tohoto vyjmutého symolu, stvu jednotky tké se může (nemusí) řídit podle oshu políčk, n které ukzuje hlv, podle těchto tří (neo dvou) údjů se rozhodne o kci, která spočívá ve změně stvu jednotky (npříkld ze stvu nčítání do stvu nčteno neo ze stvu prcuji do stvu vypínám ), posunem n pásce o políčko vprvo, pokud v tomto kroku četl symol ze vstupní pásky (tj. když čte ze vstupu, zároveň se posune dál), může uložit do zásoníku jkýkoliv počet prvků (i žádný), to postupně po jednom, ten, který vložil jko poslední, ude hned v dlším kroku vyjmut. Nrozdíl od konečného utomtu čtecí hlv nemusí prcovt v kždém kroku (ud čte zároveň se posune, neo neprcuje vůec), nemá možnost zpisovt pohyuje se jen směrem doprv. Výsledkem činnosti je informce o stvu, ve kterém stroj skončil, zd přečetl celý osh pásky, přípdně může ýt důležité, zd do konce výpočtu stčil vyprázdnit celý zásoník Jzykověd Formální grmtik řeší, jk se slov utvářejí (u mtemtických kořenů yl řešen prolém rozpoznávání již utvořených slov či sekvencí signálů). Nom Chomskij Zkouml syntxi jzyk schopnost lidí mluvit. Všechny jzyky jsou utvořeny přiližně stejným způsoem, mjí stejný zákld. Definice 1.1 (Formální grmtik) Formální grmtik je souor oecných prvidel, generujeme větu n zákldě její struktury (syntxe).

7 KAPITOLA 1 TEORETICKÁ INFORMATIKA 6 Příkld 1.1 S [egin]a[end] A P; A P;A P [vypis]t T [pismenko] T [pismenko]t S [egin]a[end] [egin]p;[end] [egin]p;p;[end] [egin][vypis]t;p;[end] [egin][vypis][pismenko]t;p;[end]... [egin][vypis][pismenko][pismenko][pismenko]; [vypis][pismenko][pismenko][pismenko][pismenko];[end] Zákldní princip: Vět se skládá ze slov, při skládání částí potřeujeme tké pomocná slov ( oecné termíny ), z která můžeme dosdit posloupnost skládjící se ze slov pomocných slov rekurze. Pomocná slov = neterminální symoly, skutečná slov = terminální symoly Typy formálních grmtik: Grmtik odpovídjící Turingovu stroji: prvidl α β Bezkontextová grmtik: prvidl A β td Biologie Aristid Lindenmyer. Lindenmyerovy systémy (L-Systémy) zjistil, že když uprví formální grmtiku pozmění její chování, dokáže npříkld simulovt růst vývoj rostliny neo dělení uněk. Prvidlo: Výpočet:

8 KAPITOLA 1 TEORETICKÁ INFORMATIKA 7 Jeho žáci pk přišli n možnost grfické interpretce L-Systémů různé typy frktálů. U frktálů generovných L-Systémy jde o to, jk poměrně složitý nákres vygenerovt co nejjednodušším řetězcem oyčejných symolů, které mjí význm určité instrukce (vykresli čáru, popojdi ez vykreslení, otoč se doprv, dolev, ulož písmeno do zásoníku, vyjmi písmeno ze zásoníku, pod.). Upltňuje se rekurze, tedy totéž prvidlo (neo ttáž prvidl) se používá pořád dokol tk dlouho, dokud nevznikne dosttečně dlouhá složitá posloupnost instrukcí. () () (c) (d) Orázek 1.4: Několik frktálů vygenerovných pomocí L-Systémů

9 KAPITOLA 1 TEORETICKÁ INFORMATIKA 8 Npříkld orázek 1.4c n strně 7 vznikl z řetězce F+F+F+F+F+F tk, že jsme rekurzívně všechny symoly F (i ty nově přidávné) zprcovli prvidlem F F[+F+F]F. 1.2 Možnosti použití teoretické informtiky stvové progrmování, překldče modelování mtemtických výpočtů nlýz přirozeného jzyk (kontrol prvopisu, překldy, td.) L-Systémy: iologie, frktály (mlířství, filmy, pod.), fyzik (teorie chosu, modelování turulence, studium tornád, td.) porovnávání složitosti různých lgoritmů děljících totéž DNA-výpočty fyzik kvntové počítče...

10 Kpitol 2 Konečné utomty Nejdřív se udeme zývt nejjednodušším typem modelů, které yly zmíněny v kpitole o mtemtických kořenech teoretické informtiky, konečnými utomty, tké se podíváme n zákldy práce s jednoduchými grmtikmi, se kterými jsme se už trochu seznámili v kpitole Konečný utomt Konečný utomt je vždy v některém (vnitřním) stvu, který si můžeme předstvit jko proměnnou nývjící předem stnovených hodnot. Prcuje jednoduše tk, že n zákldě informce o svém momentálním stvu dále podle signálu, který dostl (symolu n vstupu) se přesune do některého jiného stvu zároveň se posune n vstupu, tedy očekává dlší signál (je připrven nčíst dlší symol z pásky). N orázcích 2.1, vidíme několik jednoduchých digrmů (orientovných grfů) konečných utomtů. Digrm přehledně (u jednodušších utomtů) zorzuje přechody mezi stvy (šipky) signály (symoly), které jsou při tomto přechodu nčítány zprcovávány (ohodnocení šipek). vypni V zpni Z Popis: V vypnuto Z zpnuto Orázek 2.1: Elektrický spotřeič jko konečný utomt 9

11 KAPITOLA 2 KONEČNÉ AUTOMATY 10 z v V v t Č t OČ OZ v t t Z v Popis: V vypnuto Č, Z červená, zelená OČ.... ornžová od červené OZ..... ornžová od zelené Orázek 2.2: Semfor jko konečný utomt km km Zorzen cen vhodit mince Připrven zrušit Tisk vzít lístek Orázek 2.3: Automt n jízdenky Definice 2.1 (Konečný utomt) Konečný utomt je uspořádná pětice A=(Q,Σ,δ,q 0,F), kde je Q... neprázdná konečná množin stvů Σ... neprázdná konečná eced (množin signálů) δ... přechodová funkce, definovná níže q 0... počáteční stv, q 0 Q F... množin koncových stvů, F Q, F Definice 2.2 (Přechodová funkce) Přechodová funkce δ konečného utomtu (dále KA) A=(Q,Σ,δ,q 0,F) je zorzení δ: Q Σ Q δ(stv, signál) = stv Npříkld: δ(vypnuto, zpni) = zpnuto

12 KAPITOLA 2 KONEČNÉ AUTOMATY 11 Potřeujeme vědět: ve kterém jsme stvu, co ještě zývá přečíst (zprcovt). Tyto informce jsou uloženy v konfigurci utomtu, která se postupně mění. Definice 2.3 (Konfigurce konečného utomtu) OznčmeΣ množinu všech slov, která lze utvořit ze symolů ecedy Σ. Konfigurce KA je uspořádná dvojice(q, w), kde q Q, w Σ (nepřečtená část vstupní pásky). Počáteční konfigurce:(q 0,w 0 ) (jsme v počátečním stvu w 0 je celé zprcovávné slovo) Koncová konfigurce:(q f,ε), q f F (ε je prázdné slovo, tj. řetězec s délkou 0, neoli celé slovo již ylo zprcováno) Definice 2.4 (Přechod mezi konfigurcemi) Relce přechodu mezi konfigurcemi je definován jko :(Q,Σ ) (Q,Σ ), kde pltí: (q i,w) (q j,w) δ(q i,)=q j (relce přechodu mezi konfigurcemi je tedy závislá n funkci přechodu δ). Definice 2.5 (Výpočet slov v konečném utomtu) Výpočet slov v konečném utomtu je posloupnost konfigurcí spojených relcí přechodu, zčínjící počáteční konfigurcí s dným slovem končící některou koncovou konfigurcí. Příkld 2.1 Výpočet slov v konečném utomtu semforu n orázku 2.2 n strně 10 může ýt npříkld tkový: (V,zttttttv) (Č,ttttttv) (itshpe OČ,tttttv) (Z,ttttv) (OZ,tttv) (Č,ttv) (OČ,tv) (Z,v) (V,ε) Jiný konečný utomt: (q 0,cd) (q 3,cd) (q 1,cd) (q 3,d) (q 3,ε) kde všechny přechody mezi konfigurcemi jsou určeny funkcí δ: δ(q 0,)=q 3, td., q 3 ptří do množiny koncových stvů.

13 KAPITOLA 2 KONEČNÉ AUTOMATY 12 Definice 2.6 (Rozpoznání (přijímání) slov konečným utomtem) Konečný utomt A=(Q,Σ,δ,q 0,F) rozpoznává (přijímá) slovo w, pokud existuje posloupnost výpočtu tohoto slov v utomtu, tedy pokud se lze z počáteční konfigurce(q 0,w 0 ) postupným upltňováním relcí přechodu dostt do některé koncové konfigurce. Definice 2.7 (Jzyk) Jzyk L je množin slov nd dnou ecedou Σ (některá podmnožin množiny všech slov utvořených z písmen ecedyσ), tedy L Σ. Jzyk může oshovt tké prázdné slovo ε. Definice 2.8 (Jzyk konečného utomtu) Jzyk konečného utomtu A je množin všech slov, která utomt přijímá, znčíme L(A). Definice 2.9 (Rozpoznání jzyk utomtem) Automt A rozpoznává jzyk L j, pokud přijímá právě slov jzyk L j (tj. přijímá všechn slov jzyk, le nepřijímá žádné slovo do jzyk neptřící). Znčíme L j = L(A) (jzyk L j je rozpoznáván utomtem A, je jeho jzykem). Příkld 2.2 A=({q 0,q 1 }, {,}, δ, q 0, {q 1 }) Digrm: δ funkce: q 0 q 1 δ(q 0,)=q 0 δ(q 0,)=q 1 δ(q 1,)=q 0 Jeden z možných výpočtů v utomtu: (q 0,) (q 0,) (q 0,) (q 1,ε) Tulk: stv\vstup q 0 q 0 q 1 q 1 - q 0 Jzyk utomtu: L(A)={ } {( ) i i 0} = {( ) } = { ( ) } 2.2 Nedeterminismus V zákldní definici konečného utomtu existuje pro kždé slovo přijímné utomtem právě jedn cest v digrmu utomtu, tedy výpočet je vždy jednoznčný.

14 KAPITOLA 2 KONEČNÉ AUTOMATY 13 Výhodou tohoto postupu je, že tkto vytvořený konečný utomt se sndněji progrmuje, protože v klsickém progrmování je jednoznčnost nutnou podmínkou. Někdy je všk jednodušší vytvořit utomt, který tuto vlstnost nemá, tedy pro některá přijímná slov může existovt více různých cest v digrmu. Zde si tkový utomt definujeme ukážeme si tké způso převedení n původní formu. Definice 2.10 (Nedeterministický konečný utomt) Nedeterministický konečný utomt (NKA) je tkový konečný utomt A=(Q,Σ,δ,q 0,F), kde δ: Q Σ P(Q). Poznámk: P(Q) je potenční množin množiny Q, je to množin všech jejích podmnožin (včetně prázdné množiny tké smotné množiny Q). V některých stvech n určitý signál může existovt více než jedn možnost jk regovt, dokonce pro některá slov může v grfu utomtu existovt více různých cest od počátečního stvu do některého koncového. V deterministickém utomtu (DKA) pro jedno slovo existuje právě jedn cest v grfu (je utomtem rozpoznáváno) neo žádná cest. Definice 2.11 (Jzyk rozpoznávný NKA) Jzyk rozpoznávný NKA je L(A)={w Σ (q 0,w) (q f,ε),q f F }. Poznámk: Jzyk rozpoznávný nedeterministiským konečným utomtem je tedy množin všech slov nd ecedou Σ, pro která existuje lespoň jeden výpočet (cest v grfu utomtu) od počátečního do některého (kteréhokoliv) koncového stvu. Vět 2.1 Necht A je nedeterministický KA. Potom existuje deterministický KA A tkový, že L(A)=L(A ) (tj. rozpoznávjí stejný jzyk). Důkz: A=(Q,Σ,δ,q 0,F) nedeterministický (ten máme) A =(Q,Σ,δ,q 0,F ) deterministický (ten chceme vytvořit) Stvy nového utomtu udou odpovídt množinám stvů původního. Pro kždou rovnost δ(q i,)={q j,q k } stvy (množiny) {q i }, {q j,q k } udou ptřit ke stvům nového utomtu. Postup: Q = {M M Q}=P(Q) nová množin stvů ude množinou všech podmnožin původní množiny stvů,

15 KAPITOLA 2 KONEČNÉ AUTOMATY 14 q 0= {q 0 } počáteční stv je jednoprvková množin oshující původní počáteční stv, M F M F koncové stvy jsou všechny, které (coy množiny) oshují lespoň jeden původní koncový stv, δ (M,)={q q δ(p,),p M} všechny prvky množiny zprcujeme podle původního utomtu, pk shrneme výsledky do množiny. Pokud prcujeme s reprezentcí δ-funkce ve tvru tulky, můžeme jednoduše postupovt tk, že v tulce původního utomtu uzávorkujeme ohodnocení řádků uňky do množinových závorek pk pro kždou množinu z uněk, kterou není ohodnocen žádný řádek, přidáme řádek tulky doplníme osh uněk n dném řádku. Jk určit osh nové uňky: pokud je řádek ohodnocen množinou {q i,q j,...}, pk do uňky sepíšeme osh uněk n řádcích {q i }, {q j },... v dném sloupci, tedy vlstně sjednocujeme řádky jednotlivých prvků množiny. Příkld 2.3 L={,} = {{,} n n 0} A={q 0,q 1,q 2 }, {,},δ,q 0, {q 2 }) A =(Q,Σ,δ,q 0,F ) Nedeterministický: A q 0 q 0 q 0,q 1 q 1 - q 2 q Deterministický: A {q 0 } {q 0 } {q 0,q 1 } {q 1 } {q 2 } {q 2 } {q 0,q 1 } {q 0 } {q 0,q 1,q 2 } {q 0,q 1,q 2 } {q 0 } {q 0,q 1,q 2 } Odstrníme nepotřené stvy: A {q 0 } {q 0 } {q 0,q 1 } {q 0,q 1 } {q 0 } {q 0,q 1,q 2 } {q 0,q 1,q 2 } {q 0 } {q 0,q 1,q 2 }

16 KAPITOLA 2 KONEČNÉ AUTOMATY Totální utomt Ovykle není nutné, y utomt dokázl v kždém stvu regovt n jkýkoliv signál, le z určitých okolností se tto vlstnost může hodit. Můžeme si předstvit tře situci, kdy progrmátor chce npst progrm dosttečně roustní, který y dokázl regovt n jkýkoliv vstup, v přípdě chyného vstupu tře chyovým hlášením (tedy přechodem do chyového stvu s ptřičným ošetřením). Definice 2.12 (Totální utomt) Totální (úplný) konečný utomt je deterministický konečný utomt, ve kterém lze ve všech stvech regovt n kterýkoliv symol ecedy, tj. přechodová funkce δ je totální: q Q, Σ p Q:δ(q,)=p (ke kždému stvu symolu ecedy existuje stv, do kterého přejdeme z dného stvu n dný symol). Vět 2.2 Ke kdému (deterministickému) konečnému utomtu A existuje totální utomt A tkový, že L(A)=L(A ). Náznk důkzu konstrukce: převedeme utomt n deterministický, vytvoříme nový stv, který ude fungovt jko odpdkový koš, do tohoto stvu nsměrujeme chyějící přechody, přidáme smyčku (přechod zčínjící končící ve stejném stvu) u stvu pro kždý symol ecedy. Příkld A A A B A B Deterministický: 0 B C - C - C C 1 A 0 1 A A B Zúplnění: B C C C 0,1 0 1 A B C 1

17 KAPITOLA 2 KONEČNÉ AUTOMATY Odstrnění nepotřených stvů utomtu Definice 2.13 (Nedosžitelný stv) Nedosžitelný stv je stv q i tkový, že neexistuje posloupnost přechodů (q 0,w) (q i,w ) tedy nelze se do tohoto stvu dostt z počátečního stvu. Definice 2.14 (Ndytečný stv) Ndytečný stv je stv q i tkový, že neexistuje žádná posloupnost přechodů (q i,w ) (q f,ε) kde q f F (koncový stv), tedy z tohoto stvu se nelze dostt do žádného koncového stvu Nedosžitelné stvy Vytvoříme množinu stvů, ke kterým se dá dostt z počátečního stvu postupujeme od strtovcího symolu. Příkld 2.5 Původní utomt: q 0 q 1 - q 1 q 2 q 1 q q 3 q 4 q 1 q 4 q 1 - q 0 q 3 q 1 q 4 q 2 S 0 = {q 0 }, hledáme prvky S i 1 n oznčeních řádků, přidáme osh uněk řádku S 1 = {q 0,q 1 } (z q 0 se dá dostt do q 1 ) S 2 = {q 0,q 1,q 2 } (z q 0 q 1 se dá dostt tky do q 2 ) S 3 = {q 0,q 1,q 2 } = S 2... nová množin stvů Po úprvě: q 0 q 1 - q 1 q 2 q 1 q q 0 q 1 q 2

18 KAPITOLA 2 KONEČNÉ AUTOMATY 17 Postup: vytvoříme množinu S 0, do ní dáme počáteční stv utomtu, S 0 = {q 0 }, vytvoříme množinu S 1 tk, že do ní dáme prvky množiny S 0 dále všechny stvy, do kterých vede přechod ze stvů množiny S 0 (tj. zde přidáme všechny stvy, do kterých se dá dostt přímo z q 0 ), postupně vytváříme množinys i tk, že dos i zřdíme nejdřív osh množiny S i 1 pk přidáme všechny stvy, do kterých vede přechod z některého stvu z množiny S i 1, končíme, když už se do množiny nic nedá přidt, tedy S i = S i 1, výsledkem je nová množin stvů. Vzorec: S 0 = {q 0 } S i = S i 1 {q δ(p,) q,p S i 1, Σ} Ndytečné stvy Příkld 2.6 Předpokládáme zde, že nedosžitelné stvy jsou již odstrněny. q 0 q 1 q 3 q 0 q 1 q 2 q 1 q 4 q 2,q 5 Původní utomt: q 2 q 2 - q 3 q 4 - q 3 q 4 q 5 q 4 q 5 q 4 q 5 q 5 - E 0 = {q 1,q 2 }, hledáme prvky E i 1 v uňkách řádků, přidáme oznčení řádků E 1 = {q 1,q 2,q 0 } (z q 0 se dá dostt do q 1 ) E 2 = {q 1,q 2,q 0 } = E 1... nová množin stvů Po úprvě: q 0 q 1 q 3 q 1 q 2 q 2 q 2 - q 0 q 1 q 2

19 KAPITOLA 2 KONEČNÉ AUTOMATY 18 Postup: odstrníme nedosžitelné stvy, vytvoříme množinu E 0, do které zřdíme všechny koncové stvy utomtu, tj. E 0 = F, vytvoříme množinu E 1 tk, že do ní dáme prvky množiny E 0 dále všechny stvy, ze kterých vede přechod do stvů množiny E 0, postupně vytváříme množiny E i tk, že do E i zřdíme nejdřív osh množiny E i 1 pk přidáme všechny stvy, ze kterých vede přechod do některého stvu z množiny E i 1, končíme, když už se do množiny nic nedá přidt, tedy E i = E i 1, výsledkem je nová množin stvů. Vzorec: E 0 = F E i = E i 1 {q δ(q,) p,p E i 1, Σ}

20 Kpitol 3 Regulární jzyky Definice 3.1 (Regulární jzyk) Regulárními jzyky oznčujeme všechny jzyky, které jsou rozpoznávné konečnými utomty. Jzyk je tedy regulární, pokud lze sestrojit konečný utomt, který tento jzyk rozpoznává. Ve všech dosud uvedených příkldech yly použity jzyky nekonečné, le k regulárním jzykům ptří tké konečné jzyky. Dále se stručně podíváme n možnosti konečných jzyků potom n nekonečné jzyky jednu z možností, jk zjistit, zd nekonečný jzyk je či není regulární. 3.1 Konečné jzyky Definice 3.2 (Konečný jzyk) Konečný jzyk je jzyk, který oshuje konečně mnoho slov. Vět 3.1 Všechny konečné jzyky jsou regulární. Důkz: Pro konečný jzyk sestrojíme konečný utomt jednoduše tk, že pro kždé slovo jzyk vytvoříme jednu větev výpočtu (nedeterministický utomt). Délk větví utomtu ude odpovídt délce jednotlivých slov jzyk. Poznámk: Můžeme mít ud jeden koncový stv společný pro všechn rozpoznávná slov, neo kždé slovo ude mít svůj vlstní koncový stv. Toho se využívá npříkld u překldčů, kdy při rozpoznávání konečného množství slov 19

21 KAPITOLA 3 REGULÁRNÍ JAZYKY 20 (klíčových slov) pro kždé slovo máme zvláštní koncový stv, podle toho, ve kterém skončí výpočet, určíme, o jké slovo šlo. Příkld 3.1 L={if,then,this} Nedeterministický ( otrocký postup): Deterministický: i t S t f q 1 h q 3 q 2 e n q 4 q 5 h i s q 7 q 8 q 9 q 6 q 10 f q 1 i t h S q 3 q 7 q 2 e n q 4 q 5 i q 8 s q 9 q 6 q 10 Reprezentce přechodové funkce tulkou (chceme, y yl utomt deterministický): A i f t h e n s S A 1 A 2 K 1 K 2 K 3 A 1 K 1 A 2 A 3 A 3 A 5 A 4 A 4 K 2 A 5 K Pumping Lemm pro regulární jzyky nekonečné jzyky Motivce. Pumping lemm (pumpovcí vět) určuje, že nekonečné regulární jzyky mjí jednu konkrétní vlstnost. Proto pokud dokážeme, že dný jzyk tuto vlstnost nemá, můžeme o něm říci, že není regulární.

22 KAPITOLA 3 REGULÁRNÍ JAZYKY 21 Aeced je vždy konečná množin počet stvů utomtu je vždy konečný ychom mohli prcovt s dosttečně dlouhými slovy (nekonečného jzyk) s délkou větší než počet stvů utomtu, musí ýt někde smyčk, která způsoí, že se část slov opkuje. q 0 q 1 c q 2 q 0 q 1 Orázek 3.1: Ukázky grfů konečných utomtů nekonečných jzyků Vět 3.2 Necht L je regulární jzyk. Pk existuje celé číslo p, p >0 tk, že kždé slovo w L, w > p, lze rozdělit n tři části w=xyz tk, že y ε ( y >0) kždé slovo ve tvru xy k z, k N je tké slovem tohoto jzyk, tedy xy k z L. Poznámk: sestrojený konečný utomt. Z číslo p můžeme dosdit počet stvů utomtu, pokud máme Příkld 3.2 L={ 2n n 0} Zvolíme p=2. Pro nějké i > p může ýt tře 2i = ( 2 ) ( 2(i 1) ) ε (tedy x= 2, y= 2(i 1), z= 0 = ε) Použijeme číslo k 0: k=0: xy 0 z = 2 L OK k=1: xy 1 z = 2i L OK k=2: xy 2 z = 2 ( 2(i 1)) 2 = 2(2i 1) L OK... k= p:xy p z = 2 + p 2(i 1) = 2(pi p+1) L..... OK Poznámk: Pumping lemm se ovykle nepoužívá v zákldním tvru, le spíše pro důkz, že dný jzyk není regulární větu orátíme: Původní: Když je jzyk regulární, pk existuje p... Orátíme: Když neexistuje p..., pk jzyk není regulární.

23 KAPITOLA 3 REGULÁRNÍ JAZYKY 22 Postup: Hledáme dosttečně dlouhé slovo dného jzyk, pro které neexistuje žádné rozdělení w=xyz tkové, že xy k z L. 1. zvolíme w L dosttečně dlouhé, 2. zvolíme rozdělení n w=xyz, 3. zvolíme k, 4. vyroíme w k = xy k z, 5. pokud w k L návrt k odu 3, pokud to ještě jde, 6. když to není možné (pro všechnk slovoxy k z ptří do jzyk), návrt k odu 2, 7. když to není možné (všechn rozdělení jsme otestovli fungují), návrt k odu 1, 8. jink: nšli jsme slovo w, pro které neexistuje žádné rozdělení xyz splňující uvedené podmínky, tedy jsme dokázli, že L není regulární jzyk. Předposlední od se u regulárního jzyk tké některých jzyků neregulárních provádí do nekonečn, což vyplývá z fktu, že Pumping Lemm je pouze implikce, ne ekvivlence. Tedy vět říká, že kždý regulární jzyk má dnou vlstnost, le neříká, že tuto vlstnost nemá žádný neregulární jzyk. Poznámk: Pumping lemm lze ve skutečnosti použít i v přípdě, že jzyk je konečný ve větě stojí... kždé slovo w L, w > p, lze..., ovšem když zvolíme p oprvdu dosttečně dlouhé (delší než kterékoliv slovo jzyk), pk vlstně není co testovt vlstnosti jzyk větě odpovídjí. 3.3 Uzávěrové vlstnosti třídy regulárních jzyků Definice 3.3 (Uzvřenost třídy jzyků vzhledem k operci ϕ) Dná tříd jzyků je uzvřená vzhledem k operci ϕ, pokud po upltnění této operce n jzyky z dné třídy výsledný jzyk ptří opět do této třídy. Poznámk: Možné operce, které z tohoto hledisk zkoumáme, jsou sjednocení, zřetězení, iterce, pozitivní iterce, průnik, doplněk, zrcdlový orz (reverze), homomorfismus, sustituce.

24 KAPITOLA 3 REGULÁRNÍ JAZYKY Sjednocení Vět 3.3 Tříd regulárních jzyků je uzvřen vzhledem k operci sjednocení. Důkz: Budeme předpokládt, že některé dv regulární jzyky L 1 L 2 jsou rozpoznávány utomty A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ), A 2 =(Q 2,Σ 2,δ 2,q0,F 2 2 ), L 2 = L(A 2 ), Q 1 Q 2 =. Vytváříme jzyk L=L 1 L 2 utomt A=(Q,Σ,δ,q 0,F), L=L(A): Stv q 0 je nový, tedy musí pltit q 0 / Q 1, q 0 / Q 2, Q=Q 1 Q 2 {q 0 }, F= F 1 F 2, Σ=Σ 1 Σ 2. δ-funkce simuluje cesty v původních utomtech (přejímá předpisy δ 1 δ 2 ), přidáváme pouze inicilizci přechod z počátečního stvu q 0, dlší přechody již přejímáme. Ze stvu q 0 přecházíme do těch stvů, do kterých se přechází z původních q0 1 q0. 2 δ 1 (p,) p Q 1, δ(p,)= δ 2 (p,) p Q 2, δ 1 (q0,) 1 δ 2 (q0,) 2 p=q 0 Příkld 3.3 L 1 = { i j i >0,j 0} L 2 = { i c j i >0,j 0} A 1 =({p 0,p 1,p 2 }, {,}, δ 1,p 0, {p 1,p 2 }) A 2 =({q 0,q 1,q 2 }, {,c}, δ 2,q 0, {q 1,q 2 }) L=L 1 L 2 = { i j i >0,j 0} { i c j i >0,j 0} A=({s 0,p 0,p 1,p 2,q 0,q 1,q 2 }, {,,c}, δ,s 0, {p 1,p 2,q 1,q 2 }) Původní: Po sjednocení: p 0 p 1 p 2 c c q 0 q 1 q 2 s 0 p 0 p 1 p 2 c c q 0 q 1 q 2

25 KAPITOLA 3 REGULÁRNÍ JAZYKY 24 A 1 c p 0 p 1 p 1 p 1 p 2 p 2 p 2 A 2 c q 0 q 1 q 1 q 1 q 2 q 2 q 2 A c s 0 p 1,q 1 p 0 p 1 p 1 p 1 p 2 p 2 p 2 q 0 q 1 q 1 q 1 q 2 q 2 q Zřetězení Vět 3.4 Tříd regulárních jzyků je uzvřen vzhledem k operci zřetězení. Důkz: Budeme předpokládt, že některé dv regulární jzyky L 1 L 2 jsou rozpoznávány utomty A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ) A 2 =(Q 2,Σ 2,δ 2,q0,F 2 2 ), L 2 = L(A 2 ), Q 1 Q 2 =. Vytváříme jzyk L=L 1 L 2 utomt A=(Q,Σ,δ,q 0,F), L=L(A). q 0 = q0, 1 Q=Q 1 Q 2, Σ=Σ 1 Σ 2, pokud ε / L 2, pk F= F 2, jink F= F 1 F 2 δ 1 (p,) p Q 1 F 1, δ(p,)= δ 2 (p,) p Q 2, δ 1 (p,) δ 2 (q0,) 2 p F 1 Příkld 3.4 L 1 = { i i 0} L 2 = { () i c {0,1} i 0 } A 1 =({p 0,p 1 }, {,}, δ 1,p 0, {p 1 }) A 2 =({q 0,...,q 3 }, {,,c}, δ 2,q 0, {q 0,q 1 }) A=({p 0,p 1,q 0,q 1,q 2,q 3 }, {,,c}, δ,p 0, {p 1,q 0,q 1 })

26 KAPITOLA 3 REGULÁRNÍ JAZYKY 25 Původní: p 0 c p 1 q 0 q 3 q 2 q 1 Po zřetězení: p 0 c c p 1 q 0 q 3 q 2 q Iterce Vět 3.5 Tříd regulárních jzyků je uzvřen vzhledem k operci iterce. Důkz: Budeme předpokládt, že některý regulární jzyk L 1 je rozpoznáván utomtem A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ). Vytváříme jzyk L=L 1 utomt A=(Q,Σ,δ,q 0,F), L=L(A). q 0 = q 1 0, Q=Q 1, Σ=Σ 1, F= F 1 {q 0 }, δ 1 (p,) p / F 1, δ(p,)= δ 1 (p,) δ 1 (q0,) 1 p F 1 Příkld 3.5 L 1 = { i i 0} A 1 =({p 0,p 1,p 2 }, {,}, δ 1,p 0, {p 2 }) A=({p 0,p 1,p 2 }, {,}, δ,p 0, {p 0,p 2 }) Původní: Po iterci: p 0 p 1 p 2 p 0 p 1 p 2

27 KAPITOLA 3 REGULÁRNÍ JAZYKY Pozitivní iterce Vět 3.6 Tříd regulárních jzyků je uzvřen vzhledem k operci pozitivní iterce. Důkz: Budeme předpokládt, že některý regulární jzyk L 1 je rozpoznáván utomtem A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ). Vytváříme jzyk L=L + 1 utomt A=(Q,Σ,δ,q 0,F), L=L(A). q 0 = q0, 1 Q=Q 1, Σ=Σ 1, F= F 1, δ 1 (p,); p / F 1, δ(p,)= δ 1 (p,) δ 1 (q0,); 1 p F 1 Příkld 3.6 L 1 = { i i 0} A 1 =({p 0,p 1,p 2 }, {,}, δ 1,p 0, {p 2 }) A=({p 0,p 1,p 2 }, {,}, δ,p 0, {p 2 }) Původní: Po pozitivní iterci: p 0 p 1 p 2 p 0 p 1 p Zrcdlový orz Vět 3.7 Tříd regulárních jzyků je uzvřen vzhledem k operci zrcdlového orzu (reverze). Důkz: Budeme předpokládt, že některý regulární jzyk L 1 je rozpoznáván utomtem A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ). Vytváříme jzyk L=L R 1 utomt A=(Q,Σ,δ,q 0,F), L=L(A).

28 KAPITOLA 3 REGULÁRNÍ JAZYKY 27 Princip: orátíme všechny cesty tk, y zčínly tm, kde původně končily nopk. q 0 je nově přidán (nelze všechny původní koncové stvy prohlásit z počáteční), nsměrujeme ho tm, odkud původně vedly šipky ke koncovým stvům, Q=Q 1 q 0, Σ=Σ 1, F= {q0} 1 { p δ 1 ( p,) p} p q 0 δ(p,)= { p δ 1 ( p,)=p} { p δ 1 ( p,)=p q f, q f F 1 } p=q0 Příkld 3.7 L 1 = { i {1,2} i 0 } { i c i 0}={ i i 0} {,,c} A 1 =({q 0,q 1,q 2,q 3 }, {,,c}, δ 1,q 0, {q 2,q 3 }) A=({q 0,q 1,q 2,q 3,s 0 }, {,,c}, δ,s 0, {q 0 }) L=L R 1 = {,,c} { i i 0} Původní: q 0 q 1 q 2 c q 3 Po zrcdlení:,c q 0 q 1 q 2 s 0 c q Průnik Průnikem dvou jzyků je jzyk oshující právě t slov, která jsou v oou zprcovávných jzycích. Vět 3.8 Tříd regulárních jzyků je uzvřen vzhledem k operci průniku. Důkz: Budeme předpokládt, že některé dv regulární jzyky L 1 L 2 jsou rozpoznávány utomty

29 KAPITOLA 3 REGULÁRNÍ JAZYKY 28 A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ) A 2 =(Q 2,Σ 2,δ 2,q0,F 2 2 ), L 2 = L(A 2 ), Q 1 Q 2 =. Vytváříme jzyk L=L 1 L 2 utomt A=(Q,Σ,δ,q 0,F), L=L(A). Do průniku dvou množin (jzyk není nic jiného než množin slov) řdíme právě ty prvky (slov), které jsou v oou množinách zároveň. Když použijeme konečné utomty, spustíme výpočet dného slov n oou utomtech zároveň. Protože podle definice musí utomt v kždém kroku zprcovt jeden symol slov, v oou utomtech musí ýt výpočet téhož slov stejně dlouhý (n cestě v grfu je stejný počet stvů), tyto stvy si tedy mohou vzájemně odpovídt. Proto ve výsledném simulujícím utomtu udou stvy reprezentovány uspořádnými dvojicemi, kde první prvek dvojice je stv prvního utomtu, druhý prvek je stv druhého utomtu. Q={[q i,q j ] q i Q 1,q j Q 2 }, q 0 =[q0,q 1 0], 2 F= {[q i,q j ] q i F 1,q j F 2 }, Σ=Σ 1 Σ 2 (neoσ=σ 1 Σ 2, vyjde to nstejno), δ([q i,q j ],)=[δ 1 (q i,),δ 2 (q j,)], Σ Příkld 3.8 L 1 = { n n 0} L 2 = { n n 0} Dv původní utomty: p 0 q 0 p 1 q 1 Výsledný utomt: [0,0] [0,1] p 2 [1,1] Prcujeme zároveň v oou utomtech: p 0 p 1 p q 0 q 1 [2,1]

30 KAPITOLA 3 REGULÁRNÍ JAZYKY Homomorfismus Definice 3.4 (Homomorfismus) použitý n řetězce znků s opercí zřetězení je jednoznčné zorzení, které zchovává neutrální prvek (v nšem přípdě prázdný řetězec ε) tké smotnou operci zřetězení, tedy: h(ε)=ε h( w)=h() h(w) Zde si pouze ukážeme postup n příkldu, důkz ude proveden později v jiné kpitole. Vět 3.9 Tříd regulárních jzyků je uzvřen vzhledem k operci homomorfismu. Nznčení postupu důkzu: Budeme předpokládt, že některý regulární jzyk L 1 je rozpoznáván utomtem A 1 =(Q 1,Σ 1,δ 1,q0,F 1 1 ), L 1 = L(A 1 ), dále že existuje homomorfismus h definovný pro všechny symoly jzykσ 1. Vytváříme jzyk L=h(L 1 ) utomt A=(Q,Σ,δ,q 0,F), L=L(A). Postup si ukážeme n příkldu. Příkld 3.9 L 1 = { i i >0} h()=ccc, h()=cd h(l 1 )={c 3 (cd) i i >0} Původní utomt: q 0 q 1 q 2 Po plikci homomorfismu: c q 0 c c q 4 q 3 d q 1 c c q 5 q 2 d q 6

31 Kpitol 4 Regulární výrzy 4.1 Možnosti využití regulárních výrzů Regulární výrzy se v různých podoách využívjí v prxi, zejmén při vyhledávání (n internetu neo tře hledání souoru v počítči), neo tehdy, když chceme něco provést s množinou ojektů (souorů, textu v souorech, v dtázích, pod.) potřeujeme tuto množinu nějk specifikovt. Vyhledávání n internetu (npříkld Google): fktoriál pscl OR C++ chceme progrm pro výpočet fktoriálu v Psclu neo C++ mrvenec -Ferd chceme stránky o mrvencích, le ne s Ferdou mrvencem Vyhledávání n počítči (Windows, DOS, Unixy): *.txt všechny souory s příponou.txt?ps*.* znmená tře opsné.doc, upsnec.exe, xps.xls, td. Vyhledávání n počítči (Unixy): [-z]*[0-9] všechny řetězce zčínjící mlým písmenem končící číslicí 30

32 KAPITOLA 4 REGULÁRNÍ VÝRAZY 31 [!0-9]*.? vše, co zčíná mlým, přímo z ním může ýt jkýkoliv řetězec, který nezčíná číslicí, pk je tečk z ní ještě jeden znk Možnosti použití: vyhledávání n internetu, vyhledávání souorů neo čehokoliv dlšího textového n počítči, prohledávání souorů n počítči (hledáme řetězec) ve Windows npříkld findstr, v Unixech npříkld grep, dtáze, elektronické slovníky (cizojzyčné i výkldové), podpor v progrmovcích jzycích, td. 4.2 Definice Definice 4.1 (Regulární výrz) Definujeme pomocnou množinu Φ = {, ε, +,,,(,)}. Množin RV(Σ) všech regulárních výrzů nd ecedou Σ je nejmenší množin slov tková, že slov se skládjí ze symolů ecedyσ Φ,ΣΦjsou disjunktní, RV(Σ), ε RV(Σ), RV(Σ) pro kždé Σ, jestliže α,β RV(Σ), pk tky (α+β) RV(Σ), (α β) RV(Σ), (α) RV(Σ). Symol pro zřetězení se ovykle nemusí psát. Regulární výrz oznčuje množinu řetězců s dnou vlstností, jzyk je tké množin řetězců (slov) s dnou vlstností kždý regulární výrz určuje některý jzyk.

33 KAPITOLA 4 REGULÁRNÍ VÝRAZY 32 Operce nd jzyky:... prázdný jzyk ε... {ε} (jzyk oshující jen slovo s nulovou délkou), Σ... {} (jzyk oshující jen slovo s délkou 1) α+β... {α} {β} (sjednocení) α β... {α} {β} (zřetězení) (α)... {α} (iterce) Sjednocení, zřetězení iterci oznčujeme jko regulární operce. Příkld 4.1 Ukážeme si několik regulárních jzyků ekvivlentních regulárních výrzů. L 1 = { i c() j i,j 0} R 1 = c() L 2 = {1 2i w i >0,w {0,1} } R 2 =(11)(11) (0+1) L 3 = { i i >0} { i i 0} R 3 = + L 4 = {ε} ({ 4 i i 0} { 2 2i+1 i 0}) {c i i 0} R 4 = ε+( + () )c 4.3 Vzth ke konečným utomtům Vět 4.1 Jzyky určené regulárními výrzy jsou právě regulární jzyky, tedy právě jzyky rozpoznávné konečnými utomty. Důkz: (podle reg. výrzu sestrojíme konečný utomt) Regulární jzyk je konstruován z množin pomocí operátorů sjednocení, zřetězení iterce. Všechny tyto operátory mjí svůj ekvivlent u regulárních výrzů. Důkz lze provést mtemtickou indukcí: áze: pro regulární výrzy, {ε}, {}, Σ dokážeme jednoduše zkonstruovt konečný utomt,

34 KAPITOLA 4 REGULÁRNÍ VÝRAZY 33 q q p q indukční krok: předpokládejme, že pro regulární výrzy α β dokážeme sestrojit konečné utomty (včetně těch v ázi), již dříve jsme dokázli (pomocí utomtů), že tříd regulárních jzyků je uzvřen vzhledem k opercím sjednocení, zřetězení iterce, tedy použijeme postupy popsné v důkzech těchto opercí pro sestrojení konečných utomtů reprezentujících reg. výrzy α+β, α β (α). Důkz: (podle utomtu sestrojíme reg. výrz) Musíme popst regulárním výrzem všechny cesty vedoucí z počátečního stvu do některého koncového stvu utomtu. Definujeme: R ij = {w Σ (i,w) A i (j,ε)} Je to množin všech slov tkových, která lze v utomtu zprcovt tk, že počáteční stv je i skončíme ve stvu j. Jestliže je množin stvů {1,2,...,n}, pk jzykem utomtu je množin R 1k k F (sjednotíme všechny cesty zčínjící v počátečním stvu končící v některém z koncových stvů). Pro postupnou konstrukci množin R ij použijeme: R k ij= {w R ij pokudexistuje m: (i,w) + A i (m,u) + A i (j,ε), (4.1) w u ε,pk m k} (4.2) Je to podmnožin množiny R ij tková, že n cestě v utomtu, která je zprcováním slov z této množiny, se ncházejí pouze stvy s indexem menším neo rovným číslu k (nepltí pro krjní stvy i j, ty mohou ýt i vyšší než k).

35 KAPITOLA 4 REGULÁRNÍ VÝRAZY 34 Postupujeme dle následujícího vzorce: R k+1 ij = R k ij+ ( R k i,k+1 (R k k+1,k+1) R k k+1,j To je rekurzivní vzorec pro výpočet množin R k ij nejdřív vezmeme všechn slov, která lze rozpoznt cestou přes stvy k, pk přidáme slov, která jsou zprcováván cestou oshující nejméně jednou stv k+1 (tedy nejdřív cest z i do stvu k+1, pk přípdně smyčk přes tento i Rij k j stv stvy k, potom zpátky ze stvu k+1 do j). Bází rekurze jsou jednoduché utomty, kde zchycujeme přímý přechod ze stvu i do j: R 0 ij: (+ε) i (ε) i i ) k+1 R k k+1,k+1 R k i,k+1 j R k k+1,j první přípd použijeme, když ve stvu i existuje smyčk přes tento stv: R 0 ii= +ε druhý přípd použijeme pro stv, ve kterém neexistuje smyčk (máme pouze prázdný přechod ): R 0 ii= ε třetí přípd použijeme pro dv různé stvy i j, mezi kterými vede přímý přechod: R 0 ij= pokud mezi stvy i j nevede přímý přechod, ude R 0 ij=. Postup: vytvoříme R 0 ij pomocí definice utomtu (z tulky neo digrmu), podle rekurzívního vzorce vypočteme dlší množiny R k ij ž ke k= n, pltí R n ij = R ij, dostneme pro i=1 j F všechny cesty v utomtu vedoucí od počátečního stvu (i=1) do koncových stvů, výsledný regulární výrz pro celý utomt je j F R 1j. Příkld 4.2 Uvedený postup si ukážeme n utomtu se třemi stvy. Upozorňujeme, že složitost postupu nrůstá s množstvím stvů geometrickou řdou.

36 KAPITOLA 4 REGULÁRNÍ VÝRAZY 35 c R 0 11= +ε R 0 12= R 0 13= c R 0 21= R 0 22= +ε R 0 23= R 0 31= R 0 32= R 0 33= ε 1 c 2 3 R 1 11=(+ε)+((+ε)(+ε) (+ε))= R 1 12= +((+ε)(+ε) )= R 1 13= c+((+ε)(+ε) c)= c R 1 21= + = R 1 22=(+ε)+ =+ε R 1 23= + = R 2 11= +( (+ε) )= R 1 31= +((+ε) (+ε))= R 1 32= +((+ε) )= R 1 33= ε+((+ε) c)=ε+ c R 2 12= +( (+ε) (+ε)= R 2 13= c+( (+ε) )= c+ R 2 21= +((+ε)(+ε) )= R 2 22=(+ε)+((+ε)(+ε) (+ε))= R 2 23= +((+ε)(+ε) )= R 2 31= +( (+ε) )= R 2 32= +( (+ε) (+ε))= R 2 33=(ε+ c)+( (+ε) )=ε+ c+ R 3 12= +(( c+ )(ε+ c+ ) )= = +(( c+ )( c+ ) ) R 3 13=( c+ )+(( c+ )(ε+ c+ ) (ε+ c+ ))= =( c+ )+(( c+ )(+ c+ ) (ε+ c+ )) R 12 = R 3 12, R 13 = R 3 13 R(A)=R 12 + R 13

37 KAPITOLA 4 REGULÁRNÍ VÝRAZY Využití vzthu regulárních výrzů k reg. jzykům Důkzy uzávěrových vlstností regulárních jzyků Dokážeme uzvřenost třídy regulárních jzyků vzhledem k sustituci, protože homomorfismus je vlstně speciálním přípdem sustituce, tk i uzvřenost třídy regulárních jzyků vzhledem k homomorfismu (ztím jsme si tuto operci ukázli jen n příkldu). Definice 4.2 (Sustituce) použitá n řetězce znků s opercí zřetězení je zorzení, které zchovává neutrální prvek (v nšem přípdě prázdný řetězec ε) tké smotnou operci zřetězení, tedy: s(ε)=ε s( w)=s() s(w) Rozdíl oproti homomorfismu: homomorfismus přiřzuje kždému znku původní ecedy právě jeden řetězec, sustituce přiřzuje kždému znku původní ecedy množinu řetětců, v přípdě regulární sustituce jde o množinu, která je reprezentovná regulárním jzykem, homomorfismus je tedy speciální přípd sustituce. Vět 4.2 Tříd regulárních jzyků je uzvřen vzhledem k operci sustituce. Důkz: Máme jzyk L 1 nd ecedouσ 1 reprezentovný regulárním výrzem. Sustituce σ je určen tk, že pro kždý prvek ecedyσ 1, Σ 1, máme regulární výrz σ() nd ecedou. Po upltnění sustituce vznikne jzyk σ(l 1 ) nd ecedou Σ 1 tk, že v regulárním výrzu původního jzyk nhrdíme všechny symoly ecedyσ 1 příslušnými regulárními výrzy σ().

38 KAPITOLA 4 REGULÁRNÍ VÝRAZY 37 Příkld 4.3 L= +( ) σ 1 ()=m, σ 1 ()=p q+ p σ 1 (L)=m (p q+ p)+((p q+ p)m ) σ 2 ()=c, σ 2 ()=c σ 2 (L)=c c +(c c) = c σ 3 ()=d, σ 3 ()=d σ 3 (L)=d d+(d d ) = d σ 4 ()=e, σ 4 ()=f σ 4 (L)=e f +(e f ) =(e f ) =(e+f) Normovný utomt Definice 4.3 (Normovný utomt) Normovný utomt je deterministický utomt ez nedosžitelných stvů, jehož stvy jsou oznčeny jednoznčně (jednoznčným postupem). Účel: O dvou ekvivlentních utomtech, které nejsou normovné, můžeme říci, že jsou stejné ž n oznčení stvů. Normováním si zjednodušíme porovnávání utomtů, protože dv ekvivlentní normovné utomty jsou shodné i včetně oznčení stvů (nemusíme prověřovt různé komince uspořádných dvojic stvů). Postup: Stvyiutomtu uspořádáme podle nejkrtších slov z jzykůl i (udeme indexovt sestupně, největší slovo dostne nejmenší index). Porovnáváme podle délky, stejně dlouhá slov podle ecedy. u kždého stvu i utomtu zjistíme nejkrtší slovo příslušného jzyk L i, je možné, že udeme potřeovt více tkových slov, seřdíme podle délky sestupně, pokud vyjdou dvě stejně dlouhá slov u více stvů, porovnáme je podle ecedy,

39 KAPITOLA 4 REGULÁRNÍ VÝRAZY 38 pokud vyjdou stejná slov u více stvů, použijeme u kždého druhé nejkrtší slovo (td. dokud nenjdeme rozdíl, ten njdeme určitě jsou to různé jzyky), seřzené stvy oindexujeme (pojmenujeme) od 1. Příkld 4.4 Znormujeme utomt A=({q 0,q 1,q 2 }, {,}, δ, q 0, {q 1 }) q 0 q 1 q 0 q 2 q 1 Původní utomt: q 1 q 1 q 2 q 2 q 2 q 1 L(q 0 )= +, nejmenší slov jsou,,,,... L(q 1 )=, nejmenší slov jsou ε,,,... L(q 2 )=, nejmenší slov jsou,,,... Jk vidíme, nejkrtší slovo oshuje jzyk L(q 1 ), proto tomuto jzyku přiřdíme nejvyšší index (3). Zývjící dv jzyky mjí první dvě nejmenší slov stejná, ž v třetím slově se liší < proto jzyku L(q 0 ) přiřdíme druhý nejvyšší index (2) Po znormování: Jk si můžeme všimnout n příkldu 4.4 jk můžeme tké zjistit úvhou, koncové stvy většinou mívjí přiřzeny nejvyšší indexy proti směru výpočtu (tedy směrem od koncových k počátečnímu stvu) se indexy ovykle snižují. To všk není tk úplně prvidlem tře v příkldu 4.4 nemá počáteční stv nejnižší index Minimlizce konečného utomtu Minimlizcí udeme rozumět především snížení počtu stvů utomtu. Tento postup může ýt užitečný při porovnávání jzyků rozpoznávných dvěm (npo-

40 KAPITOLA 4 REGULÁRNÍ VÝRAZY 39 hled) různými utomty, le tké při optimlizci progrmů vytvořených stvovým progrmováním podle konečného utomtu. Definice 4.4 (Ekvivlentní utomty) Dv konečné utomty A 1 A 2 jsou ekvivlentní, pokud rozpoznávjí tentýž jzyk, tj. L(A 1 )=L(A 2 ). Definice 4.5 (Minimální utomt) Konečný utomt je minimální, jestliže neexistuje žádný s ním ekvivlentní utomt, který má menší počet stvů. Vět 4.3 Ke kždému konečnému utomtu lze sestrojit ekvivlentní minimální konečný utomt. Postup: vytvoříme ekvivlentní deterministický utomt, odstrníme nedosžitelné stvy, vytvoříme ekvivlentní redukovný utomt, vhodně přeznčíme stvy znormujeme utomt. Využijeme konstrukci podílového utomtu (viz podílová grup pod.). Redukce stvů utomtu Redukce stvů utomtu A=(Q,Σ,δ,q 0,F): pro všechny stvy q utomtu vytvoříme pomocné utomty A q tk, že vezmeme původní utomt A stv q použijeme jko počáteční, tedy q Q: A q =(Q,Σ,δ,q,F), oznčíme L q = L(A q ), zvedeme relci ekvivlence n množině stvů utomtu Q, definujeme ji tkto: pro jkékoliv dv stvy p,q Q pltí: p q L p = L q (dv stvy jsou ekvivlentní, pokud se rovnjí jzyky příslušných pomocných utomtů), když při postupu ze dvou různých stvů dostáváme totéž, pk jsou tyto stvy změnitelné můžeme je shrnout do jediného stvu, tedy všechny cesty mířící do q přesměrujeme do p stv q odstrníme,

41 KAPITOLA 4 REGULÁRNÍ VÝRAZY 40 toto odstrňování provádíme tk dlouho, dokud v utomtu existují ekvivlentní stvy. Definice 4.6 (Podílový utomt) Necht A=(Q,Σ,δ,q 0,F) je konečný utomt ez nedosžitelných stvů. Vytvoříme třídy ekvivlence oshující některý stv q Q: [q]={p p Q,p q} Podílový utomt A podle ekvivlence je A = {Q,Σ,δ,[q 0 ],F ), kde Q = {[q] q Q}, δ ([q],)=[δ(q,)], F = {[f] f F } Konstrukci podílového utomtu použijeme pro redukci stvů původního utomtu, proto o tkto vytvořeném utomtu udeme hovořit tké jko o redukovném. Je poměrně sndné dokázt, že podílový utomt je ekvivlentní s původním utomtem ( shrnujeme cesty, které jsou shodné). N příkldu si ukážeme vytvoření podílového utomtu včetně hledání ekvivlentních stvů. Postup: Vytvoříme utomty A i =(Q,Σ,δ,i,F) (jko počáteční stv použijeme i Q), zjímjí nás jzyky L i = L(A i ). Ty pk porovnáme zprcujeme ekvivlentní. Budeme postupovt následovně: vytvoříme množiny R 0 ij, rekurzívně vypočteme dlší množiny R k ij ž ke k=8, zjistíme jzyky L(i)= Rif 8 f F porovnáme je, pokud některé dv stvy rozpoznávjí stejný jzyk, jeden z nich odstrníme s přesměrováním všech přímých cest vedoucích do tohoto stvu, utomt převedeme do normálního tvru (znormujeme).

42 KAPITOLA 4 REGULÁRNÍ VÝRAZY 41 Příkld 4.5 A=(Q,Σ,δ,1,F)=({1,2,...,8}, {,},δ,1, {8}) deterministický ez nedosžitelných stvů Jzyky L i vytvoříme postupem popsným výše: L 1 = R18= L 2 = R28= 8 L 3 = R38= 8 L 4 = R48= 8 + L 5 = R58= 8 = L 2 L 6 = R68= 8 = L 3 L 7 = R78= 8 = L 3 L 8 = R88= 8 zprcujeme stvy 5, 6, 7. Původní utomt:

43 KAPITOLA 4 REGULÁRNÍ VÝRAZY 42 Po odstrnění stvu 5: Po odstrnění stvu 6: Po odstrnění stvu 7: Tkto vytvořený utomt je už sice redukovný, le ještě ne minimální. Aychom mohli splnit podmínku sndného porovnávání utomtů, musíme náš utomt ještě normovt. Využijeme jzyky dílčích utomtů, které jsme zjistili dříve: L 1 = R18= L 2 = R28= 8

44 KAPITOLA 4 REGULÁRNÍ VÝRAZY 43 L 3 = R38= 8 L 4 = R48= 8 + L 8 = R88= 8 Z těchto jzyků vyereme nejkrtší slov t porovnáme: Stv i Nejkrtší slovo jzyk L i Nové oznčení stvu 1 1 2,, ,, ε 5 Výsledný utomt po znormování:

45 Kpitol 5 Formální grmtiky Až dosud jsme se zývli možnostmi zjišt ování, zd zdné slovo neo posloupnost signálů vyhovuje dným podmínkám, tedy zd ptří do určitého jzyk. V této kpitole se udeme zývt možnostmi generování slov vyhovujících dným podmínkám, tedy ptřících do určitého jzyk. 5.1 Generování slov jzyk Definice 5.1 (Zákldní pojmy formálních grmtik) Aeced je neprázdná konečná množin, jejíž prvky nzýváme znky, symoly, signály. Slovo nd ecedouσje konečná posloupnost symolů ecedyσ, tj. w Σ. Jzyk n ecedouσje množin slov L nd ecedouσ, tj. L Σ. Automt rozpoznává slovo, tj. dostne již existující slovo n vstup rozhodne, zd ptří do dného jzyk. Grmtik vytváří (generuje) slov dného jzyk, popisuje strukturu jzyk. Použití grmtik při generování slov si nejdřív ukážeme n příkldu. 44

46 KAPITOLA 5 FORMÁLNÍ GRAMATIKY 45 Příkld 5.1 L= (c+c c) S S 1 S A 2 S cb 3 A c 4 B B 5 B c 6 Generujeme slovo cc: S cb cb cb cc Není co přepisovt konec Úspornější přehlednější způso zápisu (shrneme prvidl se stejnou levou strnou n jeden řádek): S S A cb 1, 2, 3 A c 4 B B c 5, 6 Definice 5.2 (Formální grmtik) Formální grmtik je uspořádná čtveřice (posloupnost) G=(N,T,P,S), kde N je neprázdná konečná množin neterminálních symolů (neterminální eced), T je neprázdná konečná množin terminálních symolů (terminální eced), pltí N T=, P je neprázdná konečná množin prvidel, P ((N T) N(N T) ) (N T) jink: αaβ γ, kde A N, α,β,γ (N T) S je strtovcí symol grmtiky, S N. Definice 5.3 (Relce kroku odvození ) Necht w 1,w 2 (N T) pro grmtiku G=(N,T,P,S). Slovo w 2 lze přímo (v jednom kroku) odvodit ze slov w 1 (píšeme w 1 G w 2, ovykle stčí ), jestliže existuje prvidlo(α β) P, w 1 = x 1 αx 2, w 2 = x 1 βx 2 (podřetězec α nhrdíme řetězcem β). Symol je reflexivním trnzitivním uzávěrem relce, tj. npříkld zápis w 1 w 2 w 3 w 4 w 5 lze zkrátit n w 1 w 5.

47 KAPITOLA 5 FORMÁLNÍ GRAMATIKY 46 Definice 5.4 (Jzyk) Jzyk generovný grmtikou G =(N, T, P, S) je množin L(G)={w T S G w} Definice 5.5 (Větná form, vět) Větná form grmtiky G =(N, T, P, S) je kterékoliv slovo α tkové, že S G α, tedy je to kterékoliv slovo, které lze odvodit ze strtovcího symolu pomocí prvidel grmtiky. Vět grmtiky G = (N,T,P,S) je tková větná form w, která se skládá pouze z terminálních symolů, tedy S G w, w T. Můžeme říci, že jzyk generovný grmtikou je množin všech vět této grmtiky. Definice 5.6 (Ekvivlence grmtik) Grmtiky G 1 G 2 jsou ekvivlentní, pokud generují tentýž jzyk, tedy L(G 1 )=L(G 2 ). Definice 5.7 (Derivce) Derivce slov α délky n v grmtice G =(N, T, P, S) je posloupnost slov α 1, α 2,... α n tková, že α 1 = S, α n = α, α i G α i+1 i: 1 i n Regulární grmtiky Definice 5.8 (Regulární grmtik) Regulární grmtik je tková formální grmtik G=(N,T,P,S), kde P je množin prvidel ve tvru A neo A B, kde A,B N, T, pokud se S nevyskytuje n prvé strně žádného prvidl, může existovt i prvidlo S ε. Vět 5.1 Jzyky generovné regulárními grmtikmi jsou právě regulární jzyky. Postup princip důkzu si nejdřív ukážeme n příkldech. Příkld 5.2 G=({S,A}, {,,c,d}, P, S), kde v P jsou prvidl S S A c A A cs d

48 KAPITOLA 5 FORMÁLNÍ GRAMATIKY 47 Vytvořený konečný utomt: c d S A S S,A X c A A S X c d X X L= ( c ) (c+ d)= (c ) d+ ( c ) c Příkld 5.3 G=({S,A,B}, {,}, P, S), kde v P jsou prvidl S A ε A A B B A Vytvořený konečný utomt: S A X A X A,B B A X L=ε++ ( ) S X A B Důkz: (G=(N,T,P,S) A=(Q,Σ,δ,q 0,F)) ecedσ=t, počáteční stv q 0 = S, stvy Q=N {X}, musí ýt X / N (X je nově přidný), koncové stvy: pokud(s ε) P, pk F= {X,S}, jink F= {X}, δ funkce: pro kždé prvidlo(u V) P je δ(u,) V, pro kždé prvidlo(u ) P je δ(u,) X.

49 KAPITOLA 5 FORMÁLNÍ GRAMATIKY 48 Příkld 5.4 A=({q 0,q 1,q 2,q 3 }, {,},δ,q 0, {q 2,q 3 }) q 0 q 1 q 1 q 0,q 2 q 0 q 1 q 2 q 3 q 2 q 2 q 3 q 3 q 3 Automt uprvíme, ychom mohli použít postup přesně opčný postupu převodu grmtiky n utomt: q 0 q 1 q 1 q 0,q 2,X X q 2 q 2,X q 3,X q 3 q 3,X q 0 q 1 q 2 q 3, X Výsledná grmtik její úprv (jen nhrdíme neterminály velkými písmeny): q 0 q 1 q 1 q 0 q 2 q 2 q 2 q 3 q 3 q 3 S A A S B B B C C C L=() +() = () (ε+ ) Příkld 5.5 A=({q 0,q 1,q 2,q 3 }, {,,c},δ,q 0, {q 0,q 3 }) c q 0 q 1 q 1 q 2 q 0,q 1 q 2 q 2 q 3 q 0 q 1 c q 2 q 3 q 3

50 KAPITOLA 5 FORMÁLNÍ GRAMATIKY 49 Uprvíme utomt, tentokrát musíme řešit i počáteční stv: q 3 X c q 0 q 1 q 1 q 2 q 0,q 1,X q 2 q 2 S q 1 X S q 0 q 1 c q 2 q 3 c X Stv q 3 se stává ndytečným, neexistuje žádná cest vedoucí od něho do koncového stvu. Výsledná grmtik převedení neterminálů n velká písmen: S q 1 ε q 0 q 1 q 1 q 2 q 0 q 1 q 2 q 2 c L=ε+( ) (+ c) S B ε A B B C A B C C c Důkz: (A=(Q,Σ,δ,q 0,F) G=(N,T,P,S)) uprvíme utomt uprvený je A =(Q,Σ,δ,q 0,F ) F = {X}, duplikujeme přímé přechody vedoucí do původních koncových stvů, vytvořené přesměrujeme do X, pokud q 0 F, vytvoříme nový počáteční stv S, F = {X,S}, q 0=S, Σ:δ (S,)=δ(q 0,), T=Σ, N= Q {X}, strtovcí symol je q 0, prvidl P : pro všechny přechody δ(q i,) q j (q i q j ) P, pokud q j / F, jink(q i ) P, jestliže S F, pk(s ε) P.

51 KAPITOLA 5 FORMÁLNÍ GRAMATIKY Chomského hierrchie grmtik Po jzykovědci Nomu Chomském je pojmenován hierrchie zákldních typů formálních grmtik. Grmtiky v této hierrchii mjí jedno společné sekvenční způso generování slov. To znmená, že v kždém kroku odvození je použito právě jedno prvidlo n právě jednom místě v přepisovném slově. V hierrchii njdeme čtyři typy grmtik oznčených čísly 0, 1, 2, 3. Třídy (tedy množiny) jzyků generovné těmito grmtikmi oznčujeme L(0), L(1), L(2), L(3). Mimo hierrchii, le v těsné vzě n ni, existují dlší typy grmtik, n které se tké podíváme Grmtiky v Chomského hierrchii Chomského hierrchie zhrnuje tedy čtyři typy grmtik. U kždého typu si uvedeme přípdný slovní název dále oznčení, které se kromě L(číslo) používá pro oznčení související třídy jzyků, tvr prvidel ekvivlentní stroj, který rozpoznává stejnou třídu jzyků. Definice 5.9 (Grmtiky Chomského hierrchie) 1. Grmtiky typu 0 (rekurzívně vyčíslitelné, RE Recursively Enumerle) žádné zvláštní podmínky n tvr prvidel (jen n levé strně musí ýt lespoň jeden neterminál): (N T) N(N T) (N T) jiný zápis: αaβ γ, A N,α,β,γ (N T) ekvivlentní stroj: Turingův stroj (TS) 2. Grmtiky typu 1 (nezkrcující, monotónní) pro prvidl musí nvíc kromě podmínek grmtik typu 0 pltit: α β, α β, α,β (N T) může existovt prvidlo S ε, pokud se S nenchází n prvé strně žádného prvidl

Automaty a gramatiky(bi-aag)

Automaty a gramatiky(bi-aag) BI-AAG (2011/2012) J. Holu: 3. Operce s konečnými utomty p. 2/33 Převod NKA ndka BI-AAG (2011/2012) J. Holu: 3. Operce s konečnými utomty p. 4/33 Automty grmtiky(bi-aag) 3. Operce s konečnými utomty Jn

Více

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

Je regulární? Pokud ne, na regulární ji upravte. V původní a nové gramatice odvod te řetěz 1111. Grmtiky. Vytvořte grmtiku generující množinu řetězů { n m } pro n, m N {} tková, že n m. Pomocí této grmtiky derivujte řetezy,. 2. Grmtik je dán prvidly S ɛ S A A S B B A B. Je regulární? Pokud ne, n regulární

Více

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

Minimalizace automatů. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 28. března / 31 Minimlizce utomtů M. Kot, Z. Sw (VŠB-TU Ostrv) Úvod do teoretické informtiky 28. řezn 2007 1/ 31 Ekvivlence utomtů 1 2 3 1 2 3 1 2 Všechny 3 utomty přijímjí jzyk všech slov se sudým počtem -ček Nejvýhodnějšíjepronásposledníznich-mánejméněstvů

Více

Automaty a gramatiky

Automaty a gramatiky Automty grmtiky Romn Brták, KTIML rtk@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~rtk Úvod do formálních grmtik Grmtiky, všichni je známe, le co to je? Popis jzyk pomocí prvidel, podle kterých se vytvářejí

Více

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

Definice. Necht M = (Q, T, δ, q 0, F ) je konečný automat. Dvojici (q, w) Q T nazveme konfigurací konečného automatu M. BI-AAG (20/202) J. Holu: 2. Deterministické nedeterministické konečné utomty p. 2/3 Konfigurce konečného utomtu BI-AAG (20/202) J. Holu: 2. Deterministické nedeterministické konečné utomty p. 4/3 Automty

Více

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

Automaty a gramatiky. Úvod do formáln. lních gramatik. Roman Barták, KTIML. Příklady gramatik Úvod do formáln lních grmtik Automty grmtiky Romn Brták, KTIML rtk@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~rtk Grmtiky, všichni je známe, le co to je? Popis jzyk pomocí prvidel, podle kterých se vytvářejí

Více

Teorie jazyků a automatů I

Teorie jazyků a automatů I Šárk Vvrečková Teorie jzyků utomtů I Sírk úloh pro cvičení Ústv informtiky Filozoficko-přírodovědecká fkult v Opvě Slezská univerzit v Opvě Opv, poslední ktulizce 5. květn 205 Anotce: Tto skript jsou určen

Více

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

Formální jazyky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 7. března / 46 Formální jzyky Z. Sw (VŠB-TUO) Úvod do teoretické informtiky 7. řezn 2012 1/ 46 Teorie formálních jzyků motivce Příkldy typů prolémů, při jejichž řešení se využívá pozntků z teorie formálních jzyků: Tvor

Více

Automaty a gramatiky

Automaty a gramatiky 5 Automty grmtiky Romn Brták, KTIML rtk@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~rtk Co ylo minule Množinové operce s jzyky sjednocení, pr nik, rozdíl, dopln k uzv enost opercí (lgoritmus p evodu) et

Více

Teorie jazyků a automatů

Teorie jazyků a automatů Slezská univerzit v Opvě Filozoficko-přírodovědecká fkult v Opvě Šárk Vvrečková Teorie jzyků utomtů Skript do předmětů II Zákldy teoretické informtiky Ústv informtiky Filozoficko-přírodovědecká fkult v

Více

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

Převody Regulárních Výrazů. Minimalizace Konečných. Regulární jazyky 2 p.1/35 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

Více

Automaty a gramatiky. Organizační záležitosti. Přednáška: na webu (http://ktiml.mff.cuni.cz/~bartak/automaty) Proč chodit na přednášku?

Automaty a gramatiky. Organizační záležitosti. Přednáška: na webu (http://ktiml.mff.cuni.cz/~bartak/automaty) Proč chodit na přednášku? Orgnizční záležitosti Atomty grmtiky Romn Brták, KTIML rtk@ktiml.mff.cni.cz http://ktiml.mff.cni.cz/~rtk Přednášk: n we (http://ktiml.mff.cni.cz/~rtk/tomty) Proč chodit n přednášk? dozvíte se více než

Více

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

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ů. Vzth mezi reg. výrzy kon. utomty Automty grmtiky(bi-aag) 7. Převody mezi reg. grm., reg. výrzy kon. utomty Jn Holu Algoritmus (okrčování): 6. Zorzení δ: () δ(, x) oshuje x i, x i Z. () δ(x i, y) oshuje

Více

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. Roman Barták, KTIML. Důkaz věty o isomorfismu reduktů. Věta o isomorfismu reduktů. Pro připomenutí 3 Automty grmtiky Romn Brták, KTIML rtk@ktimlmffcunicz http://ktimlmffcunicz/~rtk Pro připomenutí 2 Njít ekvivlentní stvy w X* δ*(p,w) F δ*(q,w) F Vyřdit nedosžitelné stvy 3 Sestrojit podílový utomt Automty

Více

Teorie jazyků a automatů

Teorie jazyků a automatů Šárk Vvrečková Teorie jzyků utomtů Sírk příkldů pro cvičení II Zákldy teoretické informtiky Ústv informtiky Filozoficko-přírodovědecká fkult v Opvě Slezská univerzit v Opvě Opv 24. listopdu 2016 Anotce:

Více

Petriho sítě PES 2007/2008. ceska@fit.vutbr.cz. Doc. Ing. Tomáš Vojnar, Ph.D. vojnar@fit.vutbr.cz

Petriho sítě PES 2007/2008. ceska@fit.vutbr.cz. Doc. Ing. Tomáš Vojnar, Ph.D. vojnar@fit.vutbr.cz PES Petriho sítě p. 1/34 Petriho sítě PES 2007/2008 Prof. RNDr. Miln Češk, CS. esk@fit.vutr.z Do. Ing. Tomáš Vojnr, Ph.D. vojnr@fit.vutr.z Sz: Ing. Petr Novosd, Do. Ing. Tomáš Vojnr, Ph.D. (verze 06.04.2010)

Více

Úvod do Teoretické Informatiky (456-511 UTI)

Úvod do Teoretické Informatiky (456-511 UTI) Úvod do Teoretické Informtiky (456-511 UTI) Doc. RNDr. Petr Hliněný, Ph.D. petr.hlineny@vs.cz 25. ledn 2006 Verze 1.02. Copyright c 2004 2006 Petr Hliněný. (S využitím části mteriálů c Petr Jnčr.) Osh

Více

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

2.5.4 Věta. Každý jazyk reprezentovaný regulárním výrazem je regulárním jazykem. 2.5. Regulární výrzy [181012-1111 ] 21 2.5 Regulární výrzy 2.5.1 Regulární jzyky jsme definovli jko ty jzyky, které jsou přijímány konečnými utomty; ukázli, že je jedno, zd jsou deterministické neo nedeterministické.

Více

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

( ) ( ) Sinová věta II. β je úhel z intervalu ( 0;π ). Jak je vidět z jednotkové kružnice, úhly, pro které platí. Předpoklady: 4.4. Sinová vět II Předpokldy 44 Kde se stl hy? Námi nlezené řešení je správné, le nenšli jsme druhé hy ve hvíli, kdy jsme z hodnoty sin β určovli úhel β. β je úhel z intervlu ( ;π ). Jk je vidět z jednotkové

Více

Deterministický konečný automat

Deterministický konečný automat Deterministický konečný utomt Formálně je deterministický konečný utomt definován jko pětice (Q,Σ,δ,q 0,F) kde: Q je konečná množin stvů Σ je konečná eced δ:q Σ Qjepřechodováfunkce q 0 Qjepočátečnístv

Více

Lineární nerovnice a jejich soustavy

Lineární nerovnice a jejich soustavy teorie řešené úlohy cvičení tipy k mturitě výsledky Lineární nerovnice jejich soustvy Víš, že pojem nerovnice není opkem pojmu rovnice? lineární rovnice má většinou jediné řešení, kdežto lineární nerovnice

Více

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

4. přednáška 22. října Úplné metrické prostory. Metrický prostor (M, d) je úplný, když každá cauchyovská posloupnost bodů v M konverguje. 4. přednášk 22. říjn 2007 Úplné metrické prostory. Metrický prostor (M, d) je úplný, když kždá cuchyovská posloupnost bodů v M konverguje. Příkldy. 1. Euklidovský prostor R je úplný, kždá cuchyovská posloupnost

Více

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

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 2/29 Hodnocení předmětu BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 4/29 Automaty a gramatiky(bi-aag) 1. Základní pojmy Jan Holub Katedra teoretické

Více

Větu o spojitosti a jejich užití

Větu o spojitosti a jejich užití 0..7 Větu o spojitosti jejich užití Předpokldy: 706, 78, 006 Pedgogická poznámk: Při proírání této hodiny je tře mít n pměti, že všechny věty, které studentům sdělujete z jejich pohledu neuvěřitelně složitě

Více

ANALYTICKÁ GEOMETRIE V PROSTORU

ANALYTICKÁ GEOMETRIE V PROSTORU ANALYTICKÁ GEOMETRIE V PROSTORU 3. přednášk Vektorová lger Prvoúhlé souřdnice odu v prostoru Poloh odu v prostoru je vzhledem ke třem osám k soě kolmým určen třemi souřdnicemi, které tvoří uspořádnou trojici

Více

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

Formální jazyky. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 6. března / 48 Formální jzyky M. Kot, Z. Sw (VŠB-TU Ostrv) Úvod do teoretické informtiky 6. březn 2007 1/ 48 Motivce 1: Vyhledávání v textu Potřebujeme řešit následující problém: Máme řdu různých textů(npř. soubory n

Více

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

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je 28 [181105-1236 ] 2.7 Další uzávěrové vlastnosti třídy regulárních jazyků Z předchozích přednášek víme, že třída regulárních jazyků je uzavřena na sjednocení, průnik, doplněk, zřetězení, Kleeneho operaci

Více

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)

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) KAPITOLA 13: Numerická integrce interpolce [MA1-18:P13.1] 13.1 Interpolce Obecně: K dné funkci f hledáme funkci ϕ z dné množiny funkcí M, pro kterou v dných bodech x 0 < x 1

Více

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

Turingovy stroje. Teoretická informatika Tomáš Foltýnek Turingovy stroje Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika strana 2 Opakování z minulé přednášky Jaké znáte algebraické struktury s jednou operací? Co je to okruh,

Více

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

MULTIDIMENSIONÁLNÍ JAZYKY A JEJICH AUTOMATY MULTI-DIMENSIONAL LANGUAGES AND THEIR AUTOMATA VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS MULTIDIMENSIONÁLNÍ

Více

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

56. ročník Matematické olympiády. b 1,2 = 27 ± c 2 25 56. ročník Mtemtické olympiády Úlohy domácí části I. kol ktegorie 1. Njděte všechny dvojice (, ) celých čísel, jež vyhovují rovnici + 7 + 6 + 5 + 4 + = 0. Řešení. Rovnici řešíme jko kvdrtickou s neznámou

Více

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

4.4.1 Sinová věta. Předpoklady: Trigonometrie: řešení úloh o trojúhelnících. 4.4. Sinová vět Předpokldy Trigonometrie řešení úloh o trojúhelnííh. Prktiké využití změřování měření vzdáleností, tringulční síť Tringulční síť je prolém měřit vzdálenosti dvou odů v krjině změříme velmi

Více

3.2.1 Shodnost trojúhelníků I

3.2.1 Shodnost trojúhelníků I 3.2.1 hodnost trojúhelníků I Předpokldy: 3108 v útvry jsou shodné, pokud je možné je přemístěním ztotožnit. v prxi těžko proveditelné hledáme jinou možnost ověření shodnosti v útvry jsou shodné, pokud

Více

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

Jsou to rovnice, které obsahují neznámou nebo výraz s neznámou jako argument logaritmické funkce. Logritmické rovnice Jsou to rovnice, které oshují neznámou neo výrz s neznámou jko rgument ritmické funkce. Zákldní rovnice, 0 řešíme pomocí vzthu. Složitější uprvit n f g potom f g (protože ritmická funkce

Více

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

Zavedení a vlastnosti reálných čísel PŘIROZENÁ, CELÁ A RACIONÁLNÍ ČÍSLA Zvedení vlstnosti reálných čísel Reálná čísl jsou zákldním kmenem mtemtické nlýzy. Konstrukce reálných čísel sice není náplní mtemtické nlýzy, le množin reálných čísel R je pro mtemtickou nlýzu zákldním

Více

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

Formální jazyky a automaty Petr Šimeček Formální jazyky a automaty Petr Šimeček Úvod Formální jazyky a automaty jsou základním kamenem teoretické informatiky. Na počátku se zmíníme o Chomského klasifikaci gramatik, nástroje, který lze aplikovat

Více

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

( t) ( t) ( t) Nerovnice pro polorovinu. Předpoklady: 7306 7.3.8 Nerovnice pro polorovinu Předpokldy: 736 Pedgogická poznámk: Příkld 1 není pro dlší průěh hodiny důležitý, má smysl pouze jko opkování zplnění čsu při zpisování do třídnice. Nemá smysl kvůli němu

Více

+ 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

+ 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 ) INTEGRÁLNÍ POČET FUNKCE JEDNÉ PROMĚNNÉ ) Pojem neurčitého integrálu Je dán funkce Pltí všk tké F tk, y pltilo F ( ) f ( ) Zřejmě F ( ), protože pltí, 5,, oecně c, kde c je liovolná kon- stnt f ( ) nším

Více

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

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto: IB102 Automaty, gramatiky a složitost, 6. 10. 2014 1/29 Regulární výrazy Definice 2.58. Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto: 1 ε, a a pro každé a

Více

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

VIII. Primitivní funkce a Riemannův integrál VIII. Primitivní funkce Riemnnův integrál VIII.2. Riemnnův integrál opkování Vět. Nechť f je spojitá funkce n intervlu, b nechť c, b. Oznčíme-li F (x) = x (, b), pk F (x) = f(x) pro kždé x (, b). VIII.3.

Více

Vztah jazyků Chomskeho hierarchie a jazyků TS

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

Více

Podobnosti trojúhelníků, goniometrické funkce

Podobnosti trojúhelníků, goniometrické funkce 1116 Podonosti trojúhelníků, goniometriké funke Předpokldy: 010104, úhel Pedgogiká poznámk: Zčátek zryhlit α γ β K α' l M γ' m k β' L Trojúhelníky KLM n nšem orázku mjí stejný tvr (vypdjí stejně), le liší

Více

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 2 1 + b2 2.

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 2 1 + b2 2. 7 Komplexní čísl 71 Komplexní číslo je uspořádná dvojice reálných čísel Komplexní číslo = 1, ) zprvidl zpisujeme v tzv lgebrickém tvru = 1 + i, kde i je imginární jednotk, pro kterou pltí i = 1 Číslo 1

Více

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

Až dosud jsme se zabývali většinou reálnými posloupnostmi, tedy zobrazeními s definičním Limit funkce. Zákldní pojmy Až dosud jsme se zbývli většinou reálnými posloupnostmi, tedy zobrzeními s definičním oborem N. Nyní obrátíme svou pozornost n širší třídu zobrzení. Definice.. Zobrzení f, jehož

Více

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

x + F F x F (x, f(x)). I. Funkce dvou více reálných proměnných 8. Implicitně dné funkce. Budeme se zbývt úlohou, kdy funkce není zdná přímo předpisem, který vyjdřuje závislost její hodnoty n hodnotách proměnných. Jeden z možných

Více

Reprezentovatelnost částek ve dvoumincových systémech

Reprezentovatelnost částek ve dvoumincových systémech Reprezentovtelnost částek ve dvoumincových systémech Jn Hmáček, Prh Astrkt Máme-li neomezené množství mincí o předepsných hodnotách, může se stát, že pomocí nich nelze složit některé částky Pro jednoduchost

Více

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

Hyperbola, jejíž střed S je totožný s počátkem soustavy souřadnic a jejíž hlavní osa je totožná Hyperol Hyperol je množin odů, které mjí tu vlstnost, že solutní hodnot rozdílu jejich vzdáleností od dvou dných různých odů E, F je rovn kldné konstntě. Zkráceně: Hyperol = {X ; EX FX = }; kde symolem

Více

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

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

Více

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

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 Algerické výrz V knize přírod může číst jen ten, kdo zná jzk, ve kterém je npsán. Jejím jzkem je mtemtik jejím písmem jsou mtemtické vzorce. (Glileo Glilei) Algerickým výrzem rozumíme zápis, ve kterém

Více

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:

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: .. Substituční metod pro určité integrály.. Substituční metod pro určité integrály Cíle Seznámíte se s použitím substituční metody při výpočtu určitých integrálů. Zákldní typy integrálů, které lze touto

Více

Konstrukce na základě výpočtu I

Konstrukce na základě výpočtu I ..11 Konstrukce n zákldě výpočtu I Předpokldy: Pedgogická poznámk: Původně yl látk rozepsnou do dvou hodin, v první ylo kromě dělení úseček zřzen i čtvrtá geometrická úměrná. Právě její prorání se nestíhlo,

Více

INTEGRACE KOMPLEXNÍ FUNKCE KŘIVKOVÝ INTEGRÁL

INTEGRACE KOMPLEXNÍ FUNKCE KŘIVKOVÝ INTEGRÁL INTEGRAE KOMPLEXNÍ FUNKE KŘIVKOVÝ INTEGRÁL N konci kpitoly o derivci je uveden souvislost existence derivce s potenciálním polem. Existuje dlší chrkterizce potenciálného pole, která nebyl v kpitole o derivci

Více

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

ZÁKLADY. y 1 + y 2 dx a. kde y je hledanou funkcí proměnné x. VARIAČNÍ POČET ZÁKLADY V prxi se čsto hledjí křivky nebo plochy, které minimlizují nebo mximlizují jisté hodnoty. Npř. se hledá nejkrtší spojnice dvou bodů n dné ploše, nebo tvr zvěšeného ln (má minimální

Více

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

LINEÁRNÍ DIFERENCIÁLNÍ ROVNICE 2.ŘÁDU LINEÁRNÍ DIFERENCIÁLNÍ ROVNICE 2.ŘÁDU ZDENĚK ŠIBRAVA 1. Obecné řešení lin. dif. rovnice 2.řádu s konstntními koeficienty 1.1. Vrice konstnt. Příkld 1.1. Njděme obecné řešení diferenciální rovnice (1) y

Více

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

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ží. NEWTONŮV INTEGRÁL V předchozích kpitolách byl popsán inverzní operce k derivování. Ztím nebylo jsné, k čemu tento nástroj slouží. Uvžujme trmvj, která je poháněn elektřinou při brždění vyrábí dynmem elektřinu:

Více

( ) ( ) ( ) Exponenciální rovnice. 17.3. Řeš v R rovnici: 3 + 9 + 27 = ŘEŠENÍ: Postup z předešlého výpočtu doplníme využitím dalšího vztahu: ( ) t s t

( ) ( ) ( ) Exponenciální rovnice. 17.3. Řeš v R rovnici: 3 + 9 + 27 = ŘEŠENÍ: Postup z předešlého výpočtu doplníme využitím dalšího vztahu: ( ) t s t 7. EXPONENCIÁLNÍ ROVNICE 7.. Řeš v R rovnice: ) 5 b) + c) 7 0 d) ( ) 0,5 ) 5 7 5 7 K { } c) 7 0 K d) ( ) b) + 0 + 0 K ( ) 5 0 5, 7 K { 5;7} Strtegie: potřebujeme zíkt tkový tvr rovnice, kd je n obou trnách

Více

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

písemná a ústní část porozumění látce + schopnost formalizace 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

Více

Syntaxí řízený překlad

Syntaxí řízený překlad Syntaxí řízený překlad Překladový automat Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 27. listopadu 2008 Zobecněný překladový automat Překladový automat

Více

2.1 - ( ) ( ) (020201) [ ] [ ]

2.1 - ( ) ( ) (020201) [ ] [ ] - FUNKCE A ROVNICE Následující zákldní znlosti je nezbytně nutné umět od okmžiku probrání ž do konce studi mtemtiky n gymnáziu. Vyždováno bude porozumění schopnost plikovt ne pouze mechnicky zopkovt. Některé

Více

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

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, [161014-1204 ] 11 2.1.35 Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, kde i = 0, 1,..., takto: p 0 q právě tehdy, když bud p, q F nebo p, q F. Dokud i+1 i konstruujeme p

Více

Riemannův určitý integrál.

Riemannův určitý integrál. Riemnnův určitý integrál. Definice 1. Budiž

Více

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 Σ

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 Σ Abecedou se rozumí libovolná konečná množina Σ. Prvky abecedy nazýváme znaky (symboly) Slovo (řetězec) v nad abecedou Σ je libovolná konečná posloupnost znaků této abecedy. Prázdné posloupnosti znaků odpovídá

Více

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

Automaty a gramatiky. Uzávěrové vlastnosti v kostce R J BKJ DBKJ. Roman Barták, KTIML. Kvocienty s regulárním jazykem 11 Automaty a gramatiky Roman Barták, KTIML bartak@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Uzávěrové vlastnosti v kostce Sjednocení Průnik Průnik s RJ Doplněk Substituce/ homomorfismus Inverzní

Více

Integrály definované za těchto předpokladů nazýváme vlastní integrály.

Integrály definované za těchto předpokladů nazýváme vlastní integrály. Mtemtik II.5. Nevlstní integrály.5. Nevlstní integrály Cíle V této kpitole poněkud rozšíříme definii Riemnnov určitého integrálu i n přípdy, kdy je integrční oor neohrničený (tj. (, >,

Více

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

Matice. a B =...,...,...,...,..., prvků z tělesa T (tímto. Definice: Soubor A = ( a. ...,..., ra Definice: Soubor A ( i j ) Mtice 11 12 1n 21 22 2n m 1 m2 prvků z těles T (tímto tělesem T bude v nší prxi nejčstěji těleso reálných čísel R resp těleso rcionálních čísel Q či těleso komplexních čísel

Více

Spojitost funkce v bodě, spojitost funkce v intervalu

Spojitost funkce v bodě, spojitost funkce v intervalu 10.1.6 Spojitost funkce v bodě, spojitost funkce v intervlu Předpokldy: 10104, 10105 Př. 1: Nkresli, jk funkce f ( x ) dná grfem zobrzí vyznčené okolí bodu n ose x n osu y. Poté nkresli n osu x vzor okolí

Více

10. Suffixové stromy 1 2014-01-23

10. Suffixové stromy 1 2014-01-23 10. Suffixové stromy V této kpitole popíšeme jednu pozoruhodnou dtovou strukturu, pomocí níž dokážeme prolémy týkjící se řetězců převádět n grfové prolémy řešit je tk v lineárním čse. Řetězce, trie suffixové

Více

( a) Okolí bodu

( a) Okolí bodu 0..5 Okolí bodu Předpokldy: 40 Pedgogická poznámk: Hodin zjevně překrčuje možnosti většiny studentů v 45 minutách. Myslím, že nemá cenu přethovt do dlší hodiny, příkldy s redukovnými okolími nejsou nutné,

Více

8. cvičení z Matematiky 2

8. cvičení z Matematiky 2 8. cvičení z Mtemtiky 2 11.-1. dubn 2016 8.1 Njděte tři pozitivní čísl jejichž součin je mximální, jejichž součet je roven 100. Zdání příkldu lze interpretovt tké tk, že hledáme mximální objem kvádru,

Více

Základy teorie matic

Základy teorie matic Zákldy teorie mtic 1. Pojem mtice nd číselným tělesem In: Otkr Borůvk (uthor): Zákldy teorie mtic. (Czech). Prh: Acdemi, 1971. pp. 9--12. Persistent URL: http://dml.cz/dmlcz/401328 Terms of use: Akdemie

Více

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

VIII. Primitivní funkce a Riemannův integrál VIII. Primitivní funkce Riemnnův integrál VIII.2. Primitivní funkce Definice. Nechť funkce f je definován n neprázdném otevřeném intervlu I. Řekneme, že funkce F : I R je primitivní funkce k f n intervlu

Více

Vlastnosti regulárních jazyků

Vlastnosti regulárních jazyků 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

Více

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.

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. Přednášk 1 Určitý integrál V této přednášce se budeme zbývt určitým integrálem. Eistuje několik definic určitého integrálu funkce jedné reálné proměnné. Jednotlivé integrály se liší v tom, jké funkce lze

Více

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

V předchozích kapitolách byla popsána inverzní operace k derivování. Zatím nebylo jasné, k čemu tento nástroj slouží. NEWTONŮV INTEGRÁL V předchozích kpitolách byl popsán inverzní operce k derivování Ztím nebylo jsné, k čemu tento nástroj slouží Uvžujme trmvj, která je poháněn elektřinou při brždění vyrábí dynmem elektřinu:

Více

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

Půjdu do kina Bude pršet Zajímavý film. Jedině poslední řádek tabulky vyhovuje splnění podmínky úvodního tvrzení. 4. Booleov lger Booleov lger yl nvržen v polovině 9. století mtemtikem Georgem Boolem, tehdy nikoliv k návrhu digitálníh ovodů, nýrž jko mtemtikou disiplínu k formuli logikého myšlení. Jko příkld použijeme

Více

2.2.9 Grafické řešení rovnic a nerovnic

2.2.9 Grafické řešení rovnic a nerovnic ..9 Grfické řešení rovnic nerovnic Předpokldy: 0, 06 Př. : Řeš početně i grficky rovnici x + = x. Početně: Už umíme. x + = x x = x = K = { } Grficky: Kždá ze strn rovnice je výrzem pro lineární funkci

Více

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.

je jedna z orientací určena jeho parametrizací. Je to ta, pro kterou je počátečním bodem bod ϕ(a). Im k.b.(c ) ( C ) (C ) Obr Obr. 3.5. 10. Komplexní funkce reálné proměnné. Křivky. Je-li f : (, b) C, pk lze funkci f povžovt z dvojici (u, v), kde u = Re f v = Im f. Rozdíl proti vektorovému poli je v tom, že jsou pro komplexní čísl definovány

Více

Úlohy krajského kola kategorie A

Úlohy krajského kola kategorie A 67. ročník mtemtické olympiády Úlohy krjského kol ktegorie A 1. Pvel střídvě vpisuje křížky kolečk do políček tbulky (zčíná křížkem). Když je tbulk celá vyplněná, výsledné skóre spočítá jko rozdíl X O,

Více

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

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 2. Funkční řd Studijní text 2. Funkční řd V předcházející kpitole jsme uvžovli řd, jejichž člen bl reálná čísl. Nní se budeme zbývt studiem obecnějšího přípdu, kd člen řd tvoří reálné funkce. Definice

Více

4.4.3 Kosinová věta. Předpoklady:

4.4.3 Kosinová věta. Předpoklady: 443 Kosinová vět Předpokldy 44 Př Rozhodni zd dokážeme spočítt zývjíí strny úhly u všeh trojúhelníků zdnýh pomoí trojie prvků (délek strn velikostí úhlů) V sinové větě vystupují dvě dvojie strn-protější

Více

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

Z. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu / 43 Zásobníkové automaty Z. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu 2018 1/ 43 Zásobníkový automat Chtěli bychom rozpoznávat jazyk L = {a i b i i 1} Snažíme se navrhnout zařízení (podobné konečným

Více

P2 Číselné soustavy, jejich převody a operace v čís. soustavách

P2 Číselné soustavy, jejich převody a operace v čís. soustavách P Číselné soustvy, jejich převody operce v čís. soustvách. Zobrzení čísl v libovolné číselné soustvě Lidé využívjí ve svém životě pro zápis čísel desítkovou soustvu. V této soustvě máme pro zápis čísel

Více

DERIVACE A INTEGRÁLY VE FYZICE

DERIVACE A INTEGRÁLY VE FYZICE DOPLŇKOVÉ TEXTY BB0 PAVEL SCHAUER INTERNÍ MATERIÁL FAST VUT V BRNĚ DERIVACE A INTEGRÁLY VE FYZICE Obsh Derivce... Definice derivce... Prciální derivce... Derivce vektorů... Výpočt derivcí... 3 Algebrická

Více

2.7.7 Obsah rovnoběžníku

2.7.7 Obsah rovnoběžníku 77 Osh rovnoěžníku Předpokldy: 00707 Osh (znčk S): kolik míst útvr zujímá, počet čtverečků 1 x 1, které se do něj vejdou, kolik koerce udeme muset koupit, ychom pokryli podlhu, Př 1: Urči osh čtverce o

Více

2.8.5 Lineární nerovnice s parametrem

2.8.5 Lineární nerovnice s parametrem 2.8.5 Lineární nerovnice s prmetrem Předpokldy: 2208, 2802 Pedgogická poznámk: Pokud v tom necháte studenty vykoupt (což je, zdá se, jediné rozumné řešení) zere tto látk tk jednu půl vyučovcí hodiny (první

Více

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

R n výběr reprezentantů. Řekneme, že funkce f je Riemannovsky integrovatelná na Mtemtik II. Určitý integrál.1. Pojem Riemnnov určitého integrálu Definice.1.1. Říkáme, že funkce f( x ) je n intervlu integrovtelná (schopná integrce), je-li n něm ohrničená spoň po částech spojitá.

Více

Definice limit I

Definice limit I 08 Definice limit I Předpokld: 006 Pedgogická poznámk: N úvod je třeb upozornit, že tto hodin je ze strn studentů snd nejvíce sbotovnou látkou z celé studium (podle rekcí 4B009) Jejich ochot brát n vědomí

Více

Přednáška 9: Limita a spojitost

Přednáška 9: Limita a spojitost 4 / XI /, 5: Přednášk 9: Limit spojitost V minulých přednáškách jsme podrobněji prozkoumli důležitý pojem funkce. Při řešení konkrétních problémů se nše znlosti (npř. nměřená dt) zpisují jko funkční hodnoty

Více

3. APLIKACE URČITÉHO INTEGRÁLU

3. APLIKACE URČITÉHO INTEGRÁLU APLIKACE URČITÉHO INTEGRÁLU APLIKACE URČITÉHO INTEGRÁLU V mtemtice, le zejmén v přírodních technických vědách, eistuje nepřeerné množství prolémů, při jejichž řešení je nutno tím či oním způsoem použít

Více

m n. Matice typu m n má

m n. Matice typu m n má MATE ZS KONZ B Mtice, hodnost mtice, Gussův tvr Mtice uspořádné schém reálných čísel: m m n n mn Toto schém se nzývá mtice typu m řádků n sloupců. m n. Mtice typu m n má Oznčujeme ji A, B,někdy používáme

Více

3.2. LOGARITMICKÁ FUNKCE

3.2. LOGARITMICKÁ FUNKCE .. LOGARITMICKÁ FUNKCE V této kpitole se dovíte: jk je definován ritmická funkce (ritmus) jké má ákldní vlstnosti; důležité vorce pro práci s ritmickou funkcí; co nmená ritmovt odritmovt výr. Klíčová slov

Více

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

Formální jazyky a gramatiky Teorie programovacích jazyků Formální jazyky a gramatiky Teorie programovacích jazyků doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Připomenutí základních pojmů ABECEDA jazyk je libovolná podmnožina

Více

7.5.8 Středová rovnice elipsy

7.5.8 Středová rovnice elipsy 758 Středová rovnice elips Předpokld: 7501, 7507 Př 1: Vrchol elips leží v odech A[ 1;1], [ 3;1], [ 1;5], [ 1; 3] elips souřdnice jejích ohnisek Urči prmetr Zdné souřdnice už n první pohled vpdjí podezřele,

Více

OBECNÝ URČITÝ INTEGRÁL

OBECNÝ URČITÝ INTEGRÁL OBECNÝ URČITÝ INTEGRÁL Zobecnění Newtonov nebo Riemnnov integrálu se definují různým způsobem dostnou se někdy různé, někdy stejné pojmy. V tomto textu bude postup volen jko zobecnění Newtonov integrálu,

Více

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

Zkoušku snadno provedeme tak, že do soustavy (1), která je ekvivalentní dané soustavě rovnic, dosadíme příslušné hodnoty s a p. 1. V oboru reálných čísel řešte soustvu rovnic x 2 xy + y 2 = 7, x 2 y + xy 2 = 2. (J. Földes) Řešení. Protože druhou rovnici můžeme uprvit n tvr xy(x + y) = 2, uprvme podobně i první rovnici: (x + y)

Více

3.1.3 Vzájemná poloha přímek

3.1.3 Vzájemná poloha přímek 3.1.3 Vzájemná poloh přímek Předpokldy: 3102 Dvě různé přímky v rovině mximálně jeden společný od Jeden společný od průsečík různoěžné přímky (různoěžky) P Píšeme: P neo = { P} Žádný společný od rovnoěžné

Více

Naproti tomu gramatika je vlastně soupis pravidel, jak

Naproti tomu gramatika je vlastně soupis pravidel, jak 1 Kapitola 1 Úvod V přednášce se zaměříme hlavně na konečný popis obecně nekonečných množin řetězců symbolů dané množiny A. Prvkům množiny A budeme říkat písmena, řetězcům (konečným posloupnostem) písmen

Více

(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

(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 Úloh č. 3 Měření ohniskové vzdálenosti tenkých čoček 1) Pomůcky: optická lvice, předmět s průhledným milimetrovým měřítkem, milimetrové měřítko, stínítko, tenká spojk, tenká rozptylk, zdroj světl. ) Teorie:

Více

Nerovnosti a nerovnice

Nerovnosti a nerovnice Nerovnosti nerovnice Doc. RNDr. Leo Boček, CSc. Kurz vznikl v rámci projektu Rozvoj systému vzdělávcích příležitostí pro ndné žáky studenty v přírodních vědách mtemtice s využitím online prostředí, Operční

Více

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

Integrál a jeho aplikace Tomáš Matoušek Integrál jeho plikce Tomáš Mtoušek Křivk Definice.(Vektorováfunkce) Funkci ϕ:r R n,kteráreálnémučíslupřiřzuje n-tici reálných čísel(vektor), nzýváme funkcí vektorovou. Lze ji tké popst po složkáchjko ϕ(t)=(ϕ

Více