Vous êtes sur la page 1sur 5

Exerccios de Reviso 1.

Descreva informalmente as linguagens denotadas: (a) (1 + 01) ( + 0): Linguagem sobre o alfabeto {0, 1}, onde no h palavras com zeros consecutivos (b) ((0 + 1)(0 + 1)) + ((0 + 1)(0 + 1)(0 + 1)) : Linguagem sobre o alfabeto {0, 1}, onde o comprimento das palavras um nmero par ou multiplo de 3 (c) (0011) : Linguagem sobre o alfabeto {0, 1}, onde o comprimento das palavras um nmero mltiplo de 4, os 1s e 0s aparencem aos pares, cada par de 1s precedido por um par de 0s e cada par de 0s sucedido por um par de 1s (d) (0 + 1) 1(0 + 1) : Linguagem sobre o alfabeto {0, 1}, onde as palavras possuem pelo menos um 1 2. Elabore expresses regulares que denotem as linguagens a seguir: (a) conjunto de palavras sobre {a, b, c} contendo ao menos um a e ao menos um b: (c + a + b) (a(c + a + b) b + b(c + b + a) a)(a + c + b) ; (b) conjunto de identicadores da linguagem Pascal que so compostos por uma letra (a . . . z ) ou sublinhado (_) seguido por qualquer combinao de letras, sublinhados ou dgitos (0 . . . 9): (a + . . . + z + _)(a + . . . + z + _ + 0 + . . . + 9) . 3. Construa o AF equivalente a expresso regular (1 + 01) ( + 0).

4. Obtenha a ER equivalente ao AF a seguir:

90

ba b(b + aa b) + ab a(a + bb a) 5. Dena a linguagem gerada pela Gramtica G = ({S, B, C }, {a, b, c}, {S aSaa|B, B bbBcc|C, C bc}, S ) Informalmente: conjunto de palavras formadas por as, bs e cs que podem aparecer na seguinte ordem: uma quantidade qualquer de as seguido de quantidade mpar de bs seguido de cs na mesma quantidade de bs e nalizadas pelo dobro de as iniciais. L = {am bn cn a2m |m 0, n 1 e mpar} 6. Dena GLCs que gerem as linguagens a seguir. (a) L = {1n 02n | n 1} G = ({S }, {0, 1}, {S 1S 00|100}, S ) (b) L = {wwR | w e uma palavra de {a, b} } G = ({S }, {a, b}, {S aSa|bSb|}, S ) 7. Verique se a gramtica a seguir ambgua. Caso seja ambgua, mostre o porqu, caso contrrio justique sua resposta. G = ({P rog, Com, Cond, Exp}, {x, y, :=, if , then, else, true, false}, P, P rog ), onde P = {P rog Com, Com Cond | x := y, Cond if Exp then Com | if Exp then Com else Com, Exp true | false} ambgua, pois existem duas rvores de derivao diferentes para a palavra if true then if false then x := y else x := y como mostradas a seguir:

91

P rog

P rog

Com

Com

Cond if Exp then Com

Cond if Exp then Com else Com

true

Cond if Exp then Com else Com

true

x := y Cond then Com if Exp

false

x := y

x := y

false

x := y

8. Dena APs que reconheam, por pilha vazia e por estado nal, as linguagens a seguir. (a) L = {an b2n cm dm+2 |n 0, m 1}

Pilha vazia

Estado nal (b) L = {ai bj ck |i + k = j }

Pilha vazia

Estado nal (c) Mostre sequncias de mudanas de conguraes dos autmatos resultantes do item anterior para o reconhecimento da palavra aaabbbbc. Pilha vazia: 92

(q0 , aaabbbbc, Z0 ) (q0 , aabbbbc, XZ0 ) (q0 , abbbbc, XXZ0 ) (q0 , bbbbc, XXXZ0 ) (q1 , bbbbc, XXXZ0 ) (q1 , bbbc, XXZ0 ) (q1 , bbc, XZ0 ) (q1 , bc, Z0 ) (q2 , bc, Z0 ) (q2 , c, XZ0 ) (q3 , c, XZ0 ) (q3 , , Z0 ) (q3 , , ) Estado nal: (q0 , aaabbbbc, Z0 ) (q0 , aabbbbc, XZ0 ) (q0 , abbbbc, XXZ0 ) (q0 , bbbbc, XXXZ0 ) (q1 , bbbbc, XXXZ0 ) (q1 , bbbc, XXZ0 ) (q1 , bbc, XZ0 ) (q1 , bc, Z0 ) (q2 , bc, Z0 ) (q2 , c, XZ0 ) (q3 , c, XZ0 ) (q3 , , Z0 ) (q4 , , Z0 ) 9. Considere a GLC a seguir: G = ({S, M, N, O}, {x, y, z }, {S M zSzN |O, M xM |, N yN |O, O z }, S ) (a) Encontre a derivao mais a esquerda para a palavra xzxzzzyzzyyz . S M zSzN xM zSzN xzSzN xzM zSzN zN xzxM zSzN zN xzxzSzN zN xzxzOzN zN xzxzzzN zN xzxzzzyN zN xzxzzzyOzN xzxzzzyzzN xzxzzzyzzyN xzxzzzyzzyyN xzxzzzyzzyyO xzxzzzyzzyyz (b) Desenhe a rvore de derivao da palavra acima.

S z S z N M x M y N M z S z N O y N y N x M

(c) Simplique a gramtica eliminando regras-, regras unitrias e smbolos inteis: i. Eliminao das regras-: G1 = ({S, M, N, O}, {x, y, z }, P1 , S ), onde P1 = {S M zSzN |zSzN |O, M xM |x, N yN |O, O z } ii. Eliminao das regras unitrias: G2 = ({S, M, N, O}, {x, y, z }, P2 , S ), onde P2 = {S M zSzN |zSzN |z, M xM |x, N yN |z, O z } 93

iii. Eliminao smbolos inteis: G3 = ({S, M, N }, {x, y, z }, P3 , S ), onde P3 = {S M zSzN |zSzN |z, M xM |x, N yN |z } 10. Obtenha uma gramtica sem recurso esquerda equivalente a gramtica G = ({S, R, T }, {0, 1}, {S ST |RS |0, R SR|1, T SS }, S ). (a) Ordenar as variveis (i j ): Passo 1: S2 S2 T |R0 S |0 R 0 S2 R | 1 T1 S 2 S Passo 2: S2 S2 T |S2 RS |1S |0 R 0 S2 R | 1 T1 S 2 S G1 = ({S, R, T }, {0, 1}, P1 , S ) P1 = {S ST |SRS |1S |0, R SR|1, T SS } (b) Eliminar a recurso esquerda direta: Passo 1: identicar as variveis: com recurso: S sem recurso: R, T Acidionar uma varivel nova para cada varivel com recurso: A Passo 2: classicar as regras de S em: recursivas: no recursivas: S ST |SRS S 1S |0 Passo 3: construir o conjunto de regras com: regras sem recurso: regras para cada regra no recursiva de S : regras para cada regra recursiva de S : S 1S |0, R SR|1, T SS S 1SA|0A A T A|T |RSA|RS

G2 = ({S, R, T, A}, {0, 1}, P2 , S ) P2 = {S 1S |0|1SA|0A, R SR|1, T SS, A T A|T |RSA|RS }

94