A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 Computabilidade e Linguagens Formais Problemas – Notas baseadas em John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman. Introduction to automata theory,

Apresentações semelhantes


Apresentação em tema: "1 Computabilidade e Linguagens Formais Problemas – Notas baseadas em John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman. Introduction to automata theory,"— Transcrição da apresentação:

1 1 Computabilidade e Linguagens Formais Problemas – Notas baseadas em John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman. Introduction to automata theory, languages and computation. 2nd ed, Addison- Wesley, Gabriel David / Cristina Ribeiro

2 Problemas-2 Problema 1 Considere a linguagem S* em que S= {aa, b}. Quantas palavras de comprimento 4, 5e 6 contém esta linguagem? – O que pode concluir em geral? Resposta – 4: aaaa, aabb, baab, bbaa, bbbb(5) – 5: aaaab, aabaa, baaaa, aabbb, baabb, bbaab, bbbaa, bbbbb (8) – 6: aaaaaa, aaaabb, aabaab, aabbaa, aabbbb, baabaa, baaaab, baabbb, bbaaaa, bbaabb, bbbaab, bbbbaa, bbbbbb (13)

3 Problemas-3 Problema 2 (i) Seja S={ab, bb} e T={ab, bb, bbbb}. Mostre que S*=T*. (ii) Seja S={ab, bb} e T={ab, bb, bbb}. Mostre que S* T*, mas que S* T*. (iii) Que princípio ilustram estes resultados? Resposta – (i) S* T*. Se w S* então é constituído por uma sequência de ocorrências de ab e de bb. Ora quer ab quer bb pertencem a T e portanto w T*. – T* S*. Se w T* então é constituído por uma sequência de ocorrências de ab, bb e bbbb. Ora quer ab quer bb pertencem a S e bbbb corresponde a repetir bb que está em S e portanto w S*.

4 Problemas-4 Problema 2 (cont.) – (ii) S* T*. Se w S* então é constituído por uma sequência de ocorrências de ab e de bb. Ora quer ab quer bb pertencem a T e portanto w T*. – S* T*, porque, por exemplo bbb T* mas não a S*, uma vez que as cadeias só com bs em S* tem que ter comprimento par pois são construídas à custa de repetições de bb. – (iii) o princípio ilustrado é o de que S T S* T*.

5 Problemas-5 Problema 3 Suponha que numa certa linguagem L se podem sempre concatenar duas palavras e obter uma palavra em L, desde que as duas sejam diferentes, isto é, dadas w 1, w 2 L, w 1 w 2, então w 1 w 2 L, embora w 1 w 1 não pertença. Mostre que isto não pode acontecer. Resposta – Se w 1, w 2 L então w 1 w 2 L e w 1 w 2 w 1 L e, fazendo x 1 = w 1 w 2 w 1 e x 2 =w 2, w 1 w 2 w 1 w 2 L. Mas então, fazendo agora x 1 = w 1 w 2, também x 1 x 1 L, contrariando a hipótese.

6 Problemas-6 Problema 4 Apesar de alguma semelhanças, as expressões regulares não são polinómios algébricos. Quais das seguintes igualdades são verdadeiras? Justifique. – (i) (a+b)* = (a+b)* + (a+b)* – (ii) (a+b)* = (a+b)* b (a+b)* – (iii) (a+b)* = (a+b)* + a* – (iv) (a+b)* = (a+b)* (a+b)* – (v) (a+b)* = a(a+b)* + b(a+b)* – (vi) (a+b)* = (a+b)*ab(a+b)*+b*a* Resposta – falsas são (ii), porque exige sempre um b, e (v) porque falta o caso vazio (acrescentar ); na (vi) trata-se primeiro os casos em que existe um ab e com b*a* todos os outros

7 Problemas-7 Problema 5 Considere a expressão regular e simplifique-a – E = (a+b)*a(a+b)*(a+ )(a+b)*a(a+b)* Resposta – Aplicar a propriedade distributiva – E = (a+b)*a(a+b)*(a)(a+b)*a(a+b)* + (a+b)*a(a+b)*( )(a+b)*a(a+b)* – Reconhecer: 1ª operando exige 3 as, enquanto que o segundo exige apenas 2, o que inclui o caso dos 3. – Simplifica para: E= (a+b)*a(a+b)*a(a+b)*

8 Problemas-8 Problema 6 Considere o autómato da figura. Obtenha uma expressão regular que defina a mesma linguagem usando – (i) o método da construção de caminhos – (ii) o método da redução de nós Start 2 a 3 b 4 a,b 1 a ab b

9 Problemas-9 Problema 6 (cont.) R ij (k) = R ij (k-1) + R ik (k-1) (R kk (k-1) )* R kj (k-1) R 11 (0) R 12 (0) a R 13 (0) b R 14 (0) R 21 (0) R 22 (0) R 23 (0) a R 24 (0) a Start 2 a 3 b 4 a,b 1 a ab b R 31 (0) R 32 (0) b R 33 (0) R 34 (0) b R 41 (0) R 42 (0) R 43 (0) R 44 (0) +a+b R 11 (1) R 12 (1 ) a R 13 (1 ) b R 14 (1 ) R 21 (1 ) R 22 (1 ) R 23 (1 ) a R 24 (1 ) a R 12 (1) =a+ ( )*a = a R 31 (1) R 32 (1) b R 33 (1) R 34 (1) b R 41 (1) R 42 (1) R 43 (1) R 44 (1) + a+b

10 Problemas-10 Problema 6 (cont.) R ij (k) = R ij (k-1) + R ik (k-1) (R kk (k-1) )* R kj (k-1) R 11 (2) R 12 (2) a R 13 (2) b+aa R 14 (2) aa R 21 (2) R 22 (2) R 23 (2) a R 24 (2) a Start 2 a 3 b 4 a,b 1 a ab b R 31 (2) R 32 (2) b+ba R 33 (2) +ba R 34 (2) b+ba R 41 (2) R 42 (2) R 43 (2) R 44 (2) +a+b R 11 (3) R 12 (3 ) a+(b+aa)(ba)*(b+ba) R 13 (3 ) b+aa +(b+aa)(ba)*( +ba) R 14 (3 ) aa+(b+aa)(ba)*(b+ba) R 21 (3 ) R 22 (3 ) +a( b+a)(b+ba) R 23 (3 ) a+a( +ba)*( +ba) R 24 (3 ) a+a(ba)*(b+ba) R 12 (2) =a+a( )* = a R 13 (2) =b+a( )*a = b+aa R 32 (2) =b+b( )*a = b+ba R 12 (3) =a+(b+aa)( +ba)*( b+ba) = a+(b+aa)(ba)*(b+ba)

11 Problemas-11 Problema 6 (cont) R ij (k) = R ij (k-1) + R ik (k-1) (R kk (k-1) )* R kj (k-1) Start 2 a 3 b 4 a,b 1 a ab b R 31 (3) R 32 (3) b( +a)+(ba)*b( +a) R 33 (3) (ba)* R 34 (3) b+ba+ (ba)*(b+ba) R 41 (3) R 42 (3) R 43 (3) R 44 (3) +a+b R 14 (4) = aa+(b+aa)(ba)*(b+ba)+(aa+(b+aa)(ba )*(b+ba))( +a+b)*( +a+b)= aa+(b+aa)(ba)*(b+ba)+(aa+(b+aa)(ba)*(b+b a))(a+b)*

12 Problemas-12 Problema 6 (cont) Eliminar 2 e depois 3 Start 2 a 3 b 4 a,b 1 a ab b Start aa 3 b+aa 4 a,b 1 b+ba Start aa+(b+aa)(ba)*(b+ba) 4 a,b 1 ba R= [aa+(b+aa)(ba)*(b+ba)](a+b)* = = [aa+b(ba)*b+b(ba)*ba +aa(ba)*b + aa(ba)*ba](a+b)*= = (aa+bb)(a+b)*


Carregar ppt "1 Computabilidade e Linguagens Formais Problemas – Notas baseadas em John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman. Introduction to automata theory,"

Apresentações semelhantes


Anúncios Google