Você está na página 1de 3

Fundamentos da Teoria da Computac ao 1

o
semestre de 2013
Professor: Newton Jose Vieira DCC/ICEx/UFMG
Lista de Exerccios Preparatoria para a Primeira Prova
1. Faca denicoes recursivas das seguintes linguagens, considerando a concatenacao como a
operacao basica no passo recursivo:
1
a) {0, 1}
+
.
b) {0, 1}

{0}{0, 1}

.
c) {0}{0, 1}

{0}.
d) {0
n
1
3n
| n N}.
e) {ww
R
| w {0, 1}

}.
f ) {x
1
+ + x
n
| n 1 e x
i
{0, 1}
+
para i = 1, . . . , n}. Dica: Faca duas deni coes
recursivas separadas, a primeira denindo o que pode ser cada x
i
.
2. Perguntinhas:
(a) Que palavras tem cada uma das linguagens a seguir?

;
+
; {}

; {}
+
; {0}

; {0}
+
;{, 0}

; {, 0}
+
.
(b) Em que situacoes L

e L
+
sao nitas?
(c) Seja um alfabeto. Explique que palavras pertencem a cada uma das linguagens:

n
para cada n 0; que valor tem |
n
|?
( {})
n
para cada n 0; que valor tem |( {})
n
|?
(d) Sejam = {a, b}, A = {a}
+
e B =

{b}. Apresente uma condicao necessaria e


suciente para que uma palavra de

pertenca a AA, AB, BB, A B, A B e


B A.
3. Descreva as linguagens a seguir, todas sobre o alfabeto {0, 1}, usando apenas conjuntos
nitos e operacoes de uniao, intersecao, complementacao, concatenacao e fecho de Kleene.
Procure obter uma descricao bem concisa.
(a) O conjunto das palavras de prexo 01.
(b) O conjunto das palavras que nao contem 01 como suxo.
(c) O conjunto das palavras que nao contem 01 como subpalavra.
(d) O subconjunto das palavras de {0}

{1}

com n umero par de 0s.


(e) O conjunto das palavras com no maximo vinte smbolos.
(f) O conjunto das palavras que contem pelo menos um 0 e um 1.
(g) O conjunto das palavras em que todo 0 e seguido de pelo menos dois smbolos.
(h) O conjunto das palavras que contem pelo menos um 00, mas nenhum 11.
1
Veja a Secao 1.7, pag. 28, do livro-texto.
1
4. Identique as linguagens que sao geradas pelas gramaticas a seguir:
(a) G
1
= ({P, X}, {a, b}, R
1
, P).
R
1
: P aP | Xb |
X aP
(b) G
2
= ({P, X}, {a, b}, R
2
, P).
R
2
: P aaP | Xb |
X aP
(c) G
3
= ({P, A}, {0, 1}, R
3
, P).
R
3
: P aPa | A
A bAb |
(d) G
4
= ({A, X}, {0, 1}, R
4
, A).
R
4
: A XAX | X
X 0X0 | 1X1 | 0 | 1
(e) G
5
= ({X, B}, {a, b, c}, R
5
, X).
R
5
: X aBX| abc
Ba aB
Bb bB
Bc bcc
5. Obtenha gramaticas para as linguagens da questao 1.
6. Construa automatos nitos determinsticos (AFDs) que reconhecam as linguagens da
questao 3. Apresente apenas os diagramas de estados.
7. Construa AFDs que reconhecam as linguagens a seguir. Apresente apenas os diagramas
de estados.
(a) {w {0, 1}

| |w| 2 e o primeiro e o pen ultimo smbolos de w sao 1}.


(b) {w {0, 1}

| o ultimo smbolo de w e diferente do primeiro}.


(c) {w {0, 1}

| os tres ultimos smbolos de w nao sao 000}.


(d) {x10
n
| n 0, x {0, 1}

e x tem n umero par de 0s}.


8. Faca AFDs que reconhecam: X = {0}{0, 1}

. e Y = {0, 1}

{1}. Bastam apenas os


diagramas de estados. Em seguida, obtenha o produto dos dois AFDs e explicite que
estados nais ele deve ter para reconhecer:
(a) X Y .
(b) X Y .
(c) X Y .
9. Explique porque se um AFD M reconhece uma palavra de tamanho maior ou igual ao
n umero de estados de M, entao L(M) e innita.
10. Construa AFNs para as seguintes linguagens, com o menor n umero de estados e de
transicoes que conseguir:
2
(a) O conjunto das palavras de {a, b, c}

, de dois ou mais smbolos, em que o ultimo


smbolo seja diferente do primeiro.
(b) O conjunto das palavras de {a, b, c}

em que o ultimo smbolo tenha ocorrido antes


no mnimo uma vez.
(c) O conjunto das palavras de {a, b, c}

em que o ultimo smbolo tenha ocorrido antes


no maximo duas vezes.
11. Seja o AFN com o diagrama de estados a seguir:
1 2
3 4
0
0
0
1
1
1
0 0
Construa um AFD equivalente usando o metodo visto em aula (subset construction).
12. Seja o AFN M:
A B
C D E



a
b
c
d
a
13. Construa um AFN N, equivalente a M, usando o metodo visto em aula.
3

Você também pode gostar