Druha sada domacich uloh
Pred tym, ako si rezervujete nejaku domacu ulohu, precitajte si
pravidla rezervovania domacich uloh.
Ulohy 1 a 5 su urcene na odovzdavanie a nie je mozne ich prezentovat.
Odovzdavajte ich do stredy 23. 2. rana (t.j. 8:10) do skatule na chodbe pred
sekretariatom katedry informatiky.
Vseobecne upozornenie: Ak bola odprednasana vseobecna konstrukcia na
riesenie danej ulohy, pouzivajte ju.
V ulohach 1 - 4 zostrojte linearne ohraniceny automat (LBA) akceptujuci
dany jazyk.
Uloha 1
(*odovzdavacia uloha)
L = { ww | w je slovo nad abecedou {a,b} }
Uloha 2
L = { an2 | n > 0 }
Uloha 3
L = { a2n | n > 0 }
Uloha 4
Nech G je gramatika s pravidlami
S -> ab | bbA
A -> aaS | b
Zostrojte linearne ohraniceny automat pre jazyk
L = { w1#w2# ..#wn | wi =>G wi+1
pricom w1 = S a wn neobsahuje neterminaly }
(L je nad abecedou S,A,a,b,#).
Uloha 5
(*odovzdavacia uloha)
Definujte dvojsmerny konecny automat, t.j., konecny automat s moznostou
pohybu hlavy aj dolava (standardne 4 definicie).
Mimo bodovania: skuste sa zamysliet nad silou takehoto automatu.
Uloha 6
L1 = { ap | p je prvocislo mensie ako 100 }
L2 = { w | w je nad abecedou {a,b,c} a neobsahuje styri rovnake
pismena za sebou }
Zostrojte a-prekladac, ktory prelozi jazyk L1 na jazyk L2.
Uloha 7
Nech R je regularny jazyk. Zostrojte a-prekladac MR
taky, ze MR(L) = L ^ R (znak ^ znamena prienik) pre
kazdy jazyk L.
Uloha 8
Nech R je binarna relacia na konecnej mnozine (abecede) Sigma.
Nech
L = {a1a2 .. an | ai R ai+1 pre 0<i<n, 0<n }
Dokazte, ze L je regularny.
Uloha 9
Jazyk regularnych gramatik sa sklada zo slov, ktore su korektnymi zapismi
regularnych gramatik pomocou abecedy skladajucej sa zo symbolov
{, }, (, ), ->,
, (ciarka) a malych a velkych pismen latinskej abecedy.
Napriklad gramatika zo 4. ulohy sa v nom zapise ako
({A,S},{a,b},{S->ab,A->aaS,S->bbA,A->b},S)
Zostrojte linearne ohraniceny automat rozpoznavajuci jazyk regularnych
gramatik.
Uloha 10
(Pre fajnsmekrov :))
Rozhodnite, ci je nasledujuci jazyk bezkontextovy:
L = {aibjck | i != j, j != k a zaroven k != i }