Séria domácich úloh na cvičenie 6
Zjednotenie značíme u, prienik ^, doplnok C,
a reverz R.
Reverz jazyka L je definovaný nasledovne: LR = { wR | w patrí do L }
Počiatočný symbol gramatiky označujeme S. Ak nie je povedané ináč,
malé písmená označujú terminály, veľké písmená neterminály. Používame skrátenú
formu zápisu pravidiel, t. j. S->A | bb sú dve pravidlá:
S->A a S->bb.
-
Rozhodnite, či je trieda regulárnych jazykov uzavretá na zreťazenie (t.j. či
pre ľubovoľné regulárne gramatiky G1 a G2 existuje regulárna
gramatika G taká, že L(G)=L(G1) . L(G2) ).
Svoje tvrdenie dokážte.
-
Zostrojte deterministický konečný automat akceptujúci jazyk
L = { u.ababba.v | u,v patria do {a,b}*} (. je zreťazenie).
Dokážte správnosť svojej konštrukcie.
-
Zostrojte deterministický konečný automat akceptujúci jazyk
L = { w | #aw mod 2 = #b w mod 2 } a dokážte správnosť
svojej konštrukcie.
-
Daná je regulárna gramatika G = (N, T, P, S). Zostrojte regulárnu gramatiku
G' = ( N', T, P', S') takú, aby pre jazyk L(G') platilo
L(G') = [L(G)]R.
Dokážte správnosť svojej konštrukcie.
(Inými slovami, dokážte uzavretosť regulárnych jazykov na reverz.)
-
Daná je bezkontextová gramatika G = ( N, T, P, S ). Zostrojte bezkontextovú
gramatiku G' = ( N', T, P', S') takú, aby pre jazyk L(G')
platilo L(G') = [L(G)]R.
Dokážte správnosť svojej konštrukcie.
(Inými slovami, dokážte uzavretosť bezkontextových jazykov na reverz.)
-
Majme kontextovú gramatiku G = ( N, T, P, S ) , kde
N = { A, B, C, D },
T = { a, b, c },
P = {
S -> abcD | epsilon
D -> ABCD | epsilon
cA -> Ac
bA -> Ab
aA -> aa
cB -> Bc
bB -> bb
cC -> cc }.
Definujme homomorfizmus h:(N u T)* -> (N u T)* nasledovne:
h(x)=epsilon, ak x patrí do N
h(x)=x, ak x patrí do T
Dokážte (formálne!), že pre všetky vetné formy u gramatiky G platí nasledujúce tvrdenie:
- #au+#Au = #bu+#Bu = #cu+#Cu
- h(u) patrí do {aibjck | i,j,k>=0 }
-
Zostrojte deterministický konečný automat akceptujúci jazyk
L = { u.abaabab | u patrí do {a,b}* } (. je zreťazenie).
Dokážte správnosť svojej konštrukcie.
-
Zostrojte deterministický konečný automat akceptujúci jazyk
L = { w | w patrí do {a,b,c}*, medzi posledným a v slove w a
koncom slova w sa nachádzajú aspon 3 symboly c a medzi posledným
b v slove w a koncom slova w sa nachádza
aspoň 5 symbolov c }. Dokážte správnosť svojej konštrukcie.