2 Formální jazyky a gramatiky
|
|
- Libor Švec
- před 9 lety
- Počet zobrazení:
Transkript
1 2 Formální jazyky a gramatiky 2.1 Úvod Teorie formálních gramatik a jazyků je důležitou součástí informatiky. Její využití je hlavně v oblasti tvorby překladačů, kompilátorů. Vznik teorie se datuje přibližně do roku 1956, kdy matematik polského původu Noam Chomsky na základě studia a výzkumu zákonitostí v přirozených jazycích vytvořil matematický model gramatiky. V dalším období se ukázala úzká souvislost mezi teorií formálních jazyků a teorií automatů. Chomsky vytvořil klasifikaci formálních jazyků a gramatik, přičemž je rozdělil, jak si ukážeme v této kapitole, do čtyř skupin. Co je to vlastně jazyk? Naučný Websterův slovník jej definuje jako soubor slov a metod skládání slov, které chápe a používá dostatečně velká společnost lidí. S touto definici samozřejmě pro naše účely nevystačíme. Pro potřeby matematické teorie jazyků je třeba definovat formální jazyk abstraktně jako matematický systém. 2.2 Základní pojmy V této části uvedeme základní pojmy z teorie formálních jazyků a gramatik. Podobně jako je tomu u přirozených jazyků, budeme i ve formálních jazycích používat pojmy jako jsou písmeno, slovo, věta. Abeceda A je konečná množina symbolů, ze kterých se v daném jazyku vytváření vyšší významové celky. Příklad 1. {a, b, c, d,... z, A, B, C,... Z} písmena (velké i malé) {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} číslice {+ - * /., : = { } [ ] ( ) < >} speciální znaky {and, array, begin, case,..., var, while, with} vyhrazené slova Pascalu Řetězec w je libovolná konečná posloupnost symbolů dané abecedy A. Délka řetězce w je definovaná jako počet symbolů v řetězci w. V jazyku je možné teoreticky odvodit různé řetězce různé délky až po nekonečné řetězce. Z praktických důvodů mají však význam řetězce konečné délky. Zvláštní postavení má tzv. prázdný řetězec. Prázdny řetězec ε je řetězec s nulovou délkou. Obrácený řetězec wr je řetězec obsahující symboly původního řetězce v opačném pořadí. Pokud máme řetězec w = a 1 a 2 a 3... a n, tak k němu obrácený řetězec je w R = a n a n-1... a 3 a 2 a 1 Příklad 2. Nechť je řetězec x 1 = automobil jeho délka je x 1 = 9 obrácený řetězec x R 1 = libomotua Zřetězení je operace. definovaná na množině řetězců dané abecedy takto: Pokud u = a 1 a 2... a k, v = b 1 b 2... b l jsou řetězce nad danou abecedou, tak u.v = a 1 a 2... a k b 1 b 2... b l je nový řetězec uv. Zápisy u.v a uv jsou ekvivalentní. Příklad 3. Nechť x 1 = abc a x 2 = de. Potom x 1.x 2 = abcde a x 2.x 1 = deabc. Pro pojmy v následujících definicích použijeme řetězce x, y a z nad určitou abecedou. Řetězce w 1 =xy, w 2 =yz a w 3 =xyz jsou řetězce, které vznikly jejich zřetězením. Řetězec x je prefix nebo předpona řetězce w 1 i řetězce w 3. Řetězec y je postfix nebo přípona řetězce w 2. Řetězec x, y i z jsou podřetězce řetězců w 1, w 2 i w 3. Množinu všech řetězců nad abecedou A (t.j. řetězců, ve kterých se nacházejí jen znaky, které jsou prvky abecedy A) budeme označovat A * :41 Benedikovič 1 / 6
2 Množinu všech řetězců bez prázdného řetězce nad abecedou budeme označovat A +. Příklad 4. Nech x = abc. prefixy - ε, a, ab, abc postfixy - ε, c, bc, abc podreťazce - ε, a, b, c, ab, bc, abc Nech A={a, b, c}, potom: A * - {ε, a, b, c, aa, ab, ac, ba, bb, bc, ca, cb, cc, aaa, aab,...} A + - {a, b, c, aa, ab, ac, ba, bb, bc, ca, cb, cc, aaa, aab,...} Na tomto místě máme všechny potřebné informace k tomu, abychom uvedli první, zatím ještě příliš všeobecnou definici formálního jazyka. Nechť A je abeceda. Potom formální jazyk nad abecedou A definujeme jako libovolnou podmnožinu množiny A *. Tato definice však umožňuje popsat samotný jazyk takovým způsobem, že vyjmenujeme všechny možné řetězce, které mají být prvky daného jazyka. Představme si však případ, kdy bychom měli tímto způsobem definovat nějaký programovací jazyk (Pascal nebo C a pod.). Vidíme, že pro tyto účely je tato základní definice prakticky nepoužitelná. Musíme hledat nějaký mechanismus, který daný jazyk úplným způsobem popíšeme. Z uvedených definicí vidíme, že abeceda i jazyk jsou množiny. Můžeme na ní tedy použít množinové operace. Nechť tedy platí, že A 1 a A 2 jsou abecedy a L 1 A * 1 a L 2 A * 2 jsou jazyky, potom A 1 A 2 = { x x A 1 x A 2 } L 1 L 2 = { y y L 1 y L 2 } A 1 A 2 = { x x A 1 x A 2 } L 1 L 2 = { y y L 1 y L 2 } A 1 - A 2 = { x x A 1 x A 2 } L 1 - L 2 = { y y L 1 y L 2 } Nad jazykem se setkáváme i s následujícími operacemi: Nechť L 1 a L 2 jsou jazyky. Potom jejich zřetězením voláme jazyk L s vlastnostmi: L = { xy x L 1 y L 2 } Příklad 5. L 1 = { a, b,... z, A,... Z }, L 2 = { a,... z, A,...Z, 0, 1,... 9 }*. L = L 1 L 2 je jazyk řetězců složený z písmen a číslic, které začínají písmenem. Pokud L je jazyk, tak jeho n-tou mocninu definujeme takto: L 0 = { ε } L n = L.L n-1 pre n 1 Uzávěr jazyka L je množina L * = L i pro i 0 Pozitivní uzávěr jazyka L je množina L + = L i pro i Gramatika Již jsme zmínili, že první definice formálního jazyka uvedená v předcházející části není vhodná pro praktické použití v souvislosti s popisem nějakého programovacího jazyka. Vyžaduje vyjmenování všech možných řetězců. Potřebujeme vytvořit nějaký mechanismus vyčerpávajícím způsobem popisující daný jazyk. Tímto mechanismem je tzv. gramatika. Představuje systém syntaktických pravidel, pomocí kterého je možné vygenerovat libovolný řetězec jazyka, případně je možné zjistit, či daný řetězec do jazyka patří nebo ne. V definici gramatiky se vyskytují následující pojmy: Terminál nebo terminální symbol je prvotní symbol daného jazyka. Jde o symbol z množiny symbolů jazyka, který už v procesu analýzy nenahrazujeme. Jde o cílový termín, který je součástí nějakého řetězce jazyka. Neterminál nebo neterminální symbol je symbol definovaný pomocí pravidel jazyka :41 Benedikovič 2 / 6
3 Začátečný symbol (také startovací) je jeden z neterminálních symbolů, ze kterého začíná generování vět jazyka, případně analýza věty. Přepisovací pravidlo nebo vytvářecí pravidlo, produkce je předpis, který určuje způsob náhrady neterminálu jiným podřetězcem. Následuje všeobecná definice gramatiky, na základě které se vykonává analýza věty, t.j. zjišťuje se, zda analyzovaná věta ( může to být například program v programovacím jazyce) vyhovuje syntaktickým pravidlům jazyka. Gramatika určuje jen syntaxi jazyka přípustnou strukturu vět. Významem věty je zabývá sémantika. Syntakticky správná věta ještě nemusí být správná z významového, sémantického hlediska. Gramatika je definovaná jako čtveřice G = ( N, T, P, S ), kde N konečná množina neterminálních symbolů, T konečná množina terminálních symbolů, N T =, S začáteční symbol, S N, (musí byť pouze jeden!). P konečná množina přepisovacích pravidel z (N T) * N (N T) * x (N T) * Stručně si vysvětlíme význam a použití symbolů v definice. Pro odlišení neterminálů (množiny N) od terminálů (množina T) často používáme v praxi zápis neterminálu uzavřeného v lomených závorkách, například <identifikátor>. Slovo identifikátor se může vyskytnout i přímo jako součást řetězce, tedy jako terminál. Pokud je uvedené v ostrých závorkách, potom vyjadřuje neterminál zastupující celou množinu pojmů splňujících určité vlastnosti. O které konkrétní pojmy jde, určují pravidla z množiny P. Lomené závorky použijeme pro jasné odlišení terminálů a neterminálů. Tam můžeme použít stejné slovo ve dvou významech a přitom zaručíme požadovanou disjunktnost množin N a T. Přepisovací pravidla jsou základem pro generování vět jazyka. V definici gramatiky jsou vyjádřené jako kartézský součin. Jeden konkrétní případ kartézského součinu množiny P představuje přepisovací pravidlo, ve kterém na levé musí být alespoň jeden neterminál, kvůli kterému se náhrada vykonává. Před ním a za ním můžou (ale nemusí) být řetězce složené z terminálů a neterminálů. Na pravé straně pravidla je nějaký řetězec terminálů a neterminálů (obecně může být i prázdný). Pro levé a pravé strany přepisovacího pravidla, produkce budeme někdy používat zkratky: LHS z anglického left hand side a RHS right hand side. Nad množinou řetězců terminálů a neterminálů definujeme relaci derivace nebo relaci odvození. Mějme gramatiku G = ( N, T, S, P ). Relace odvození - derivace ( značíme ji G ) definovaná nad množinou (N T) * je definovaná takto: Pokud αβγ (N T) * a αδγ (N T) *, potom dané řetězce jsou relací αβγ G αδγ tehdy, kdy v množině P existuje přepisovací pravidlo β δ Můžeme též používat následující pojmy. V případě, že pro řetězce α a β platí, že jsou v relaci derivace α G β, hovoříme také, že z α můžeme přímo derivovat β, nebo β můžeme derivovat z α. Inverzní relaci k derivaci nazýváme redukce. Tuto relaci používáme například při analýze, ve které vycházíme z analyzovaného řetězce a postupnými redukcemi se snažíme dosáhnout začáteční symbol (v tomto případě ho můžeme nazývat cílový symbol) a tím vyhlásit původní řetězec za přijatý. Nechť G = ( N, T, S, P ) je gramatika a mějme řetězce α i (N T) * pro i = 0, 1, 2,... k. Říkáme, že α k se dá derivovat z α 0, pokud platí α i G α i+1 pro i = 0, 1, 2,... k-1. Posloupnost řetězců α 0, α 1,... α k nazýváme odvození - derivace α k z α 0 Jde vlastně o posloupnost řetězců složených z terminálů a neterminálů dané gramatiky. Následující definice nám říká o skutečnosti, že ne každý řetězec (!!!) skládající se jen ze symbolů (terminálů a neterminálů) gramatiky také do této gramatiky patří! Množinu řetězců α (N T) * gramatiky G = ( N, T, S, P ), které jsou derivovatelné ze začátečního symbolu S nazýváme množina větních forem. Formální zápis: V = { α S * α, α (N T) * } :41 Benedikovič 3 / 6
4 Teď máme pohromadě vlastně všechny potřebné pojmy pro to, abychom uvedli definici jazyka, která popisuje množinu vlastních řetězců pomocí stejného systému pravidel gramatiky. Nechť G = ( N, T, S, P ) je gramatika. Jazyk L(G) specifikovaný gramatikou G je množina řetězců složených pouze z terminálních symbolů, pro které existuje derivace ze začátečního symbolu gramatiky. Formální zápis: L(G) = { w S * w, w T * } Všimněte si zásadního rozdílu od definice větné formy (vidět ho i ve formálním zápise). Řetězec jazyka je také větnou formou, ale opačně to neplatí. 2.4 Zápis syntaxe pravidel V dalším textu budeme používat následující dohodu pro zápis pojmů: Pojem Všeobecný popis Konkrétnejší popis a) neterminální symboly velká latinská písmena A, B, C, název terminálu uzavřený v lomených závorkách ve tvaru <jméno neterminálu> b) terminální symboly malá latinská písmena a, b, c,... přímo koncové symboly popisovaného jazyka c) slova složená z terminálních malá řecká písmena α, β, γ,... skutečný řetězec a neterminálních symbolů d) slova složená jen malá latinská písmena, pokud to skutečný řetězec z terminálních symbolů z kontextu není jasné, s upozorněním, že je to řetězec e) přepisovací pravidla ve tvaru α β BNF, Conwayův diagram (viz dále) f) přepisovací pravidla se stejnou pravou stranou α β 1, α β 2, α β 3,... α β 1 budeme zapisovat jako α β 1 β 2 β 3... β n Backusova Naurova forma, BNF Zápis pravidel v tomto systémů je charakterizován tímto tvarem: <neterminální symbol> ::= α 1 α 2... α n kde všechny α i jsou řetězce neterminálních a terminálních symbolů nebo prázdný řetězec, kterými je definován řetězec uvedený na LHS. Neterminál na levé straně pravidla LHS je jednotka, kterou definujeme řetězcem RHS. Metasymbol ::= můžeme číst například jako definujeme jako.... Tento systém je určen na popis přepisovacích pravidel gramatiky. Je to vlastně také jazyk. Protože však popisuje vlastnosti jazyka určeného pro popis jiného jazyka, budeme mu pracovně říkat metajazyk, jeho symbolům metasymboly a jeho případným předpisům metapříkazy. V BNF použijeme následující metasymboly: metasymbol: význam metasymbolu: ::= definice symbol nahrazení levé strany (LHS) pravou stranou pravidla (RHS) při derivaci (= definuj jako... ) alternativa metaoperátor výběru jedné varianty z uvedených pravých stran (= nebo ). sekvence metaoperátor zřetězení operandů v zápise pravidla (= následuje") * mocnina metaoperátor opakování výskytů metaoperandu, (..) prázdného počtu výskytů (= opakuj ) ( ) Změna priority metaoperátorů < > Čitelné vyjádření symbolu, který nazýváme neterminál + Mocnina typu alespoň jedenkrát :41 Benedikovič 4 / 6
5 Metaoperátor opakování metaoperandů s povinným výskytem (= opakuj alespoň jednou ) Příklad 6. <identifikátor> ::= <písmeno>. ( <písmeno> <číslice> ) * <celé číslo> ::= ( <znaménko> ε ). <číslice >. <číslice> * Zápis <číslice >. <číslice> * možno zkrátit na: <číslice> + ( znaky hvězdička a plus) V uvedeném příkladě je definovaný identifikátor pro většinu běžných programovacích jazyků. Na pravé straně je zřetězením. určené, že identifikátor začíná písmenem, za kterým následuje libovolný počet znaků s tím, že každý z nich je buď písmeno nebo číslice. Metaoperátor * vyvolává opakované použití daného metaoperandu (možný je i prázdný řetězec). Mocnina má vyšší prioritu než alternativa, proto je nutné použít závorky pro změnu priority zpracovávání metaoperátorů. Zamyslete se nad případem, ve kterém by jsme s touto definicí vynechali závorky. Priorita metaoperátorů: * + nejvyšší priorita. nejnižší priorita V současnosti se používá pro zápis syntaxe i rozšířená verze Backusovej Naurovej formy(ebnf), ve které jsou na místo metaoperátoru * používají složené závorky {... } s následujícím významem: BNF EBNF význam α* { α } libovolný počet opakování řetězce α vrácení prázdného řetězce --- { α } n m řetězec α se může vyskytnout od m-krát do n-krát --- { α } 1 [ α ] Oba dva zápisy jsou ekvivalentní Řetězec α se vyskytuje maximálně 1-krát Definice identifikátoru z předcházejícího příkladu bude v zápise EBNF vypadat takto: Příklad 7. <identifikátor> ::= <písmeno>. { <písmeno> <číslice> } <celé číslo> ::= [ <znaménko> ]. <číslice >. { <číslice> } < znamienko > ::= ( + - ) Syntaktický diagram Conwayův diagram Grafické vyjádření vztahů mezi neterminály a terminály uvnitř přepisovacího pravidla. Při zobrazování platí následující pravidla: terminální symbol: a (kroužek alebo ovál) alternativa: a b... A a neterminální symbol: A ĺ A a b... A zřetězení: ab... c a b... c mocnina * : α * mocnina + : α + α α :41 Benedikovič 5 / 6
6 Příklad 8. Na tomto příkladu jsou demonstrovány pravidla z předcházejícího příkladu: identifikátor Písmeno celé číslo Číslica Písmeno Znamienko Číslica 2.5 Klasifikace gramatik Gramatiky je možné z hlediska podmínek, kladených na přepisovací pravidla rozdělit do více skupin. Umožňuje to při přípravě analyzátoru použít více, či méně úspěšně, příslušné techniky a nástroje. V současnosti se nejčastěji používá rozdělení gramatik podle Chomského. Vycházíme z definice gramatiky, přičemž Chomského klasifikace rozlišuje čtyři skupiny gramatik: Typ Název Pravidlo Omezující podmínky 0 Frázová-neomezená α β bez omezení 1 Kontextová α β α (N T) * N (N T) * a β (N T) + a platí α β 2 Bezkontextová A β A N ; α (N T) * 3 Regulární A β A N ; β = bb nebo β = b, ( kde b T a B N ) Poznámky k tabulce: ( LHS=levá, RHS=pravá strana pravidla ) 1) U kontextové gramatiky existuje alespoň jedno pravidlo, ve kterém je na levé straně (LHS) řetězec složený z více symbolů, přičemž v každém pravidle musí být v LHS jeden neterminál A, kterého se pravidlo týká. Před ním nebo za ním můžou být nějaké neprázdné podřetězce α, β, přičemž derivace neterminálu se vykonává jen v kontextu s nimi. LHS tohoto pravidla nechť je tedy ve tvaru αaβ, přičemž alespoň jeden z podřetězců α, β není prázdný. Na pravé straně (RHS) každého pravidla je neprázdný řetězec terminálů a neterminálů. Na pravé straně pravidla musí být alespoň tolik symbolů jako na levé straně. Žádné pravidlo tedy nesmí(!) větní formu zkracovat! 2) Bezkontextová gramatika se vyznačuje vlastností, že v každém pravidle je na LHS samostatně stojící neterminál. Na RHS je libovolný řetězec terminálů a neterminálů (...) prázdného řetězce. 3) V regulární gramatice existují jen pravidla s jedním neterminálem na LHS a jednoduchou pravou stranou. Na RHS může být buď samostatně umístěný jeden terminál nebo jeden terminál následovaný jedním terminálem. Na tomto rozdělení gramatik si můžeme všimnout, že platí: každá regulární gramatika je současně bezkontextovou, každá bezkontextová kontextovou a každá kontextová je gramatikou bez omezení. Obráceně to ovšem neplatí! Gramatika je systémem pravidel, pomocí kterých je možné odvozovat řetězce vyhovující této gramatice. Proto je součástí jazyka, který je charakterizovaný vlastnostmi své gramatiky. Jazyk nazýváme regulární, resp. bezkontextový, resp. kontextový, resp. bez omezení (frázový), pokud jej můžeme generovat příslušnou gramatikou (regulární, resp. bezkontextovou, resp....) Vztah mezi jednotlivými typy jazyků je analogický vztahu mezi jeho gramatikami. Ještě něco pro nepozorné gramatika je systém pravidel, jazyk je množina řetězců :41 Benedikovič 6 / 6
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
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é
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
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
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,
Jednoznačné a nejednoznačné gramatiky
BI-AAG (2011/2012) J. Holub: 11. Bezkontextové gramatiky p. 2/36 Jednoznačné a nejednoznačné gramatiky BI-AAG (2011/2012) J. Holub: 11. Bezkontextové gramatiky p. 4/36 Automaty a gramatiky(bi-aag) 11.
Teorie množin. Čekají nás základní množinové operace kartézské součiny, relace zobrazení, operace. Teoretické základy informatiky.
Teorie množin V matematice je všechno množina I čísla jsou definována pomocí množin Informatika stojí na matematice Znalosti Teorie množin využijeme v databázových systémech v informačních systémech při
Úvod do informatiky. Miroslav Kolařík
Úvod do informatiky přednáška pátá Miroslav Kolařík Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008 a dle učebního textu R. Bělohlávka a V. Vychodila: Diskrétní
Programovací jazyk Pascal
Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce
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á
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.
BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 2/41 Formální překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 4/41 Automaty a gramatiky(bi-aag) 5. Překladové konečné
Bezkontextové jazyky. Bezkontextové jazyky 1 p.1/39
Bezkontextové jazyky Bezkontextové jazyky 1 p.1/39 Jazyky typu 2 Definice 4.1 Gramatika G = (N, Σ, P, S) si nazývá bezkontextovou gramatikou, jestliže všechna pravidla z P mají tvar A α, A N, α (N Σ) Lemma
Virtuální počítač. Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor. PGS K.
Virtuální počítač Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor Virtuální počítač Překladač Překladač : Zdrojový jazyk Cílový jazyk Analytická část:
UČEBNÍ TEXTY VYSOKÝCH ŠKOL. Prof. RNDr. Milan Češka, CSc. Gramatiky a jazyky
UČEBNÍ TEXTY VYSOKÝCH ŠKOL Vysoké učení technické v Brně Fakulta elektrotechniky a informatiky Prof. RNDr. Milan Češka, CSc. Gramatiky a jazyky Tato skripta jsou určena pro kurs Základy matematické informatiky
Bezkontextové jazyky 2/3. Bezkontextové jazyky 2 p.1/27
Bezkontextové jazyky 2/3 Bezkontextové jazyky 2 p.1/27 Transformace bezkontextových gramatik Bezkontextové jazyky 2 p.2/27 Ekvivalentní gramatiky Definice 6.1 Necht G 1 a G 2 jsou gramatiky libovolného
Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace
RELACE Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace slouží k vyjádření vztahů mezi prvky nějakých množin. Vztahy mohou být různé povahy. Patří sem vztah býti potomkem,
Formální jazyky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 2. března / 32
Formální jazyky Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 2. března 2017 1/ 32 Abeceda a slovo Definice Abeceda je libovolná neprázdná konečná množina symbolů(znaků). Poznámka: Abeceda se často
Syntaxí řízený překlad
Syntaxí řízený překlad Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 27. listopadu 2008 Definice Překlad z jazyka L 1 do jazyka L 2 je definován množinou
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
Množiny, relace, zobrazení
Množiny, relace, zobrazení Množiny Množinou rozumíme každý soubor určitých objektů shrnutých v jeden celek. Zmíněné objekty pak nazýváme prvky dané množiny. Pojem množina je tedy synonymem pojmů typu soubor,
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
Vysoké učení technické v Brně Fakulta informačních technologií. Gramatiky nad volnými grupami Petr Blatný
Vysoké učení technické v Brně Fakulta informačních technologií Gramatiky nad volnými grupami 2005 Petr Blatný Abstrakt Tento dokument zavádí pojmy bezkontextové gramatiky nad volnou grupou a E0L gramatiky
Matematická logika. Miroslav Kolařík
Matematická logika přednáška šestá Miroslav Kolařík Zpracováno dle textu R. Bělohlávka: Matematická logika poznámky k přednáškám, 2004. a dle učebního textu R. Bělohlávka a V. Vychodila: Diskrétní matematika
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.
Kapitola 6 LL gramatiky 6.1 Definice LL(k) gramatik Definice 6.1. Necht G = (N, Σ, P, S) je CFG, k 1 je celé číslo. Definujme funkci FIRST G k : (N Σ) + P({w Σ w k}) předpisem FIRST G k (α) = {w Σ (α w
1) Sekvenční a paralelní gramatiky
A. Kapitoly z teorie formálních jazyků a automatů c Milan Schwarz (006) ) Sekvenční a paralelní gramatiky Derivace v gramatikách: Sekvenční postup sekvenční gramatiky (např. gramatiky v Chomského hierarchii)
PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LL SYNTAKTICKÁ ANALÝZA DOKONČENÍ, IMPLEMENTACE.
PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LL SYNAKICKÁ ANALÝZA DOKONČENÍ, IMPLEMENACE. VLASNOSI LL GRAMAIK A JAZYKŮ. 2011 Jan Janoušek BI-PJP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Gramatika
Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz. Algebra Struktury s jednou operací
Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Algebra Struktury s jednou operací Teoretická informatika 2 Proč zavádíme algebru hledáme nástroj pro popis objektů reálného světa (zejména
2. Množiny, funkce. Poznámka: Prvky množiny mohou být opět množiny. Takovou množinu, pak nazýváme systém množin, značí se
MNOŽIN, ZÁKLDNÍ POJMY Pojem množiny patří v matematice ke stěžejním. Nelze jej zavést ve formě definice pomocí primitivních pojmů; považuje se totiž rovněž za pojem primitivní. Představa o pojmu množina
Teoretická informatika TIN
Teoretická informatika TIN Studijní opora M. Češka, T. Vojnar, A. Smrčka 20. srpna 2014 Tento učební text vznikl za podpory projektu "Zvýšení konkurenceschopnosti IT odborníků absolventů pro Evropský trh
Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Množiny, funkce
Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/07.0018 2. Množiny, funkce MNOŽIN, ZÁKLDNÍ POJMY Pojem množiny patří v matematice ke stěžejním. Nelze jej zavést ve formě definice pomocí
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é
Vlastnosti Derivační strom Metody Metoda shora dolů Metoda zdola nahoru Pomocné množiny. Syntaktická analýza. Metody a nástroje syntaktické analýzy
Metody a nástroje syntaktické analýzy Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 14. října 2011 Vlastnosti syntaktické analýzy Úkoly syntaktické
AUTOMATY A GRAMATIKY
AUTOMATY A 1 GRAMATIKY Pavel Surynek Univerzita Karlova v Praze Matematicko-fyzikální fakulta Katedra teoretické informatiky a matematické logiky Stručný přehled přednášky Automaty Formální jazyky, operace
Matematická analýza 1
Matematická analýza 1 ZS 2019-20 Miroslav Zelený 1. Logika, množiny a základní číselné obory 2. Limita posloupnosti 3. Limita a spojitost funkce 4. Elementární funkce 5. Derivace 6. Taylorův polynom Návod
3 Množiny, Relace a Funkce
3 Množiny, Relace a Funkce V přehledu matematických formalismů informatiky se v této lekci zaměříme na základní datové typy matematiky, tj. na množiny, relace a funkce. O množinách jste sice zajisté slyšeli
Formální systém výrokové logiky
Formální systém výrokové logiky 1.Jazyk výrokové logiky Nechť P = {p,q,r, } je neprázdná množina symbolů, které nazýváme prvotní formule. Symboly jazyka L P výrokové logiky jsou : a) prvky množiny P, b)
Lineární algebra Kapitola 1 - Základní matematické pojmy
Lineární algebra Kapitola 1 - Základní matematické pojmy 1.1 Relace a funkce V celém textu budeme používat následující označení pro číselné množiny: N množina všech přirozených čísel bez nuly, N={1, 2,
Strukturální rozpoznávání
Strukturální rozpoznávání 1 Strukturální rozpoznávání obsah hierarchický strukturální popis systém strukturálního rozpoznávání teorie gramatik volba popisu výběr primitiv výběr gramatiky syntaktická analýza
Výroková logika. Teoretická informatika Tomáš Foltýnek
Výroková logika Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika strana 2 Opakování z minulé přednášky Co je to formalismus a co je jeho cílem? Formulujte Russelův paradox
MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]
MATICE Matice typu m/n nad tělesem T je soubor m n prvků z tělesa T uspořádaných do m řádků a n sloupců: a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij] a m1 a m2 a mn Prvek a i,j je prvek matice A na místě
Teoretická informatika - Úkol č.1
Teoretická informatika - Úkol č.1 Lukáš Sztefek, xsztef01 18. října 2012 Příklad 1 (a) Gramatika G 1 je čtveřice G 1 = (N, Σ, P, S) kde, N je konečná množina nonterminálních symbolů N = {A, B, C} Σ je
Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory
Plán přednášky Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory Obecný algoritmus pro parsování bezkontextových jazyků dynamické programování 1 Zásobníkový
1 Báze a dimenze vektorového prostoru 1
1 Báze a dimenze vektorového prostoru 1 Báze a dimenze vektorového prostoru 1 2 Aritmetické vektorové prostory 7 3 Eukleidovské vektorové prostory 9 Levá vnější operace Definice 5.1 Necht A B. Levou vnější
AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace
AUTOMATY A 11 GRAMATIKY Pavel Surynek Univerzita Karlova v Praze Matematicko-fyzikální fakulta Katedra teoretické informatiky a matematické logiky Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně
Automaty a gramatiky
Automaty a gramatiky Roman Barták, KTIML bartak@ktiml.mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Co bylo minule Úvod do formálních gramatik produkční systémy generativní gramatika G=(V N,V T,,P) G =
Množiny. množinové operace jsou mírně odlišné od
Množiny Množina se dá chápat jako soubor prvků. ( Např. lidé na planetě zemi tvoří jednu velkou množinu.) Každá množina tedy obsahuje určitý počet prvků, který může být konečný (lze spočítat) nebo nekonečný
B i n á r n í r e l a c e. Patrik Kavecký, Radomír Hamřík
B i n á r n í r e l a c e Patrik Kavecký, Radomír Hamřík Obsah 1 Kartézský součin dvou množin... 3 2 Binární relace... 6 3 Inverzní relace... 8 4 Klasifikace binární relací... 9 5 Ekvivalence... 12 2 1
Vysoké učení technické v Brně Fakulta informačních technologií. Regulární pologrupy. Semestrální práce do předmětu Algebra, Kombinatorika, Grafy
Vysoké učení technické v Brně Fakulta informačních technologií Regulární pologrupy Semestrální práce do předmětu Algebra, Kombinatorika, Grafy Tomáš Masopust Brno, 2006 Obsah Úvod 1 1 Základní definice
Bezkontextové gramatiky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 6. května / 49
Bezkontextové gramatiky Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 6. května 2018 1/ 49 Bezkontextové gramatiky Příklad: Chtěli bychom popsat jazyk aritmetických výrazů obsahující výrazy jako například:
Programovací jazyky, syntaxe, sémantika, zpsoby popisu
Sémantika programovacích jazyk: Syntaxe a sémantika Syntaxe a sémantika Programovací jazyky, syntaxe, sémantika, zpsoby popisu Ti hlavní charakteristiky jazyka (sémiotika) jsou: - syntax, sémantika a pragmatika
Přednáška 3: Limita a spojitost
3 / 1 / 17, 1:38 Přednáška 3: Limita a spojitost Limita funkce Nejdříve je potřeba upřesnit pojmy, které přesněji popisují (topologickou) strukturu množiny reálných čísel, a to zejména pojem okolí 31 Definice
Bezkontextové gramatiky nad volnými grupami
Vysoké učení technické v Brně Fakulta informačních technologií Bezkontextové gramatiky nad volnými grupami 2004 Radek Bidlo Abstrakt Tento dokument zavádí pojem bezkontextové gramatiky nad volnou grupou
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í
Množiny, základní číselné množiny, množinové operace
2 Množiny, základní číselné množiny, množinové operace Pokud kliknete na některý odkaz uvnitř textu kromě prezentace, zobrazí se odpovídající příklad nebo tabulka. Levý Alt+šipka doleva nebo ikona Vás
Algoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem.
Algoritmus Algoritmus je schematický postup pro řešení určitého druhu problémů, který je prováděn pomocí konečného množství přesně definovaných kroků. nebo Algoritmus lze definovat jako jednoznačně určenou
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
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento
Princip rozšíření a operace s fuzzy čísly
Center for Machine Perception presents Princip rozšíření a operace s fuzzy čísly Mirko Navara Center for Machine Perception Faculty of Electrical Engineering Czech Technical University Praha, Czech Republic
Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.
Úvod do informatiky přednáška čtvrtá Miroslav Kolařík Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008. Obsah 1 Pojem relace 2 Vztahy a operace s (binárními) relacemi
Formální jazyky. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 21. března / 50
Formální jazyky Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 21. března 2013 1/ 50 Abeceda a slovo Definice Abeceda je libovolná neprázdná konečná množina symbolů(znaků). Poznámka: Abeceda se často
ZÁKLADY TEORETICKÉ INFORMATIKY
KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO ZÁKLADY TEORETICKÉ INFORMATIKY PAVEL MARTINEK VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM
Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:
3 Maticový počet 3.1 Zavedení pojmu matice Maticí typu (m, n, kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru: a 11 a 12... a 1k... a 1n a 21 a 22...
Základy teoretické informatiky Formální jazyky a automaty
Základy teoretické informatiky Formální jazyky a automaty Petr Osička KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI Outline Literatura Obsah J.E. Hopcroft, R. Motwani, J.D. Ullman Introduction to
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 α
1. JAZYK ATEATIKY 1.1 nožiny nožina je souhrn objektů určitých vlastností, které chápeme jako celek. ZNAČENÍ. x A x A θ A = { { a, b a A = B A B 0, 1 2 a, a,..., a n x patří do množiny A x nepatří do množiny
Konečný automat. Jan Kybic.
Konečný automat Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2017 1 / 33 Konečný automat finite state machine Konečný automat = výpočetní model, primitivní počítač Řídící jednotka s
Algoritmizace a programování
Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech
Programování. Bc. Veronika Tomsová
Programování Bc. Veronika Tomsová Regulární výrazy Regulární výrazy slouží k porovnání a zpracovaní textu PHP podporuje syntaxi POSIX-Extended Regulární výrazy jsou velice vhodné například k ověření emailové
63. ročník Matematické olympiády 2013/2014
63. ročník Matematické olympiády 2013/2014 Úlohy ústředního kola kategorie P 2. soutěžní den Na řešení úloh máte 4,5 hodiny čistého času. Při soutěži je zakázáno používat jakékoliv pomůcky kromě psacích
INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.
INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.0141 Relace, zobrazení, algebraické struktury Michal Botur Přednáška
Úvod do lineární algebry
Úvod do lineární algebry 1 Aritmetické vektory Definice 11 Mějme n N a utvořme kartézský součin R n R R R Každou uspořádanou n tici x 1 x 2 x, x n budeme nazývat n rozměrným aritmetickým vektorem Prvky
Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace
Vektory a matice Aplikovaná matematika I Dana Říhová Mendelu Brno Obsah 1 Vektory Základní pojmy a operace Lineární závislost a nezávislost vektorů 2 Matice Základní pojmy, druhy matic Operace s maticemi
Vyhledávání v textu. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava
Vyhledávání v textu doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 9. března 209 Jiří Dvorský (VŠB TUO) Vyhledávání v textu 402
Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují
Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují 1. u + v = v + u, u, v V 2. (u + v) + w = u + (v + w),
1.3. Číselné množiny. Cíle. Průvodce studiem. Výklad
1.3. Cíle Cílem kapitoly je seznámení čtenáře s axiomy číselných oborů a jejich podmnožin (intervalů) a zavedení nových pojmů, které nejsou náplní středoškolských osnov. Průvodce studiem Vývoj matematiky
Cílem kapitoly je opakování a rozšíření středoškolských znalostí v oblasti teorie množin.
1.2. Cíle Cílem kapitoly je opakování a rozšíření středoškolských znalostí v oblasti teorie množin. Průvodce studiem Množina je jedním ze základních pojmů moderní matematiky. Teorii množin je možno budovat
Semestrální práce z předmětu Teorie programovacích jazyků
Vysoké učení technické v Brně Fakulta informačních technologií Semestrální práce z předmětu Teorie programovacích jazyků Roman Lukáš 2003-2004 1 Jazykové procesory (Language Processors) 1.1 Překladače
Svazy. Jan Paseka. Masarykova univerzita Brno. Svazy p.1/37
Svazy Jan Paseka Masarykova univerzita Brno Svazy p.1/37 Abstrakt Zmíníme se krátce o úplných a distributivních svazech, resp. jaké vlastnosti má řetězec reálných čísel. Svazy p.2/37 Abstrakt V této kapitole
4.2 Syntaxe predikátové logiky
36 [070507-1501 ] 4.2 Syntaxe predikátové logiky V tomto oddíle zavedeme syntaxi predikátové logiky, tj. uvedeme pravidla, podle nichž se tvoří syntakticky správné formule predikátové logiky. Význam a
Marie Duží
Marie Duží marie.duzi@vsb.cz Co je to množina? Množina je soubor prvků a je svými prvky plně určena; množinu s prvky a, b, c značíme: {a, b, c}. Prvkem množiny může být opět množina, množina nemusí mít
Komutativní a nekomutativní polookruhy ve školské matematice. Commutative and non-commutative semi-rings in educational mathematics
Komutativní a nekomutativní polookruhy ve školské matematice Drahomíra Holubová Resume Polookruhy, které nejsou okruhy, mají významné zastoupení ve školské matematice. Tento příspěvek uvádí příklady komutativních
Základy teorie grupoidů a grup
Základy teorie grupoidů a grup 12. Základní pojmy o grupoidech In: Otakar Borůvka (author): Základy teorie grupoidů a grup. (Czech). Praha: Nakladatelství Československé akademie věd, 1962. pp. 94--100.
1 Linearní prostory nad komplexními čísly
1 Linearní prostory nad komplexními čísly V této přednášce budeme hledat kořeny polynomů, které se dále budou moci vyskytovat jako složky vektorů nebo matic Vzhledem k tomu, že kořeny polynomu (i reálného)
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
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 GRAMATICKÉ SYSTÉMY
Návrh algoritmů pro sémantické akce při výstavbě interpretu metodou rekurzivního sestupu
Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta Návrh algoritmů pro sémantické akce při výstavbě interpretu metodou rekurzivního sestupu Diplomová práce Vedoucí práce: RNDr.
Pumping lemma - podstata problému. Automaty a gramatiky(bi-aag) Pumping lemma - problem resolution. Pumping lemma - podstata problému
BI-AAG (2011/2012) J. Holub: 10. Vlastnosti regulárních jazyků p. 2/22 Pumping lemma - podstata problému BI-AAG (2011/2012) J. Holub: 10. Vlastnosti regulárních jazyků p. 4/22 Automaty a gramatiky(bi-aag)
Čísla značí použité pravidlo, šipka směr postupu Analýza shora. Analýza zdola A 2 B 3 B * C 2 C ( A ) 1 a A + B. A Derivace zleva:
1) Syntaktická analýza shora a zdola, derivační strom, kanonická derivace ezkontextová gramatika gramatika typu 2 Nechť G = je gramatika typu 1. Řekneme, že je gramatikou typu 2, platí-li: y
EKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24.
EKO-KOLONIE OBHAJOBA DISERTAČNÍ PRÁCE RNDr. Šárka Vavrečková Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě sarka.vavreckova@fpf.slu.cz 24. dubna 2008 Obsah 1 Eko-kolonie
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
Referát z předmětu Teoretická informatika
Referát z předmětu Téma: Algoritmus Coke-Younger-Kasami pro rozpoznávání bezkontextových jazyků VŠB-TU Ostrava:Fakulta Elektrotechniky a informatiky jaro 2011 Martin Dočkal doc068 dockal.martin@gmail.com
Úvod do programovacích jazyků (Java)
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích
Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce
Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce Marie Duží marie.duzi@vsb.cz 1 Úvod do teoretické informatiky (logika) Naivní teorie množin Co je to množina? Množina je soubor prvků
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
Teoretická informatika TIN 2013/2014
Teoretická informatika TIN 2013/2014 prof. RNDr. Milan Češka, CSc. ceska@fit.vutbr.cz doc.ing. Tomáš Vojnar, Ph.D. vojnar@fit.vutbr.cz sazba Ing. A. Smrčka, Ing. P. Erlebach, Ing. P. Novosad Vysoké učení
Teoretická informatika
Teoretická informatika Ladislav Lhotka lhotka@cesnet.cz 2011-12 Zdroje LINZ, P. Formal Languages and Automata, Fourth Edition. Sudbury: Jones and Bartlett, 2006, 415+xiii s. ISBN 07-63-73798-4. CHYTIL,
NAIVNÍ TEORIE MNOŽIN, okruh č. 5
NAIVNÍ TEORIE MNOŽIN, okruh č. 5 Definování množiny a jejích prvků Množina je souhrn nějakých věcí. Patří-li věc do množiny X, říkáme, že v ní leží, že je jejím prvkem nebo že množina X tuto věc obsahuje.
Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David
Úvod do Prologu Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David Warren (Warren Abstract Machine) implementace
Aritmetika s didaktikou I.
Katedra matematiky PF UJEP Aritmetika s didaktikou I. KM1 / 0001 Přednáška 02 Opakování základních pojmů - 2. část O čem budeme hovořit: Binární relace a jejich vlastnosti Speciální typy binárních relací
Teoretická informatika
Teoretická informatika TIN 2017/2018 prof. RNDr. Milan Češka, CSc. ceska@fit.vutbr.cz prof. Ing. Tomáš Vojnar, Ph.D. vojnar@fit.vutbr.cz sazba dr. A. Smrčka, Ing. P. Erlebach, Ing. P. Novosad Vysoké učení
Regulární výrazy. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 14. března / 20
Regulární výrazy M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 14. března 2007 1/ 20 Regulární výrazy Jako například v aritmetice můžeme pomocí operátorů + a vytvářet výrazy jako (5+3)
Výroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2017/2018 1 / 17 Předběžnosti Základní pojmy n-ární relace a funkce