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.

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

Download "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."

Transkript

1 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é automaty Jan Holub T a D jsou abecedy. Homomorfismem nazýváme každé zobrazení h z T do D. Definiční obor homomorfismu h je možné rozšířit na T takto: h(ε) = ε, h(xa) = h(x)h(a), x, x T, a T. Katedra teoretické informatiky Fakulta informačních technologií ČVUT v Praze c Jan Holub, 2011 Evropský sociální fond. Praha & EU: Investujeme do vaší budoucnosti BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 1/41 Formální překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 3/41 Formální překlady Formální překlad je binární relace Z L V. Definiční obor je množina L a obor hodnot je množina V. Relace Z přiřazuje každému prvku w množiny L množinu jeho překladů Z(w) z množiny V. Pokud Z(w) obsahuje pro každé w L nejvýše jeden prvek, pak Z je funkce (případně parciální) a takový překlad se nazývá jednoznačný. zobrazení řetězce dekadických číslic na řetězce binárních číslic a h(a) h(1996) =

2 Formální překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 6/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 8/41 Prefixový a postfixový zápis výrazu E: 1. E je proměnná nebo konstanta, pak prefixový i postfixový zápis tohoto výrazu je E. 2. E je výraz tvaru E 1 op E 2, kde op je binární operátor, pak (a) op E 1 E 2 je prefixový zápis, kde E 1 a E 2 jsou prefixové zápisy. (b) E 1 E 2 op je postfixový zápis, kde E 1 a E 2 jsou postfixové zápisy. 3. E je výraz tvaru (E 1 ), pak (a) prefixový zápis výrazu (E 1 ) je prefixový zápis výrazu E 1, (b) postfixový zápis výrazu (E 1 ) je postfixový zápis výrazu E 1. Překladová gramatika je P G = (N, T, D, R, S), kde N je konečná množina neterminálních symbolů, T je konečná množina vstupních symbolů, D je konečná množina výstupních symbolů, R je konečná množina pravidel tvaru A α, kde A N, α (N T D), S je počáteční symbol. Přitom platí, že T D = a (T D) N =. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 5/41 Formální překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 7/41 Infixový zápis: a (b + c) Prefixový zápis: a + bc Postfixový zápis: abc + překladu: {(x, y) : x je infixový zápis výrazu, y je postfixový zápis téhož výrazu}. P G = (N, T, D, R, S), α, β, γ (N T D), A N. 1. z α se přímo derivuje β, α β, právě když τ, ω, γ (N T D), A N, α = τa ω, β = τγω, A γ R 2. z α se derivuje β, α β, právě když α 1, α 2,..., α n (N T D), (n 1) α = α 1 α 2... α n = β. Posloupnost α 1, α 2,..., α n nazýváme překladovou derivací délky n řetězce β z řetězce α. reflexivní a tranzitivní uzávěr: tranzitivní uzávěr: +

3 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 10/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 12/41 P G = ({E}, {+,, a}, { +,, a }, P, E), kde P : (1)E +EE + (2)E EE (3)E a a E +EE + +a a E + +a a EE + +a a a a E + +a a a a a a + P G = ({E}, {+,, a}, { +,, a }, P, E), kde P : (1)E +EE + (2)E EE (3)E a a P G generuje překlad výrazů z prefixového do postfixového zápisu. E +EE + +a a E + +a a EE + +a a a a E + +a a a a a a + Derivace generuje dvojici (+a aa, a a a +), která patří do překladu Z(P G). BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 9/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 11/41 P G = (N, T, D, R, S). Vstupní homomorfismus h P i G : h P i G (a) = Výstupní homomorfismus h P o G : h P o G (a) = { a pro a T N ε pro a D { ε pro a T a pro a D N Překlad definovaný překladovou gramatikou P G = (N, T, D, R, S): Z(P G) = {(h P G i (w), h P G o (w)) : S w, w (T D) }. P G = (N, T, D, R, S). Vstupní gramatika překladové gramatiky PG je BG G i = (N, T, P i, S), kde P i = {A h i (α) : A α R}. Výstupní gramatika překladové gramatiky PG je BG G o = (N, D, P o, S), kde P o = {A h o (α) : A α R}. BG G = (N, T D, R, S) je charakteristická gramatika překladové gramatiky P G = (N, T, D, R, S). L(G) je charakteristický jazyk překladu Z(PG). w L(G) je charakteristická věta dvojice (x, y), kde x = h i (w), y = h o (w).

4 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 14/41 Konečné překladové automaty BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 16/41 P G = (N, T, D, R, S) je regulární, když všechna pravidla v R mají tvar: A axb nebo A ax, kde A, B N, a T, x D S ε v případě, že S není na pravé straně žádného pravidla. Konečný překladový automat KPA = (Q, T, D, δ, q 0, F ), kde Q je konečná množina vnitřních stavů, T je konečná množina vstupních symbolů, D je konečná množina výstupních symbolů, δ je zobrazení z Q (T {ε}) do množiny 2 Q D, q 0 Q je počáteční stav, F Q je množina koncových stavů. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 13/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 15/41 Konečné překladové automaty RP G = ({S, A, P, K}, {a, +, }, { a, +, }, R, S), kde R: S a a A A K S a a A +P K a a A P a a +A K a a P a a + S a a A a a + P a a + a a +A a a + a a + K a a + a a + a a. Konfigurace konečného překladového automatu KPA = (Q, T, D, δ, q 0, F ) je trojice (q, x, y) Q T D. (q 0, x, ε) je počáteční konfigurace. (q, ε, y), q F je koncová konfigurace. Relace přechodu a definovaná na množině konfigurací: Jestliže δ(q, a) obsahuje (r, z), pak (q, ax, y) (r, x, yz), x T, y D. Tranzitivní uzávěr: + Reflexivní a tranzitivní uzávěr: k-tá mocnina: k Překlad: (a + a a, a a + a ).

5 Konečné překladové automaty BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 18/41 Sekvenční zobrazení BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 20/41 Překlad definovaný konečným překladovým automatem KPA = (Q, T, D, δ, q 0, F ): Z(KPA) = {(u, v) : (q 0, u, ε) (q, ε, v), q F } KPA je deterministický, když pro všechny jeho stavy platí: 1. δ(q, a) 1, a T a δ(q, ε) = nebo 2. δ(q, ε) 1 a δ(q, a) =, a T. Sekvenční zobrazení S: 1. Zachovává délku řetězce, tj. je-li y = S(x), pak x = y. 2. Mají-li dva vstupní řetězce stejnou předponu délky k > 0, pak mají i jim odpovídající výstupní řetězce stejné předpony alespoň délky k. To znamená, když S(xx 1 ) = yy 1 a S(xx 2 ) = yy 2 a x = y. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 17/41 Konečné překladové automaty KPA, který binární čísla dělitelná třemi dělí třemi. KPA = ({N, J, D}, {0, 1}, {0, 1}, δ, N, {N}), kde δ: δ(n, 0) = {(N, 0)} δ(j, 1) = {(N, 1)} δ(n, 1) = {(J, 0)} δ(d, 0) = {(J, 1)} δ(j, 0) = {(D, 0)} δ(d, 1) = {(D, 1)} δ 0 1 N (N, 0) (J, 0) J (D, 0) (N, 1) D (J, 1) (D, 1) 0/0 1/0 0/0 START N 1/1 J 0/1 D 1/1 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 19/41 Sekvenční zobrazení Mealyho automat M = (Q, T, D, δ, λ, q o, F ), kde Q je konečná množina vnitřních stavů, T je konečná množina vstupních symbolů, D je konečná množina výstupních symbolů, δ je zobrazení z Q T do Q nazývané přechodová funkce, λ je zobrazení z Q T do D nazývané výstupní funkce, q 0 Q je počáteční stav, F Q je množina koncových stavů.

6 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 22/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 24/41 Sekvenční zobrazení Atributované překlady Mooreův automat M = (Q, T, D, δ, λ, q o, F ), kde Q je konečná množina vnitřních stavů, T je konečná množina vstupních symbolů, D je konečná množina výstupních symbolů, δ je zobrazení z Q T do Q nazývané přechodová funkce, λ je zobrazení z Q do D nazývané výstupní funkce, q 0 Q je počáteční stav, F Q je množina koncových stavů. Atributovaný překlad je relace Z A T D, kde T je množina vstupních atributovaných řetězců, D je množina výstupních atributovaných řetězců. Vstup: atributované řetězce nad abecedou {a, +,, (, )}. Symbolu a je přiřazen atribut x (oborem hodnot je množina celých čísel). Výstup: v, který má atribut y (oborem hodnot je množina celých čísel). (a[10], v[10]), (a[5] + a[6], v[11]), (a[3] a[4] + a[2], v[14]). BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 21/41 Atributované překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 23/41 Atributované překlady Atribut veličina, která nabývá hodnot z nějaké množiny (obor hodnot atributu). Např. proměnná v programu, která má definován typ. Atributovaný symbol symbol abecedy, ke kterému je přiřazena konečná množina atributů (i prázdná). Atributovaný řetězec řetězec atributovaných symbolů. a.x bude relativní adresa, na které je uložena hodnota operandu a. Adresa p, ke které jsou vztaženy relativní adresy operandů. Funkce vyber(x), která z adresy x vybere hodnotu. p = 100, vyber(102) = 3, vyber(103) = 5, vyber(104) = 6 (a[3] a[4] + a[2], v[33]) Např. x.a x[x.a 1, x.a 2,..., x.a n ]

7 Atributované překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 26/41 Atributované překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 28/41 Hodnoty atributů výstupních symbolů mohou záviset: na hodnotách atributů vstupních symbolů, na struktuře vstupního řetězce, na zadaných parametrech. Atribut: syntetizovaný hodnota závisí na informacích obsažených uvnitř podstromu, dědičný hodnota závisí na kontextu, ve kterém se příslušný podstrom nachází. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 25/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 27/41 atributovaná výstupní věta: S a[10] LOAD[10,1] P atributovaný řetězec výstupních symbolů, kterými jsou ohodnoceny listy atributovaného překladového stromu AT + A a[20] LOAD[20,2] B ADD M a[30] LOAD[30,2] N sémantické vyhodnocení překladového stromu: výpočet hodnot atributů v překladovém stromu stanovíme hodnoty dědičných atributů kořene AT stanovíme hodnoty syntetizovaných atributů vstupních uzlů v nějakém pořadí probíráme uzly stromu a vyhodnocujeme jejich atributy = MUL PRINT

8 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 30/41 BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 32/41 Realizujte překlad výrazu s operátory +,, =, a operandy. Zadány adresy, na kterých jsou uloženy operandy. Výstupním jazykem tohoto překladu je strojový jazyk počítače, který má tyto instrukce: LOAD adr, r... provede přesun obsahu adresy adr do registru r, ADD... provede součet obsahu registrů 1 a 2 a výsledek uloží do registru 1, MUL... provede součin obsahu registrů 1 a 2 a výsledek uloží do registru 1, PRINT... provede výpis obsahu registru 1. (a[20] =,LOAD[20,1]PRINT[] ) (a[10] + a[30] =,LOAD[10,1]LOAD[30,2]ADD[]PRINT[] ) (a[10] + a[20] a[30] =,LOAD[10,1]LOAD[20,2]ADD[]LOAD[30,2]MUL[]PRINT[]) BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 29/41 (pokračování) Základní gramatika atributové překladové gramatiky PG = ({S, P, A, B, M, N}, {a, +,, =}, {LOAD, ADD, MUL, PRINT}, R, S), kde R: 1. S aload P, 5. A aload B, 9. B = ADDPRINT, 2. P + A, 6. M aload N, 10. N +MUL A, 3. P M, 7. B +ADD A, 11. N MUL M, 4. P = PRINT, 8. B ADD M, 12. N = MULPRINT. Symboly a LOAD ADD MUL PRINT Dědičné atributy Syntetizované atributy adr, r adr (pokračování) Sémantická pravidla a jejich přidělení pravidlům: Syntax Sémantika 1. S aload P, LOAD.adr a.adr LOAD.r 1 2. P + A, 3. P M, 4. P = PRINT, 5. A aload B, LOAD.adr a.adr LOAD.r 2 6. M aload N, LOAD.adr a.adr LOAD.r 2 7. B +ADD A, 8. B ADD M, 9. B = ADDPRINT, 10. N +MUL A, 11. N MUL M, 12. N = MULPRINT. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 31/41 (pokračování) pro vstupní řetězec a[10] + a[20] a[30] =. S a[10] LOAD[10,1] P + A a[20] LOAD[20,2] B ADD M a[30] LOAD[30,2] N = MUL PRINT

9 Atributová překladová gramatika AT atributované vstupní věty w v APG = (PG, A, V, F ) je překladový strom této věty w sestrojený v PG (bez uvažování atributů) a rozšířený následujícím způsobem: 1. Ke každému uzlu, který je ohodnocen symbolem X N T D, jsou přidruženy atributy dané množinou A(X). 2. Jsou stanoveny hodnoty dědičných atributů kořene stromu AT. 3. Hodnoty syntetizovaných atributů vstupních uzlů AT jsou dány vstupní větou w. 4. Necht u 0 je libovolný vnitřní uzel X a u 1, u 2,..., u n (n 0) jsou přímí následníci uzlu u 0 ohodnocení X 1, X 2,..., X n a necht X 0 X 1 X 2... X n je syntaktické pravidlo (r). Pak pro hodnoty atributů přidružených k uzlům u k, 0 k n, platí: je li t := f rtk (a 1, a 2,..., a m ) sémantické pravidlo pro výpočet hodnoty atributu t přidruženého k uzlu u k, pak hodnota atributu t je určena tímto sémantickým pravidlem. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 33/41 Atributová překladová gramatika Atributová překladová gramatika APG = (PG, A, V, F ), kde: PG = (N, T, D, R, S o ) základní překladová gramatika, kde R: (r) X 0 X 1 X 2... X nr, kde n r 0, X 0 N, X k (N T D) pro 1 k n r. A je konečná množina atributů (A = S I, S I =, S je množina syntetizovaných atributů, I je množina dědičných atributů). Pro každý atribut a je zadán obor hodnot H(a). V zobrazení: každému X N přiřazuje množinu A(X) A. Vstupní symboly mají syntetizované atributy, výstupní mají dědičné. F konečná množina sémantických pravidel. X k (1 k n r ) na pravé straně pravidla r R a jeho dědičný atribut d: d := f rdk (a 1, a 2,..., a m ), kde a 1, a 2,..., a m jsou atributy symbolů v pravidle r. syntetizovaný atribut s symbolu X o na levé straně pravidla r R: s := f rso (a 1, a 2,..., a m ), kde a 1, a 2,..., a m jsou atributy symbolů v pravidle r. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 34/41 Aby bylo možno určit hodnoty všech atributů, musíme předpokládat, že jsou zadány: hodnoty dědičných atributů počátečního symbolu, hodnoty syntetizovaných atributů vstupních symbolů. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 35/41 Regulární atributované překlady AP G je regulární AP G, jestliže platí: 1. Základní překladová gramatika je regulární. 2. Neterminální symboly mají jen dědičné atributy. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 36/41

10 Regulární atributované překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 38/41 Regulární atributované překlady BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 40/41 Překlad desítkových celých čísel: RP G = ({C}, {d}, { v }, P, C), kde P : C dc d v. Symboly Dědičné atributy Syntetizované atributy d C v hodnota hodnota kód (pokračování) Upravená překladová gramatika Syntax Sémantika C dz Z.hodnota := h(d.kód) Z 0 dz 1 Z 1.hodnota := Z 0.hodnota 10 + h(d.kód) Z # v v.hodnota := Z.hodnota Syntax C 0 dc 1 C d v Sémantika C 1.hodnota := C 0.hodnota 10 + h(d.kód) v.hodnota := C.hodnota 10 + h(d.kód) Funkce h(x) má jako argument kód číslice a jako funkční hodnotu číselnou hodnotu číslice. Počáteční hodnota atributu počátečního symbolu C.hodnota se rovná nule. BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 37/41 Regulární atributované překlady (pokračování) NKPA START C.hodnota := 0 DKPA C d e 1 0 C.hodnota := C.hodnota * 10 + h(d.kód) d v v.hodnota := C.hodnota * d e 10 + h(d.kód) 1 0 Z.hodnota := Z.hodnota * 10 + h(d.kód) F BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 39/41 Regulární atributované překlady RAPG pro model kalkulačky s klávesami 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, +,, =. Vstupem budou výrazy s operátory + a. Symbol = bude konec výrazu. Operátory + a mají stejnou prioritu. dva registry = dva atributy x a y RP G = ({S, P, A, M, N}, {d, +,, =}, { v }, P, S). Zápis d.h představuje hodnotu vstupní číslice. START C d e Z.hodnota := h(d.kód) Z # v v.hodnota := Z.hodnota F

11 Regulární atributované překlady (pokračování) Syntax Sémantika S dp P.x := d.h P.y := 0 P 0 dp 1 P 1.x := P 0.x 10 + d.h P 1.y := P 0.y P + A A.x := P.x + P.y P M M.x := P.x + P.y P = v v.x := P.x + P.y A dp P.x := d.h P.y := A.x M dn N.x := d.h N.y := M.x N 0 dn 1 N 1.x := N 0.x 10 + d.h N 1.y := N 0.y N + A A.x := N.x N.y N M M.x := N.x N.y N = v v.x := N.x N.y BI-AAG (2011/2012) J. Holub: 5. Překladové konečné automaty p. 41/41

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

Syntaxí řízený překlad

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

Více

/1: Teoretická informatika(ti) přednáška 4

/1: Teoretická informatika(ti) přednáška 4 456-330/1: Teoretická informatika(ti) přednáška 4 prof. RNDr Petr Jančar, CSc. katedra informatiky FI VŠB-TUO www.cs.vsb.cz/jancar LS 2009/2010 Petr Jančar (FI VŠB-TU) Teoretická informatika(ti) LS 2009/2010

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

Jednoznačné a nejednoznačné gramatiky

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.

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

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

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

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

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

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE REALIZACE PŘEKLADAČE I

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE REALIZACE PŘEKLADAČE I PROGRAMOVACÍ JAZYKY A PŘEKLADAČE REALIZACE PŘEKLADAČE I 2011 Jan Janoušek BI-PJP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Programová realizace DKA typedef enum {q0, q1,... qn,

Více

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

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)

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

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

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

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

/01: Teoretická informatika(ti) přednáška 5

/01: Teoretická informatika(ti) přednáška 5 460-4005/01: Teoretická informatika(ti) přednáška 5 prof. RNDr Petr Jančar, CSc. katedra informatiky FEI VŠB-TUO www.cs.vsb.cz/jancar LS 2010/2011 Petr Jančar (FEI VŠB-TU) Teoretická informatika(ti) LS

Více

2 Formální jazyky a gramatiky

2 Formální jazyky a gramatiky 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ě

Více

Lexikální analýza (Obsah)

Lexikální analýza (Obsah) Lexikální analýza (Obsah) 1. Rekapitulace potřebných znalostí -Regulární jazyky, regulární výrazy -Pravé lineární gramatiky -Konečné automaty (tabulka přechodů, stavový diagram, stavový strom) -Převod

Více

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

Více

AUTOMATY A GRAMATIKY

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

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

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LL SYNTAKTICKÁ ANALÝZA DOKONČENÍ, IMPLEMENTACE.

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

Více

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE FORMALISMY PRO SYNTAXÍ ŘÍZENÝ PŘEKLAD: PŘEKLADOVÉ A ATRIBUTOVÉ GRAMATIKY.

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE FORMALISMY PRO SYNTAXÍ ŘÍZENÝ PŘEKLAD: PŘEKLADOVÉ A ATRIBUTOVÉ GRAMATIKY. PROGRAMOVACÍ JAZYKY A PŘEKLADAČE FORMALISMY PRO SYNTAXÍ ŘÍZENÝ PŘEKLAD: PŘEKLADOVÉ A ATRIBUTOVÉ GRAMATIKY. 2011 Jan Janoušek BI-PJP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Formální

Více

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

Pro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie. Zpracoval: hypspave@fel.cvut.cz 5. Výroková logika, formule výrokové logiky a jejich pravdivostní ohodnocení, splnitelné formule, tautologie, kontradikce, sémantický důsledek, tautologicky ekvivalentní

Více

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program Denotační sémantika programovacího jazyka doc. Dr. Ing. Miroslav Beneš katedra informatiky, A-1007 59 732 4213 Obsah přednášky Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup

Více

1. Definujte překladač. Jaký je rozdíl mezi interpretačním a kompilačním překladačem? Co je to konverzační překladač?

1. Definujte překladač. Jaký je rozdíl mezi interpretačním a kompilačním překladačem? Co je to konverzační překladač? 1. Definujte překladač. Jaký je rozdíl mezi interpretačním a kompilačním překladačem? Co je to konverzační překladač? 2. Charakterizujte lexikální analýzu(vstup, výstup, lexikální chyby). 3. Definujte

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

Diferenˇcní rovnice Diferenciální rovnice Matematika IV Matematika IV Program

Diferenˇcní rovnice Diferenciální rovnice Matematika IV Matematika IV Program Program Diferenční rovnice Program Diferenční rovnice Diferenciální rovnice Program Frisch a Samuelson: Systém je dynamický, jestliže jeho chování v čase je určeno funkcionální rovnicí, jejíž neznámé závisí

Více

4.2 Syntaxe predikátové logiky

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

Více

Bezkontextové jazyky. Bezkontextové jazyky 1 p.1/39

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

Více

Princip rozšíření a operace s fuzzy čísly

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

Více

Algoritmizace a programování

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

Více

Úvod do informatiky. Miroslav Kolařík

Úvod do informatiky. Miroslav Kolařík Úvod do informatiky přednáška desátá Miroslav Kolařík Zpracováno dle R. Bělohlávek, V. Vychodil: Diskrétní matematika 2, http://phoenix.inf.upol.cz/esf/ucebni/dm2.pdf P. Martinek: Základy teoretické informatiky,

Více

Úvod do informatiky. Miroslav Kolařík

Ú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í

Více

Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz

Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz Úvod do TI - logika Predikátová logika 1.řádu (4.přednáška) Marie Duží marie.duzi@vsb.cz Jednoduché úsudky, kde VL nestačí Všechny opice mají rády banány Judy je opice Judy má ráda banány Z hlediska VL

Více

Programovací jazyk Pascal

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

Více

Matematická logika. Miroslav Kolařík

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

Více

Okruh č.3: Sémantický výklad predikátové logiky

Okruh č.3: Sémantický výklad predikátové logiky Okruh č.3: Sémantický výklad predikátové logiky Predikátová logika 1.řádu formalizuje úsudky o vlastnostech předmětů a vztazích mezi předměty pevně dané předmětné oblasti (univerza). Nebudeme se zabývat

Více

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

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ě

Více

Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce

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

Více

Sémantika výrokové logiky. Alena Gollová Výroková logika 1/23

Sémantika výrokové logiky. Alena Gollová Výroková logika 1/23 Výroková logika Alena Gollová Výroková logika 1/23 Obsah 1 Formule výrokové logiky 2 Alena Gollová Výroková logika 2/23 Formule výrokové logiky Výrok je oznamovací věta, o jejíž pravdivosti lze rozhodnout.

Více

Úvod do programovacích jazyků (Java)

Ú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

Více

Matice. Je dána matice A R m,n, pak máme zobrazení A : R n R m.

Matice. Je dána matice A R m,n, pak máme zobrazení A : R n R m. Matice lineárních zobrazení [1] Připomenutí Zobrazení A : L 1 L 2 je lineární, když A( x + y ) = A( x ) + A( y ), A(α x ) = α A( x ). Což je ekvivalentní s principem superpozice: A(α 1 x 1 + + α n x n

Více

transformace je posunutí plus lineární transformace má svou matici vzhledem k homogenním souřadnicím [1]

transformace je posunutí plus lineární transformace má svou matici vzhledem k homogenním souřadnicím [1] [1] Afinní transformace je posunutí plus lineární transformace má svou matici vzhledem k homogenním souřadnicím využití například v počítačové grafice Evropský sociální fond Praha & EU. Investujeme do

Více

Struktura a architektura počítačů (BI-SAP) 5

Struktura a architektura počítačů (BI-SAP) 5 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 5 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii

Více

Čí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:

Čí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

Více

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

Více

9. Vícerozměrná integrace

9. Vícerozměrná integrace 9. Vícerozměrná integrace Aplikovaná matematika II, NMAF072 M. Rokyta, KMA MFF UK LS 2016/17 9.1 Elementy teorie míry Poznámka Na R n definujeme systém tzv. měřitelných množin, M n, který má následující

Více

3. Sekvenční logické obvody

3. Sekvenční logické obvody 3. Sekvenční logické obvody 3. Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou 3. Sekvenční logické obvody příklad sekv.o. Příklad sledování polohy vozíku

Více

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

Bezkontextové jazyky. Bezkontextové jazyky 1 p.1/31 Bezkontextové jazyky Bezkontextové jazyky 1 p.1/31 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

Více

Rovnost lze vyjádřit jako predikát, např. můžeme zvolit, že P(x, y) reprezentujetvrzení xjerovnoy.

Rovnost lze vyjádřit jako predikát, např. můžeme zvolit, že P(x, y) reprezentujetvrzení xjerovnoy. Rovnost Jedním z nejdůležitějších druhů relací je rovnost(identita). Prvkyxayjsousirovny,cožzapisujeme x =y, jestližesejednáojedenatentýžprvek. Rovnost lze vyjádřit jako predikát, např. můžeme zvolit,

Více

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

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

Více

)(x 2 + 3x + 4),

)(x 2 + 3x + 4), 3 IREDUCIBILNÍ ROZKLADY POLYNOMŮ V T [X] 3 Ireducibilní rozklady polynomů v T [x] - rozklady polynomů na ireducibilní (dále nerozložitelné) prvky v oboru integrity polynomů jedné neurčité x nad tělesem

Více

5. Sekvenční logické obvody

5. Sekvenční logické obvody 5. Sekvenční logické obvody 3. Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou 3. Sekvenční logické obvody - příklad asynchronního sekvenčního obvodu 3.

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

Interpolace, ortogonální polynomy, Gaussova kvadratura

Interpolace, ortogonální polynomy, Gaussova kvadratura Interpolace, ortogonální polynomy, Gaussova kvadratura Petr Tichý 20. listopadu 2013 1 Úloha Lagrangeovy interpolace Dán omezený uzavřený interval [a, b] a v něm n + 1 různých bodů x 0, x 1,..., x n. Nechť

Více

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LEXIKÁLNÍ ANALÝZA

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LEXIKÁLNÍ ANALÝZA PROGRAMOVACÍ JAZYKY A PŘEKLADAČE LEXIKÁLNÍ ANALÝZA 2011 Jan Janoušek BI-PJP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti LEXIKÁLNÍ ANALÝZA Kód ve vstupním jazyku Lexikální analyzátor

Více

Teoretická informatika - Úkol č.1

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

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

Fuzzy množiny, Fuzzy inference system. Libor Žák Fuzzy množiny, Fuzzy inference system Proč právě fuzzy množiny V řadě případů jsou parametry, které vstupují a ovlivňují vlastnosti procesu, popsané pomocí přibližných nebo zjednodušených pojmů. Tedy

Více

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

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

Více

Konečný automat. Jan Kybic.

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

Více

[1] Definice 1: Polynom je komplexní funkce p : C C, pro kterou. pro všechna x C. Čísla a 0, a 1,..., a n nazýváme koeficienty polynomu.

[1] Definice 1: Polynom je komplexní funkce p : C C, pro kterou. pro všechna x C. Čísla a 0, a 1,..., a n nazýváme koeficienty polynomu. Polynomy Polynom je možno definovat dvěma způsoby: jako reálnou nebo komplexní funkci, jejichž hodnoty jsou dány jistým vzorcem, jako ten vzorec samotný. [1] První způsob zavedení polynomu BI-LIN, polynomy,

Více

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 / 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íce

Logické programy Deklarativní interpretace

Logické programy Deklarativní interpretace Logické programy Deklarativní interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 7 1 Algebry. (Interpretace termů) Algebra J pro jazyk termů L obsahuje Neprázdnou

Více

Definice 7.2. Nejmenší přirozené číslo k, pro které je graf G k-obarvitelný, se nazývá chromatické číslo (barevnost) grafu G a značí se χ(g).

Definice 7.2. Nejmenší přirozené číslo k, pro které je graf G k-obarvitelný, se nazývá chromatické číslo (barevnost) grafu G a značí se χ(g). 7 Barevnost grafu Definice 71 Graf G se nazývá k-obarvitelný, jestliže každému jeho uzlu lze přiřadit jednu z barev 1 k tak, že žádné dva sousední uzly nemají stejnou barvu Definice 72 Nejmenší přirozené

Více

Teoretická informatika TIN 2013/2014

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í

Více

Racionální čísla, operátory, výrazy, knihovní funkce

Racionální čísla, operátory, výrazy, knihovní funkce Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Racionální čísla,

Více

Sekvenční logické obvody

Sekvenční logické obvody Sekvenční logické obvody Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou Sekvenční obvody - paměťové členy, klopné obvody flip-flop Asynchronní klopné obvody

Více

9. Vícerozměrná integrace

9. Vícerozměrná integrace 9. Vícerozměrná integrace Tomáš Salač Ú UK, FF UK LS 2017/18 Tomáš Salač ( Ú UK, FF UK ) 9. Vícerozměrná integrace LS 2017/18 1 / 29 9.1 Elementy teorie míry Poznámka Na R n definujeme systém tzv. měřitelných

Více

8) Jaké jsou důvody pro použití víceprůchodového překladače Dříve hlavně kvůli úspoře paměti, dnes spíše z důvodu optimalizace

8) Jaké jsou důvody pro použití víceprůchodového překladače Dříve hlavně kvůli úspoře paměti, dnes spíše z důvodu optimalizace 1) Charakterizujte křížový překladač Překlad programu probíhá na jiném procesoru, než exekuce. Hlavním důvodem je náročnost překladače na cílovém stroji by ho nemuselo být možné rozběhnout. 2. Objasněte

Více

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 / 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:

Více

Teoretická informatika

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í

Více

Organizace. Zápočet: test týden semestru (pátek) bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část

Organizace. Zápočet: test týden semestru (pátek) bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část Matematika I 1/15 2/15 Organizace Zápočet: test 6. + 11. týden semestru (pátek) 80 bodů 50 79 bodů souhrnný test (1 pokus) Zkouška: písemná část ( 50 bodů), ústní část www.vscht.cz/mat Výuka www.vscht.cz/mat/jana.nemcova

Více

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

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

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

Marie Duží

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

Více

Derivace funkce. Přednáška MATEMATIKA č Jiří Neubauer

Derivace funkce. Přednáška MATEMATIKA č Jiří Neubauer Přednáška MATEMATIKA č. 9-11 Katedra ekonometrie FEM UO Brno kancelář 69a, tel. 973 442029 email:jiri.neubauer@unob.cz Šotová, J., Doudová, L. Diferenciální počet funkcí jedné proměnné Motivační příklady

Více

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014 Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 204 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia

Více

Využití řízených gramatik v programovacích jazycích

Využití řízených gramatik v programovacích jazycích Fakulta informačních technologií, Vysoké učení technické v Brně Využití řízených gramatik v programovacích jazycích Projekt do předmětu Teorie programovacích jazyků doktorského studijního programu 15.

Více

Vlastnosti Derivační strom Metody Metoda shora dolů Metoda zdola nahoru Pomocné množiny. Syntaktická analýza. Metody a nástroje syntaktické analýzy

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é

Více

Dodatek 2: Funkce dvou proměnných 1/9

Dodatek 2: Funkce dvou proměnných 1/9 Dodatek 2: Funkce dvou proměnných 1/9 2/9 Funkce dvou proměnných Definice: Reálnou funkcí dvou reálných proměnných, definovanou na množině M R 2, rozumíme předpis f, který každé uspořádané dvojici reálných

Více

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI

Více

TURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

TURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze TURINGOVY STROJE Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 12 Evropský sociální fond Praha & EU: Investujeme do vaší

Více

Návrh algoritmů pro sémantické akce při výstavbě interpretu metodou rekurzivního sestupu

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.

Více

Konečný automat Teorie programovacích jazyků

Konečný automat Teorie programovacích jazyků Konečný automat Teorie programovacích jazyků oc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@menelu.cz Automaty v běžném životě Konečný automat Metoy konstrukce konečného automatu

Více

Matematika 4 FSV UK, LS Miroslav Zelený

Matematika 4 FSV UK, LS Miroslav Zelený Matematika 4 FSV UK, LS 2017-18 Miroslav Zelený 13. Diferenční rovnice 14. Diferenciální rovnice se separovanými prom. 15. Lineární diferenciální rovnice prvního řádu 16. Lineární diferenciální rovnice

Více

Modely Herbrandovské interpretace

Modely Herbrandovské interpretace Modely Herbrandovské interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 8 1 Uvedli jsme termové interpretace a termové modely pro logické programy a také nejmenší

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

10 Funkce více proměnných

10 Funkce více proměnných M. Rokyta, MFF UK: Aplikovaná matematika II kap. 10: Funkce více proměnných 16 10 Funkce více proměnných 10.1 Základní pojmy Definice. Eukleidovskou vzdáleností bodů x = (x 1,...,x n ), y = (y 1,...,y

Více

Matematika 2 LS 2012/13. Prezentace vznikla na základě učebního textu, jehož autorem je doc. RNDr. Mirko Rokyta, CSc. J. Stebel Matematika 2

Matematika 2 LS 2012/13. Prezentace vznikla na základě učebního textu, jehož autorem je doc. RNDr. Mirko Rokyta, CSc. J. Stebel Matematika 2 Matematika 2 13. přednáška Obyčejné diferenciální rovnice Jan Stebel Fakulta mechatroniky, informatiky a mezioborových studíı Technická univerzita v Liberci jan.stebel@tul.cz http://bacula.nti.tul.cz/~jan.stebel

Více

Lineární algebra : Polynomy

Lineární algebra : Polynomy Lineární algebra : Polynomy (2. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních technologií České

Více

Matematická analýza 1

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

Více

Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek

Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek Otázka 06 - Y01MLO Zadání Predikátová logika, formule predikátové logiky, sentence, interpretace jazyka predikátové logiky, splnitelné sentence, tautologie, kontradikce, tautologicky ekvivalentní formule.

Více

Aplikovaná numerická matematika

Aplikovaná numerická matematika Aplikovaná numerická matematika 6. Metoda nejmenších čtverců doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních

Více

Funkce jedn e re aln e promˇ enn e Derivace Pˇredn aˇska ˇr ıjna 2015

Funkce jedn e re aln e promˇ enn e Derivace Pˇredn aˇska ˇr ıjna 2015 Funkce jedné reálné proměnné Derivace Přednáška 2 15. října 2015 Obsah 1 Funkce 2 Limita a spojitost funkce 3 Derivace 4 Průběh funkce Informace Literatura v elektronické verzi (odkazy ze STAGu): 1 Lineární

Více

9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>

9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h> 9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include int main(void) { int dcislo, kolikbcislic = 0, mezivysledek = 0, i; int vysledek[1000]; printf("zadejte

Více

Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:

Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má: 1 z 6 14.11.2017 0:03 Přijímací zkouška magisterského studia Moodle Test MSP Testy VzorTest-2 Pokus 1 Jste přihlášeni jako Josef Kolář (Odhlásit se) Náhled testu 1 Je dán regulární výraz. Minimální deterministický

Více

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false Logické operace Datový typ bool může nabýt hodnot: o true o false Relační operátory pravda, 1, nepravda, 0, hodnoty všech primitivních datových typů (int, double ) jsou uspořádané lze je porovnávat binární

Více