Modelos de Computação Folha de trabalho n. 8

Tamanho: px
Começar a partir da página:

Download "Modelos de Computação Folha de trabalho n. 8"

Transcrição

1 Modelos de Computação Folha de trabalho n. 8 Nota: Os exercícios obrigatórios marcados de A a D constituem os problemas que devem ser resolvidos individualmente. A resolução em papel deverá ser depositada nas caixas da disciplina (P5-P8 e P1- P4,P9,P10) até ao dia às 8h30m e apresentada na aula prática respectiva.na resolução em papel por favor indicar no cimo da 1a folha o nome e a turma prática. Para saber quais dos exercícios que deverás apresentar, consultar nam/aulas/0405/mc/dist.pdf. Autómatos de Pilha 8.1 Considera o autómato de pilha M = ({q 0, q 1, q 2 }, {a, b}, {A, B}, δ, q 0, A, {q 2 }) onde as transições δ são: δ(q 0, a, A) = {(q 0, BA), (q 1, A)} δ(q 0, b, A) = {(q 0, B)} δ(q 1, a, B) = {(q 1, ɛ)} δ(q 1, b, B) = {(q 1, ɛ)} δ(q 1, ɛ, A) = {(q 2, ɛ)} (a) Representa o autómato M por um diagrama de transições. (b) Indica todas as mudanças de configuração do autómato com a palavra aba, começando na configuração (q 0, aba, A). (c) Indica quais das seguintes palavras pertencem a L(M), isto é, à linguagem aceite pelo autómato por estados finais: L(M) = {x (q 0, x, A) M (q 2, ɛ, γ)} aa aba baa bab abb baaaa (d) Verifica que neste caso N(M) = {x (q 0, x, A) M (q, ɛ, ɛ)}, a linguagem aceite pelo autómato por pilha vazia, é igual a L(M) (e) Descreve L(M) em linguagem corrente. 8.2 Seja o autómato de pilha P = ({q 0, q 1, q 2 }, {a, b, c}, {Z, B}, δ, q 0, Z, {q 1 }) onde as transições δ são: δ(q 0, a, Z) = {(q 1, Z)} δ(q 0, b, Z) = {(q 0, BZ)} δ(q 0, a, B) = {(q 1, B)} δ(q 1, b, B) = {(q 2, ɛ)} δ(q 2, ɛ, Z) = {(q 2, ɛ)} δ(q 1, a, Z) = {(q 1, Z), (q 1, ɛ)} δ(q 0, b, B) = {(q 0, BB)} δ(q 1, a, B) = {(q 1, B)} δ(q 2, b, B) = {(q 2, ɛ)} (a) Representa o autómato P por um diagrama de transições. (b) Indica todas as mudanças de configuração do autómato com a palavra aaaa, começando na configuração (q 0, aaaa, Z). (c) Mostra que qualquer palavra da linguagem descrita por aa é aceite pelo autómato por estados finais e por pilha vazia. (d) Mostra que qualquer palavra da linguagem descrita por bbaa é aceite pelo autómato por estados finais mas não por pilha vazia. (e) Mostra que nenhuma palavra da linguagem descrita por bbb aa b é reconhecida pelo autómato por estados finais ou por pilha vazia. (f) Descreva informalmente N(P ) (a linguagem aceite por P por pilha vazia) e L(P ) (a linguagem aceite por P por estados finais). Comenta a afirmação: L(P ) pode ser aceite por um autómato finito determinístico mas N(P ) não. (g) Indica uma gramática independente de contexto que gere N(P ). 8.3 Descreve autómatos de pilha que reconheçam (por pilha vazia ou por estados finais) cada uma das linguagens seguintes. Dep. Ciência de Computadores/FCUP

2 (a) R {a, x R é a inversa de x, e x {a, b} } (b) {x {a, b} x é capícua} (c) Seja x {0, 1} representemos por x o número inteiro que tem aquela representação em binário, {x : y {0, 1, :} x, y {0, 1} \ {ɛ}, e x y (mod 3)} (d) {w : w contém mais 1s que 0s} (e) O complemento da linguagem {0 n 1 n : n 0} (f) {w {0, 1} 3 divide a diferença entre o número de 0 s e 1 s em w} (g) {a i b j c k i = j ou j = k} (h) {a i b j c k i j ou j k} (i) {a i b i+j c j {a, b, c} i 0, j 0} (j) {0 n 1 m {0, 1} n 0, m n} (k) Todas as palavras de {0, 1} que não são da forma ww. 8.4 Mostra que qualquer linguagem que é reconhecida por um autómato de pilha por estados finais pode ser reconhecida por algum autómato de pilha por pilha vazia e vice-versa. 8.5 Considera a linguagem PAREN 2 { (, ), [, ] } } das palavras com dois tipos de parêntesis bem casados. Definimos PAREN 2 indutivamente como o menor conjunto tal que: 1. ɛ PAREN 2 2. se x PAREN 2 então ( x ) PAREN 2 e [ x ] PAREN 2 3. se x, y PAREN 2 então xy PAREN 2 Por exemplo [ ( [ ] ) [ ] ( ) ] PAREN 2 e [ ( ] ) / PAREN 2. (a) Descreve um autómato de pilha que aceite PAREN 2 por pilha vazia. 8.6 Considera a seguinte linguagem M de alfabeto Σ = {a, b, c}, M = {a n b m c l b m l, m, n N, m 0}. (a) Descreve um autómato de pilha que aceite M por estados finais. (b) Indica o papel desempenhado por cada um dos estados. (c) Determina as mudanças de configuração do autómato no processamento das seguintes palavras: (a) aabbbb (b) abccbb 8.7 Considera a seguinte linguagem M de alfabeto Σ = {0, 1, 2}, M = {xyz x, z {0, 1}, y {1, 2}, z = x R }. (a) Descreve um autómato de pilha que aceite M por estados finais. (b) Indica o papel desempenhado por cada um dos estados. (c) Determina as mudanças de configuração do autómato no processamento das seguintes palavras: (a) (b) Dep. Ciência de Computadores/FCUP

3 Resolução de exercícios resolvidos 8.6 (a) Um autómato que reconhece a linguagem dada por estados finais é com {{s 0, s 1, s 2, s 3, s 4 }, {a, b, c}, {A, B}, δ, s 0, A, {s 4 }} δ(s 0, a, A) = {(s 0, A)} δ(s 0, b, A) = {(s 1, A)} δ(s 1, b, A) = {(s 1, BA), (s 4, A)} δ(s 1, b, B) = {(s 1, BB), (s 3, ɛ)} δ(s 1, c, B) = {(s 2, B)} δ(s 2, c, B) = {(s 2, B)} δ(s 2, b, B) = {(s 3, ɛ)} δ(s 2, b, A) = {(s 4, B)} δ(s 3, b, B) = {(s 3, ɛ)} δ(s 3, b, A) = {(s 4, A)} (b) s 0 : palavras da forma a n ; s 1 : palavras da forma a n b m, e a pilha do autómato tem a forma B m A; s 2 : palavras da forma a n b m c l, a pilha tem a forma B m A; s 3 : palavras da forma a n b m c l b k com k < m, a pilha tem a forma B m k A; s 4 : palavras da forma a n b m c l b m. (c) (a) (b) (s 0, aabbbb, A) (s 0, abbbb, A) (s 0, bbbb, A) (s 1, bbb, A) (s 1, bb, BA) (s 3, b, A) (s 4, ɛ, A) (s 0, abccbb, A) (s 0, bccbb, A) (s 1, ccbb, A) (s 2, cbb, A) (s2, bb, A) (s 4, b, A)... e o autómato encrava! 8.7 (a) Um autómato de pilha que reconhece esta linguagem é em que: {s 0, s 1, s 2, s 3 }, {0, 1, 2}, {A, Z, U}, δ, s 0, A, {s 3 }} δ(s 0, 0, X) = {(s 0, ZX)} com X {A, Z, U} δ(s 0, 1, X) = {(s 0, UX)} com X {A, Z, U} δ(s 0, ɛ, X) = {(s 1, X)} com X {A, Z, U} δ(s 1 )1, X) = {(s 1, X)} com X {A, Z, U} δ(s 1, 2, X) = {(s 1, X)} com X {A, Z, U} δ(s 1, ɛ, X) = {(s 2, X)} com X {A, Z, U} δ(s 2, 0, Z) = {(s 2, ɛ)} δ(s 2, 1, U) = {(s 2, ɛ)} δ(s 2, ɛ, A) = {(s 3, A)}. (b) s 0 : palavras da forma x, x {0, 1}, a pilha tem a forma [0/Z, 1/U]x R A; s 1 : palavras da forma xy, x {0, 1}, y {1, 2}, a pilha tem a forma [0/Z, 1/U]x R A; Dep. Ciência de Computadores/FCUP

4 s 3 : palavras da forma xyz, x, z {0, 1}, y {1, 2} com z R sufixo (próprio) de x, a pilha tem a forma [0/Z, 1/U]w R A com x wz R ; s 3 : palavras da forma xyz, x, z {0, 1}, y {1, 2} com z R x. (c) (a) (b) (s 0, , A) (s 0, , UA) (s 0, , ZUA) (s 0, , UZUA) (s 0, 21101, UUZUA) (s 1, 21101, UUZUA) (s 1, 1101, UUZUA) (s 2, 1101, UUZUA) (s 2, 101, UZUA) (s 2, 01, ZUA) (s 2, 1, UA) (s 2, ɛ, A) (s 3, ɛ, A) (s 0, , A) (s 0, , UA) (s 0, , ZUA) (s 0, , UZUA) Autómatos de Pilha e Gramáticas (s 0, 21010, UUZUA) (s 1, 21010, UUZUA) (s 1, 1010, UUZUA) (s 2, 1010, UUZUA) (s 2, 010, UZUA)... e encrava! 8.8 Seja L(G) a linguagem independente de contexto gerada pela gramática seguinte: G = ({A, B}, {a, b}, {A a, A abb, B b, B baa}, A) Descreve um autómato de pilha que aceite L(G) por pilha vazia. 8.9 Converte o autómato de pilha P = ({p, q}, {0, 1}, {X, Z}, δ, q, Z) para uma gramática independente de contexto, onde δ é dado por: δ(q, 1, Z) = {(s, X, Z)} δ(q, 1, X) = {(s, X, X)} δ(q, 0, X) = {(p, X)} δ(q, ɛ, X) = {(q, ɛ)} δ(p, 1, X) = {(p, ɛ)} δ(p, 0, Z) = {(q, Z)} Autómatos de Pilha Determinísticos 8.10 Seja L a linguagem aceite por estados finais pelo autómato de pilha M = ({s 0, s 1, s 2, s 3, s 4, s 5 }, {a, b, c}, {Z, B}, δ, s 0, Z, {s 5 }) em que δ é assim definida δ(s 0, a, Z) = {(s 0, Z)} δ(s 0, b, Z) = {(s 0, BZ)} δ(s 0, b, B) = {(s 0, BB)} δ(s 0, c, B) = {(s 1, B)} δ(s 1, c, B) = {(s 2, B)} δ(s 2, c, B) = {(s 1, B)} δ(s 2, b, B) = {(s 3, B)} δ(s 3, b, B) = {(s 4, B)} δ(s 4, b, B) = {(s 5, ɛ)} δ(s 5, b, B) = {(s 3, B)} (a) Determina as mudanças de configuração do autómato ao processar cada uma das palavras seguintes: bcbbb, bbbb, aaaabbccccbbbbbbb, e aaaabbccccbbbbbb. Quais são aceites pelo autómato (por estados finais)? (b) Seja S = {s 0, s 1, s 2, s 3, s 4, s 5 }, Σ = {a, b, c} e Γ = {Z, B}. Mostra que, para o autómato M se tem: (a) M é determinístico, i.e., quaisquer que sejam s, s S, x, x Σ, X, X Γ, e n N, se x ɛ e (s, xx, X) n (s, x, X ) então (s, X ) é único e n = x. (b) x, w Σ n N (s 0, wx, Z) n (s 0, x, Z) sse w = a n Dep. Ciência de Computadores/FCUP

5 (c) w, x Σ n N m N (s 0, wx, Z) n+m (s 0, x, B m Z) sse w = a n b m (d) w, x Σ m N p N (s 0, wx, B m Z) 2p+1 (s 1, x, B m Z) sse w = c 2p+1 (e) w, x Σ m N p N (s 0, wx, B m Z) 2p+2 (s 2, x, B m Z) sse w = c 2p+2 (f) w, x Σ m N (s 2, wx, B m Z) 3 (s 5, x, B m 1 Z) sse w = bbb (g) w, x Σ m N (s 2, wx, B m Z) 3m (s 5, x, Z) sse w = b 3m (h) Baseando-se na alínea anterior, descreve a linguagem L. (i) Descreve uma gramática independente de contexto que gere L. (j) Descreve um autómato de pilha que aceite L por pilha vazia. (k) Descreva um autómato de pilha que aceite {a n b m c p b m n, p N m N} por estados finais. Verifica que o autómato que descreveste é não-determinístico. Tenta explicar por que é que não existe um autómato de pilha determinístico que aceite essa linguagem Indica se os autómatos de pilha construídos nos exercícios 7.21 e 7.22 são determinísticos. Propriedades das linguagens independentes de contexto 8.12 Usa o lema da repetição para linguagens independentes de contexto para mostrar que as seguintes linguagens não são independentes de contexto: (a) {a n b n c m n 0, m n} (b) {a i b j c k 0 i j k} (c) {0 p p é primo} (d) {0 n2 n 0} 8.13 A classe das linguagens independentes de contexto não é fechada para a complementação. (a) Mostra que L = {ww w {0, 1} } não é independente de contexto, usando o lema da repetição. (b) Mostra que L = {0, 1} \ L é independente de contexto. Sugestão: Nota que qualquer palavra em L ou tem comprimento ímpar ou é da forma x1yx0w ou x0yx1w em que x, y, w Σ, y = w A intersecção de uma linguagem independente de contexto com uma regular é uma linguagem independente de contexto. Usando este facto, mostra que a linguagem não é independente de contexto. {x {a, b, c} x contém o mesmo número de a s, b s e c s} 8.15 Em geral as linguagens independentes de contexto não são fechadas para a complementação nem para a intersecção. (a) Dá um exemplo de duas linguagens L 1 e L 2 independentes de contexto, tais que L 1 L 2 não seja independente de contexto. (b) Dá um exemplo de duas linguagens L 1 e L 2 independentes de contexto, mas não regulares, tais que L 1 L 2 seja independente de contexto. (c) Dá um exemplo duma linguagem L 1 independente de contexto, tal que Σ \ L 1 não seja independente de contexto Apenas uma das seguintes afirmações é verdadeira. Dá contra-exemplo para cada uma das falsas e uma demonstração para a verdadeira. Dep. Ciência de Computadores/FCUP

6 (a) Para toda L Σ, se L é regular, então {xx x L} também o é. (b) Para toda L Σ, se L é regular, então {x xx L} também o é. (c) Para toda L Σ, se L é independente de contexto, então {xx x L} também o é. (d) Para toda L Σ, se L é independente de contexto, então {x xx L} também o é Verdade ou Falsidade? Para cada uma das seguintes questões justifica a sua resposta encontrando uma prova ou um contra-exemplo. (a) O complementar de uma linguagem regular é uma linguagem independente de contexto. (b) A linguagem {(ab) n (cd) n c n n 0} de alfabeto {a, b, c, d} não é independente de contexto. (c) Se L é uma linguagem independente de contexto que não é regular, o seu complementar Σ \L nunca é independente de contexto. (d) Qualquer linguagem independente de contexto que não seja aceite por autómatos de pilha determinísticos é ambígua. (e) Qualquer linguagem que seja reconhecida por autómato de pilha determinístico é não ambígua Para cada uma das seguintes gramáticas em FNC, determina se geram linguagens finitas ou infinitas. (a) {S AB, A BC a, B CC b, C a} (b) {S AB BC, A BA a, B CC b, C AB a} 8.19 Considerando a gramática ({S, A, B}, {a, b}, {S AB, A a, B AB b}, S) simula o algoritmo de análise sintáctica CKY para a palavra aab. Desenha a tabela correspondente (a) Modifica o algoritmo CKY de modo a permitir contar o número de árvores sintácticas para uma dada palavra (b) Testa o teu algoritmo para gramática e a palavra a + a + a + a. ({S, T, B}, {a, +}, {S ST a, T BS, B +}, S) (c) Implementa o algoritmo numa linguagem de programação à tua escolha Averigua se as seguintes linguagens são independentes de contexto, justificando devidamente a resposta (i.e. demonstrando no caso negativo ou encontrando uma gramática no caso positivo). (a) A linguagem formada pelas palavras da forma a n3 com n N. (b) A linguagem {a, b} \ {ww R w {a, b} } 8.22 Averigua se as seguintes linguagens são independentes de contexto, justificando devidamente a resposta (i.e. demonstrando no caso negativo ou encontrando uma gramática no caso positivo). (a) A linguagem formada pelas palavras da forma a n b n2 com n N. (b) A linguagem das palavras da forma a n b m c k com m = 2n ou k = n (m, n, k N). Dep. Ciência de Computadores/FCUP

7 Resolução de exercícios resolvidos 8.11 No exercício 7.21 autómato é n~ao determinístico pois s c T, δ(s, c, T ) > 1. Exemplo: δ(s 1, b, B) = {(s 1, BB), (s 3, ɛ)}. Nota: Apesar deste autómato não ser determinístico era possível encontrar um autómato determinístico que reconheça a linguagem por estados finais: com {{s 0, s 1, s 2, s 3, s 4, s 5 }, {a, b, c}, {A, B}, δ, s 0, A, {s 2, s 5 }} δ(s 0, a, A) = (s 0, A) δ(s 0, b, A) = (s 1, BA) δ(s 1, b, B) = (s 2, BB) δ(s 1, c, B) = (s 3, B) δ(s 2, b, B) = (s 1, BB) δ(s 2, c, B) = (s 3, B) δ(s 3, c, B) = (s 3, B) δ(s 3, b, B) = (s 4, ɛ) δ(s 4, b, B) = (s 4, ɛ) δ(s 4, ɛ, A) = (s 5, A) No exercício 7.22 o autómato é n~ao determinístico pois existe um terno ordenado (s, c, T ) com c Σ para o qual δ(s, c, T ) e δ(s, ɛ, T ). Tal exemplo pode ser δ(s 0, 0, U) = {(s 0, ZU)} δ(s 0, ɛ, U) = {(s 1, U)} 8.21 (a) Suponhamos, por absurdo, que a linguagem era independente de contexto. Então existiria n N nas condições do lema da repetição. Como a n3 pertence a esta linguagem, e pelo lema da repetição então x, y, z, w, v Σ, a n3 = xyzwv yzw n yw ɛ tal que para qualquer i N, xy i zw i v também pertence à linguagem. Tomemos então i = 2, a n3 = n 3 < xy 2 zw 2 v = x + 2 y + z + 2 w + v = = xyzwv + yw = = n 3 + yw n 3 + n < n 3 + 3n 2 + 3n + 1 = (n + 1) 3 Portanto a n3 < xy 2 zw 2 v < a (n+1)3. Logo xy 2 zw 2 v não pode pertencer à linguagem, o que contradiz o lema da repetição. O absurdo resultou da suposição que a linguagem era independente de contexto, pelo que fica provado que não o é. (b) Queremos considerar a linguagem formada pelas palavras de alfabeto {a, b} que não são formadas pela concatenação de uma palavra com a sua inversa (ww R ). Esta linguagem é formada pelas palavras de tamanho ímpar, ou pelas de tamanho par que da forma yaxx R by ou ybxx R ay com y = y. Portanto é possivel encontrar uma gramatica que gere tal linguagem: L P I I aib bia aia bib a b P ap b bp a ap a bp b A A abb bba B aba bbb ɛ. Dep. Ciência de Computadores/FCUP

8 De outra forma e com uma gramática mais simples: L at b bt a ala blb a b T at bt ɛ Pelo que a linguagem é evidentemente independente de contexto (a) Vamos mostrar que esta linguagem não é independente de contexto, para tal basta mostrar que não se verifica o lema da repetição, ou seja que para qualquer n N, existe uma palavra s pertencente à linguagem, s n tal que quaisquer subpalavras x, y, z, w, v, com s = xyzwv com yzw n e yw ɛ, e existe i N tal que xy i zw i v não pertence à linguagem. Seja então n N, a n b n2 pertence à linguagem e tem comprimento maior do que n. Tomemos uns quaisquer x, y, z, w, v tais que a n b n2 = xyzwv, com yzw n e yw ɛ. a n b n2 = n + n 2 < xy 2 zw 2 v = x + 2 y + z + 2 w + v = xyzwv + yw = (n 2 + n) + yw n 2 + n + n = n 2 + 2n < n 2 + 3n + 2 = (n + 1) 2 + (n + 1). Portanto a n b n2 < xy 2 zw 2 v < a (n+1) b (n+1)2. Logo xy 2 zw 2 v não pertence à linguagem, ficando provado que o lema da repetição não se verifica, e portanto a linguagem não pode ser independente de contexto. (b) Esta linguagem é claramente a reunião da linguagem das palavras da forma a n b 2n c k que é gerada pela gramática: A Ac B B abbb ɛ com a linguagem formada pelas palavras da forma a n b m c n que é gerada pela gramática: C acc D D Db ɛ. Portanto como é a reunião de duas linguagens independentes contexto é trivialmente uma linguagem independente de contexto. Problemas Obrigatórios A Seja A = {0 k 10 l 10 m k, l 0 e m k + l} (a) Descreve um autómato de pilha que aceite A, indicando se é por estados finais ou por pilha vazia e o papel desempenhado por cada um dos estados. (b) Determina as mudanças de configuração do autómato no processamento das seguintes palavras, indicando se as palavras são ou não aceites: (a) (b) B Seja B = {x {a, b, c} x em que o número de cs não excede a soma do número de as e do número de bs} (a) Descreve um autómato de pilha que aceite B, indicando se é por estados finais ou por pilha vazia e o papel desempenhado por cada um dos estados. (b) Determina as mudanças de configuração do autómato no processamento das seguintes palavras, indicando se as palavras são ou não aceites: Dep. Ciência de Computadores/FCUP

9 (a) aacbbcc (b) cccaacb C Para a Σ e x Σ denota-se por a(x) o número de as em x. Considera as seguintes linguagens: C 1 = {u2 n v u {0, 1}, v {2, 3}, 1(u) = 3(v) = 2n} C 2 = {u2 n+m v u {0, 1}, v {2, 3}, 1(u) = n e 3(v) = m} Destas linguagens uma não é independente de contexto. Para essa demonstra que não o é, utilizando o lema da repetição (que deves enunciar). Para a outra, descreve um autómato pilha que a aceite (indicando se o autómato é ou não determinístico). D Considera as seguintes linguagens de alfabeto Σ = {0, 1, 2, 3}: D 1 = {0 i 1 j 2 i 3 j i, j 0} D 2 = {0 i 1 j 2 j 3 i i, j 0} Destas linguagens uma não é independente de contexto. Para essa demonstra que não o é, utilizando o lema da repetição (que deves enunciar). Para a outra, descreve um autómato pilha que a aceite (indicando se o autómato é ou não determinístico). Dep. Ciência de Computadores/FCUP

Autómatos de Pilha e Linguagens Livres de Contexto

Autómatos de Pilha e Linguagens Livres de Contexto Folha Prática Autómatos de Pilha e Linguagens Livres de Contexto 1 Autómatos de Pilha e Linguagens Livres de Contexto Autómatos de Pilha Não Determinísticos (APND) 1. Considere a seguinte tabela de transição

Leia mais

Modelos de Computação Folha de trabalho n. 10

Modelos de Computação Folha de trabalho n. 10 Modelos de Computação Folha de trabalho n. 10 Nota: Os exercícios obrigatórios marcados de A a D constituem os problemas que devem ser resolvidos individualmente. A resolução em papel deverá ser depositada

Leia mais

Autómatos de pilha e GIC

Autómatos de pilha e GIC Autómatos de pilha e GIC Proposição 17.1. A classe de linguagens aceites por autómatos de pilha está contida na classe das linguagens independentes de contexto. Dem. Seja L uma linguagem independente de

Leia mais

Autómatos de pilha e Gramáticas independentes de contexto

Autómatos de pilha e Gramáticas independentes de contexto Autómatos de pilha e Gramáticas independentes de contexto Proposição 15.1. A classe de linguagens aceites por autómatos de pilha está contida a classe das linguagens independentes de contexto. Dem. Seja

Leia mais

Teoria da Computação Gramáticas, Linguagens Algébricas e Autómatos de Pilha

Teoria da Computação Gramáticas, Linguagens Algébricas e Autómatos de Pilha Teoria da Computação Gramáticas, Linguagens Algébricas e Autómatos de Pilha Simão Melo de Sousa 12 de Outubro de 2011 Conteúdo 1 Gramáticas e Definições básicas 1 2 Gramáticas e Linguagens 4 2.1 Gramáticas

Leia mais

Modelos de Computação

Modelos de Computação Modelos de Computação 2.ano LCC e LERSI URL: http://www.ncc.up.pt/~nam/aulas/0405/mc Escolaridade: 3.5T e 1P Frequência:Semanalmente serão propostos trabalhos aos alunos, que serão entregues nas caixas

Leia mais

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo?

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo? 2 Linguagens Uma linguagem de programação, ou uma língua natural como o Português ou o Inglês, pode ser vista como um conjunto de sequências de símbolos, pertencentes a um conjunto finito. Em Português

Leia mais

Conceitos básicos de Teoria da Computação

Conceitos básicos de Teoria da Computação Folha Prática Conceitos básicos de 1 Conceitos básicos de Métodos de Prova 1. Provar por indução matemática que para todo o número natural n: a) 1 + 2 + 2 2 + + 2 n = 2 n+1 1, para n 0 b) 1 2 + 2 2 + 3

Leia mais

Segunda Lista de Exercícios 2004/2...

Segunda Lista de Exercícios 2004/2... + + UFLA Universidade Federal de Lavras Departamento de Ciência da Computação COM162 Linguagens Formais e Autômatos Prof. Rudini Sampaio Monitor: Rodrigo Pereira dos Santos Segunda Lista de Exercícios

Leia mais

Apostila 05 Assunto: Linguagens dos tipos 0 e 1

Apostila 05 Assunto: Linguagens dos tipos 0 e 1 Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação SCC-205 TEORIA DA COMPUTAÇÃO E LINGUAGENS FORMAIS Turma 1 2º. Semestre de 2012 Prof. João Luís

Leia mais

Linguagem (formal) de alfabeto Σ

Linguagem (formal) de alfabeto Σ Linguagem (formal) de alfabeto Σ Linguagem é qualquer subconjunto de Σ, i.e. qualquer conjunto de palavras de Σ Σ = {a, b} {aa, ab, ba, bb} ou {x x {a, b} e x = 2} {a, aa, ab, ba, aaa, aab, aba,...} ou

Leia mais

Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação

Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação Não são aceitas respostas sem justificativa. Explique tudo o que você fizer. Linguagens Formais o semestre de 999 Primeira Prova

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas da lista Sérgio Mariano Dias 1 1 UFMG/ICEx/DCC Entrega da 1 a lista: 31/03/2009 Sérgio Mariano Dias (UFMG) Fundamentos

Leia mais

Autómatos Finitos Determinísticos (AFD)

Autómatos Finitos Determinísticos (AFD) Folha Prática Autómatos Finitos 1 Autómatos Finitos Determinísticos (AFD) 1. Determine e implemente computacionalmente um AFD que aceita todas as cadeias de cada uma das seguintes linguagens sobre o alfabeto

Leia mais

Teoria de Linguagens 2 o semestre de 2017 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 19/9/2017 Valor: 10 pontos

Teoria de Linguagens 2 o semestre de 2017 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 19/9/2017 Valor: 10 pontos Departamento de Ciência da Computação ICEx/UFMG Teoria de Linguagens o semestre de 7 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 9/9/7 Valor: pontos. Uma versão do problema

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Doutorando em Ciência da Computação Estagiário em docência II Departamento de Ciência da Computação

Leia mais

Alfabeto, Cadeias, Operações e Linguagens

Alfabeto, Cadeias, Operações e Linguagens Linguagens de Programação e Compiladores - Aula 3 1 Alfabeto, Cadeias, Operações e Linguagens 1.Conjuntos Para representar um determinado conjunto é necessário buscar uma notação para representá-lo e ter

Leia mais

Autómatos de Pilha. Cada transição é caracterizada pelo estado, símbolo que está ser lido e o elemento no topo da pilha. dados de entrada.

Autómatos de Pilha. Cada transição é caracterizada pelo estado, símbolo que está ser lido e o elemento no topo da pilha. dados de entrada. Autómatos de Pilha Um autómato de pilha (não determinístico) (AP) é um autómato finito não determinístico com transições ɛ, acrescido de uma memória infinita a pilha mas em que o modo de acesso à informação

Leia mais

Linguagens Formais - Preliminares

Linguagens Formais - Preliminares Linguagens Formais - Preliminares Regivan H. N. Santiago DIMAp-UFRN 25 de fevereiro de 2007 Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de 2007 1 / 26 Algumas

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens

Leia mais

Gramáticas ( [HMU00], Cap. 5.1)

Gramáticas ( [HMU00], Cap. 5.1) Gramáticas ( [HMU00], Cap. 5.1) Vimos que a seguinte linguagem não é regular L = {0 n 1 n n 0} Contudo podemos fácilmente dar uma definição indutiva das suas palavras: 1. ɛ L 2. Se x L então 0x1 L L é

Leia mais

Linguagens Formais e Autômatos

Linguagens Formais e Autômatos Linguagens Formais e Autômatos (notas da primeira aula 1 Definições básicas 1.1 Conjuntos Definição 1. Um conjunto é uma coleção de objetos, denominados elementos. Notação 1. Para indicar que um elemento

Leia mais

Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios

Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios 1. Escreva a expressão regular para as seguintes linguagens sobre o alfabeto {0, 1}: strings começando

Leia mais

Aula 7: Autômatos com Pilha

Aula 7: Autômatos com Pilha Teoria da Computação Segundo Semestre, 2014 Aula 7: Autômatos com Pilha DAINF-UTFPR Prof. Ricardo Dutra da Silva Vamos adicionar um memória do tipo pilha ao nossos autômatos para que seja possível aceitar

Leia mais

Teoria de Linguagens 1 o semestre de 2018 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 17/4/2018 Valor: 10 pontos

Teoria de Linguagens 1 o semestre de 2018 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 17/4/2018 Valor: 10 pontos Departamento de Ciência da Computação ICEx/UFMG Teoria de Linguagens o semestre de 8 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 7/4/8 Valor: pontos. Uma versão do problema

Leia mais

Marcos Castilho. DInf/UFPR. 5 de abril de 2018

Marcos Castilho. DInf/UFPR. 5 de abril de 2018 5 de abril de 2018 Autômatos com Pilha Não-Determinísticos Um Autômato com Pilha Não-Determinístico (APN) é uma sêxtupla (Q, Σ, Γ, δ, Q 0, F ), onde: Q, Σ, Γ, F são como nos APD s; δ : Q (Σ {λ}) (Γ {λ})

Leia mais

Linguagens Formais e Problemas de Decisão

Linguagens Formais e Problemas de Decisão Linguagens Formais e Problemas de Decisão Mário S. Alvim (msalvim@dcc.ufmg.br) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim (msalvim@dcc.ufmg.br) Linguagens Formais e Problemas

Leia mais

TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO

TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO LICENCIATURA EM CIÊNCIAS DA COMPUTAÇÃO TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO José Carlos Costa Dep. Matemática e Aplicações Universidade do Minho Braga, Portugal 31 de Maio de 2010

Leia mais

IBM1088 Linguagens Formais e Teoria da

IBM1088 Linguagens Formais e Teoria da IBM1088 Linguagens Formais e Teoria da Computação Linguagens e Gramáticas Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 47 Frase do dia Sofremos muito com

Leia mais

Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 27 de Fevereiro de 2018

Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 27 de Fevereiro de 2018 27 de Fevereiro de 2018 Definição: Concatenação Sejam u, v Σ. A concatenação de u e v, denotado por uv é a operação binária sobre Σ assim definida (i) BASE: Se tamanho(v) = 0 então v = λ e uv = u. (ii)

Leia mais

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND)

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND) DEP. INFORMÁTICA - UNIVERSIDADE DA BEIRA INTERIOR Teoria da Computação Eng. Informática 1º Semestre Exame 2ª chamada - Resolução 2h + 30min 07/Fev/2011 Pergunta A.1 A.2 A.3 B.1 B.2 B.3a B.3b C.1 C.2 D.1

Leia mais

Apostila 03 - Linguagens Livres de Contexto Exercícios

Apostila 03 - Linguagens Livres de Contexto Exercícios Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Propriedades das Linguagens Livres do Contexto

Propriedades das Linguagens Livres do Contexto Capítulo 7 Propriedades das Linguagens Livres do Contexto As linguagens livres do contexto ocupam uma posição central na hierarquia das linguagens formais. Por um lado, as linguagens livres do contexto

Leia mais

Teoria da Computação Aula 02 Introdução

Teoria da Computação Aula 02 Introdução Teoria da Computação Aula 02 Introdução Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Alfabeto Um alfabeto é um conjunto finito de símbolos ou caracteres, representado pela letra sigma ( ). Portanto:

Leia mais

Conceitos Básicos. Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem

Conceitos Básicos. Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem Conceitos Básicos Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem Alfabeto ou Vocabulário: Conjunto finito não vazio de símbolos. Símbolo é um elemento qualquer de um alfabeto.

Leia mais

Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9.

Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9. Pós-Graduação em Ciência da Computação DCC/ICEx/UFMG Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9. Observações: Pontos

Leia mais

Expressões Regulares e Gramáticas Regulares

Expressões Regulares e Gramáticas Regulares Universidade Católica de Pelotas Escola de informática 053212 Linguagens Formais e Autômatos TEXTO 2 Expressões Regulares e Gramáticas Regulares Prof. Luiz A M Palazzo Março de 2007 Definição de Expressão

Leia mais

Linguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática

Linguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática Linguagens Formais Aula 01 - Conceitos Básicos Prof. Othon Batista Mestre em Informática Sumário Introdução à Linguagem Alfabeto Cadeias de Símbolos, Palavras Tamanho de Palavra Prefixo, Sufixo ou Subpalavra

Leia mais

Exercícios Associados à Aula 28 (27/11/2013) Feitos em sala e em equipes

Exercícios Associados à Aula 28 (27/11/2013) Feitos em sala e em equipes Exercícios Associados à Aula 28 (27/11/2013) Feitos em sala e em equipes Questões do POSCOMP 2011 A resposta certa está assinalada em vermelho. Por que é correta e por que as demais alternativas são incorretas?

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens

Leia mais

Linguagens Regulares. Prof. Daniel Oliveira

Linguagens Regulares. Prof. Daniel Oliveira Linguagens Regulares Prof. Daniel Oliveira Linguagens Regulares Linguagens Regulares ou Tipo 3 Hierarquia de Chomsky Linguagens Regulares Aborda-se os seguintes formalismos: Autômatos Finitos Expressões

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Mestrando em Ciência da Computação Departamento de Ciência da Computação Universidade Federal

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens

Leia mais

Linguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior.

Linguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior. LFA Aula 02 Linguagens regulares - introdução 28/09/2015 Celso Olivete Júnior olivete@fct.unesp.br 1 Na aula passada... Visão geral Linguagens regulares expressões regulares autômatos finitos gramáticas

Leia mais

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação Universiae e São Paulo Instituto e Ciências Matemáticas e e Computação Curso e Ciências e Computação SCC-205 TEORIA DA COMPUTAÇÃO E LINGUAGENS FORMAIS Turma A 2º. Semestre e 2010 Prof. João Luís Lista

Leia mais

Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais

Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Faculdade de Computação

Faculdade de Computação UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação - 1 0 Semestre 007 Professora : Sandra Aparecida de Amo Solução da Lista de Exercícios n o 1 Exercícios de Revisão

Leia mais

Revisões de Conjuntos

Revisões de Conjuntos Revisões de Conjuntos {, {a}, {b}, {a, b}} a A a pertence a A, a é elemento de A a {a, b, c} a / A a não pertence a A d / {a, b, c} A B A contido em B, A subconjunto de B x A x B {a, b} {b, c, a} A B A

Leia mais

Autômatos com Pilha. Douglas O. Cardoso docardoso.github.io

Autômatos com Pilha. Douglas O. Cardoso docardoso.github.io Autômatos com Pilha douglas.cardoso@cefet-rj.br docardoso.github.io Autômatos com Pilha 1/18 Roteiro 1 Autômatos com Pilha 2 APDs 3 APNs Autômatos com Pilha 2/18 Roteiro 1 Autômatos com Pilha 2 APDs 3

Leia mais

Expressões regulares

Expressões regulares Expressões regulares IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 38 Frase do dia A vida é uma luta inteira

Leia mais

Problemas decidíveis para LICs

Problemas decidíveis para LICs Problemas decidíveis para LICs Dada uma gramática independente de contexto G, L(G) =? Dada uma gramática independente de contexto G, L(G) é finita? Dada uma gramática independente de contexto G, L(G) é

Leia mais

1 INTRODUÇÃO E CONCEITOS BÁSICOS

1 INTRODUÇÃO E CONCEITOS BÁSICOS 1 INTRODUÇÃO E CONCEITOS BÁSICOS Inicia com uma breve história do surgimento e do desenvolvimento dos conceitos, resultados e formalismos nos quais a Teoria da Computação é baseada. Formalização dos conceitos

Leia mais

Lista de Exercícios CT-200 Primeiro Bimestre Carlos Henrique Quartucci Forster Estagiário: Wesley Telles. Revisão de Teoria de Conjuntos

Lista de Exercícios CT-200 Primeiro Bimestre Carlos Henrique Quartucci Forster Estagiário: Wesley Telles. Revisão de Teoria de Conjuntos Lista de Exercícios CT-200 Primeiro Bimestre 2010 Carlos Henrique Quartucci Forster Estagiário: Wesley Telles Revisão de Teoria de Conjuntos 1. Sejam A = {1,2 } e B = { x, y, z}. Quais os elementos dos

Leia mais

Gramática regular. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz Universidade de São Paulo

Gramática regular. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz Universidade de São Paulo Gramática regular IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 41 Frase do dia Através de três métodos

Leia mais

Gramáticas e Linguagens independentes de contexto

Gramáticas e Linguagens independentes de contexto Capítulo 6 Gramáticas e Linguagens independentes de contexto 6.1 Gramáticas Nesta secção vamos introduzir gramáticas formais para caracterização das linguagens, estudando fundamentalmente as gramáticas

Leia mais

Gramáticas Livres de Contexto Parte 1

Gramáticas Livres de Contexto Parte 1 Universidade Estadual de Feira de Santana Engenharia de Computação Gramáticas Livres de Contexto Parte 1 EXA 817 Compiladores Prof. Matheus Giovanni Pires O papel do Analisador Sintático É responsável

Leia mais

Apontamentos de Modelos de Computação. Ana Paula Tomás

Apontamentos de Modelos de Computação. Ana Paula Tomás Apontamentos de Modelos de Computação Ana Paula Tomás Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto 1999 Conteúdo 1 Preliminares 3 1.1 Notação para conjuntos.................................

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação - P. Blauth Menezes

Leia mais

SCC Capítulo 2 Linguagens Livres de Contexto e Autômatos de Pilha (versão 2)

SCC Capítulo 2 Linguagens Livres de Contexto e Autômatos de Pilha (versão 2) SCC-505 - Capítulo 2 e (versão 2) João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação - Universidade de São Paulo http://www.icmc.usp.br/~joaoluis

Leia mais

Problemas decidíveis para LICs

Problemas decidíveis para LICs Problemas decidíveis para LICs Dada uma gramática independente de contexto G, L(G) =? Dada uma gramática independente de contexto G, L(G) é finita? Dada uma gramática independente de contexto G, L(G) é

Leia mais

Alfabeto e palavras. Alfabeto conjunto finito de símbolos (Σ).

Alfabeto e palavras. Alfabeto conjunto finito de símbolos (Σ). Alfabeto e palavras Alfabeto conjunto finito de símbolos (Σ). {A,...,Z}, {α, β,... }, {a,b}, {0,1}, ASCII Palavra de Σ sequência finita de símbolos do alfabeto Σ Σ = {a, b} aabba a aaaaaaaa Comprimento

Leia mais

Teoria das Linguagens. Linguagens Formais e Autómatos (Linguagens)

Teoria das Linguagens. Linguagens Formais e Autómatos (Linguagens) Teoria das Lic. em Ciências da Computação Formais e Autómatos () Carla Mendes Dep. Matemática e Aplicações Universidade do Minho 2010/2011 Teoria das - LCC - 2010/2011 Dep. Matemática e Aplicações - Univ.

Leia mais

14.1 Linguagens decidíveis ou Turing reconhecíveis

14.1 Linguagens decidíveis ou Turing reconhecíveis Linguagens decidíveis ou Turing reconhecíveis Problemas decidíveis para Linguagens Regulares Teorema Seja A linguagem A DFA é decidível A DFA = {A : A é um DFA e aceita } Dem Basta mostrar como construir

Leia mais

Histórico e motivação

Histórico e motivação Expressões regulares 1. Histórico e motivação 2. Definição a) Sintaxe b) Semântica c) Precedência dos operadores 3. Exemplos 4. Leis algébricas 5. Dialetos 6. Aplicações 7. Exercícios Pré-requisito: básico

Leia mais

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE DA BEIRA INTERIOR UNIVERIDADE DA EIRA INTERIOR Teoria da Computação Eng. Informática 2º emestre Frequência 2 (7 valores) Resolução 30/maio/2017 A. Expressões regulares e autómatos finitos 1. [1.25] Usando o método de eliminação

Leia mais

Formas normais. Forma normal de Greibach (FNG) todas as produções são da forma

Formas normais. Forma normal de Greibach (FNG) todas as produções são da forma Formas normais Em muitas aplicações, é útil que as GIC tenham regras de tipos especiais. Para tal é necessário que se possa transformar qualquer gramática numa equivalente (isto é que gere a mesma linguagem)

Leia mais

SCC-ICMC-USP. Trabalho em Grupo 1 SCC-0205

SCC-ICMC-USP. Trabalho em Grupo 1 SCC-0205 Trabalho em Grupo 1 SCC-0205 2 o. Semestre de 2010 Professor: João Luís G. Rosa - e-mail: joaoluis@icmc.usp.br Monitor PAE: Fernando Alva - e-mail: falva@icmc.usp.br versão 1-23/8/2010 1 Objetivo Desenvolver

Leia mais

Linguagens livres de contexto e autômatos de pilha

Linguagens livres de contexto e autômatos de pilha Capítulo 6: Linguagens livres de contexto e autômatos de pilha José Lucas Rangel, maio 1999 6.1 - Introdução. Os aceitadores, ou reconhecedores, das linguagens livres de contexto são os chamados autômatos

Leia mais

Vamos estudar neste capítulo algumas características da classe das linguagens regulares sobre um alfabeto. Entre elas salientámos:

Vamos estudar neste capítulo algumas características da classe das linguagens regulares sobre um alfabeto. Entre elas salientámos: 5 Propriedades de LR Vamos estudar neste capítulo algumas características da classe das linguagens regulares sobre um alfabeto. Entre elas salientámos: São fechadas para determinas operações sobre linguagens:

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Terceira Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Mestrando em Ciência da Computação Departamento de Ciência da Computação Universidade Federal

Leia mais

Modelos Universais de Computação

Modelos Universais de Computação Modelos Universais de Computação 1 Equivalência entre Variantes de TM TM s definem naturalmente uma classe. Toda variante razoável de TM define a mesma classe de linguagens. (reforça a Tese Church-Turing)

Leia mais

Terceira Lista de Exercícios 2004/2...

Terceira Lista de Exercícios 2004/2... UFLA Universidade Federal de Lavras Departamento de Ciência da Computação COM162 Linguagens Formais e Autômatos Prof. Rudini Sampaio Monitor: Rodrigo Pereira dos Santos Terceira Lista de Exercícios 2004/2

Leia mais

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 02 Introdução à Teoria da Computação Prof.ª Danielle Casillo Linguagem: é uma forma precisa de expressar

Leia mais

SCC 205 Teoria da Computação e Linguagens Formais

SCC 205 Teoria da Computação e Linguagens Formais Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação SCC 205 Teoria da Computação e Linguagens Formais Autômatos com pilha Lista 3 1. Dê um

Leia mais

Linguagens Livres de Contexto

Linguagens Livres de Contexto Linguagens Livres de Contexto 1 Roteiro Gramáticas livres de contexto Representação de linguagens livres de contexto Formas normais para gramáticas livres de contexto Gramáticas ambíguas Autômatos de Pilha

Leia mais

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Revisão Linguagens formais Parte 01 geovanegriesang@unisc.br Legenda: = sigma (somatório) = delta ε = épsilon λ = lambda

Leia mais

Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos

Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos Simão Melo de Sousa 12 de Outubro de 2011 Conteúdo 1 Linguagens e Expressões Regulares 2 2 Autómatos de Estados Finitos

Leia mais

Autômatos finitos não-determinísticos

Autômatos finitos não-determinísticos Autômatos finitos não-determinísticos IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 30 Frase do dia The

Leia mais

SCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente

SCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente SCC-505 - Capítulo 3 Linguagens Sensíveis ao Contexto e João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação - Universidade de São Paulo http://www.icmc.usp.br/~joaoluis

Leia mais

Análise Léxica. Fundamentos Teóricos. Autômatos Finitos e Conjuntos Regulares (cap. III da apostila de Linguagens Formais e Compiladores)

Análise Léxica. Fundamentos Teóricos. Autômatos Finitos e Conjuntos Regulares (cap. III da apostila de Linguagens Formais e Compiladores) Análise Léxica Fundamentos Teóricos Autômatos Finitos e Conjuntos Regulares (cap. III da apostila de Linguagens Formais e Compiladores) Geradores X Reconhecedores Gramáticas Tipo 0 Máquinas de Turing G.

Leia mais

Introdução Definição Conceitos Básicos de Linguagem

Introdução Definição Conceitos Básicos de Linguagem Introdução Definição Conceitos Básicos de Linguagem Introdução Desenvolvida originalmente em 1950 Objetivo: Desenvolver teorias relacionadas com a Linguagem natural Logo verificou-se a importância para

Leia mais

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO 1. Linguagens Regulares Referência: SIPSER, M. Introdução à Teoria da Computação. 2ª edição, Ed. Thomson Prof. Marcelo S. Lauretto marcelolauretto@usp.br www.each.usp.br/lauretto

Leia mais

Dada uma gramática G = (V, T, P, S), tal que ε ² L(G), construir G, sem produções-ε, de modo a que L(G) = L(G ).

Dada uma gramática G = (V, T, P, S), tal que ε ² L(G), construir G, sem produções-ε, de modo a que L(G) = L(G ). 2EVHUYDo}HV Enquanto que todas as Linguagens Regulares são reconhecíveis por utómatos 'HWHUPLQLVWDV (Finitos), nem todas as Linguagens Independentes do Contexto são reconhecíveis por utómatos 'HWHUPLQLVWDV

Leia mais

Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a

Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a Exemplo (U(n)) Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a multiplicação módulo n é uma operação binária

Leia mais

LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam

LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam Linguagens Naturais LINGUAGENS FORMAIS Definições Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam São muito ricas, mas também ambíguas e imprecisas. Ex.: João

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens

Leia mais

Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas.

Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas. Teoria dos Conjuntos Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas. Porém, não é nosso objetivo ver uma teoria axiomática dos conjuntos.

Leia mais

Teoria da Computação. Expressões Regulares e Autômatos Finitos. Thiago Alves

Teoria da Computação. Expressões Regulares e Autômatos Finitos. Thiago Alves Teoria da Computação Expressões Regulares e Autômatos Finitos Thiago Alves 1 Introdução Expressões Regulares e Autômatos Finitos são bem diferentes Será que são equivalentes com relação as linguagens que

Leia mais

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND)

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND) DEP. INFORMÁTICA - UNIVERSIDADE DA BEIRA INTERIOR Teoria da Computação Eng. Informática 1º Semestre Exame 1ª chamada - Resolução 2h + 30min 31/Jan/2011 Pergunta A.1 A.2 A.3 B.1 B.2 B.3a B.3b C.1 C.2 D.1

Leia mais

LFA Aula 05. AFND: com e sem movimentos 05/12/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior.

LFA Aula 05. AFND: com e sem movimentos 05/12/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior. LFA Aula 05 AFND: com e sem movimentos vazios 05/12/2016 Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete/lfa 1 Na aula passada... Reconhecedores genéricos Autômatos finitos

Leia mais

Autômatos de Pilha (AP)

Autômatos de Pilha (AP) Linguagens Formais e Autômatos Autômatos de Pilha (AP) Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (h@p://dcc.ufmg.br/~nvieira) Sumário Introdução Autômatos de pilha

Leia mais

Conceitos Básicos. Vocabulário Cadeias Linguagens Problema

Conceitos Básicos. Vocabulário Cadeias Linguagens Problema Conceitos Básicos Vocabulário Cadeias Linguagens Problema Alfabeto ou Vocabulário: Conjunto finito não vazio de símbolos. Símbolo é um elemento qualquer de um alfabeto. Ex: {A,B,C,.Z} alfabeto latino (maiúsculas)

Leia mais

Apostila 02. Objetivos: Estudar os autômatos finitos Estudar as expressões regulares Estudar as gramáticas regulares Estudar as linguagens regulares

Apostila 02. Objetivos: Estudar os autômatos finitos Estudar as expressões regulares Estudar as gramáticas regulares Estudar as linguagens regulares Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Instituto Superior Técnico Teoria da Computação - LEIC, LERC 2012/2013 Aula prática 6. 1 Palavras e linguagem gerada por gramática

Instituto Superior Técnico Teoria da Computação - LEIC, LERC 2012/2013 Aula prática 6. 1 Palavras e linguagem gerada por gramática Instituto Superior Técnico Teoria da Computação - LEIC, LERC 2012/2013 Aula prática 6 1 Palavras e linguagem gerada por gramática 1. Seja G = (V,Σ,P,S) a gramática livre de contexto em que V = {S,A}, Σ

Leia mais

Instituto Superior Técnico Teoria da Computação - LEIC 2013/2014 Aula prática 1

Instituto Superior Técnico Teoria da Computação - LEIC 2013/2014 Aula prática 1 Instituto Superior Técnico Teoria da Computação - LEIC 2013/2014 Aula prática 1 Nota: Na sequência o símbolo representa o símbolo de registo vazio. 1 Máquinas de Turing 1. Considere a máquina de Turing

Leia mais

Linguagens recursivamente enumeráveis

Linguagens recursivamente enumeráveis Linguagens recursivamente enumeráveis Uma palavra x Σ é aceite por uma máquina de Turing M ( x L(M)) se M iniciando com a palavra x na fita e no estado inicial, pára num estado final. Caso contrário, M

Leia mais

Transformação de AP para GLC

Transformação de AP para GLC UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Transformação de AP para GLC Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 2 A técnica que será

Leia mais