Linguagens Formais e Autômatos

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

Download "Linguagens Formais e Autômatos"

Transcrição

1 Linguagens Formais e Autômatos Soluções para a Lista 4 Universidade Federal do ABC Aritanan Gruber aritanan.gruber@ufabc.edu.br aritanan.gruber Os exercícios marcados com [ ] deveriam ter sido entregues via Tidia-4 até 06/05/ [ ] Considere a gramática livre de contexto G = (V, T, P, S), em que V = {A, S}, T = {a, b} e P = {S AA, A AAA, A a, A ba, A Ab}. (a) Quais são as palavras de L(G) que podem ser produzidas por derivações de quatro ou menos passos? (b) Forneça, pelo menos, quatro derivações distintas para a palavra babbab. (c) Para todos m, n, p > 0, descreva a derivação em G para a palavra b m ab n ab p. (a) O conjunto das palavras que podem ser produzidas por quatro ou menos derivações é: {aa, aab, aba, baa}. (b) S AA baa baba baba babba babbab babbab, S AA baa baab babab babab babbab babbab, S AA baa baab babab babbab babbab babbab, S AA baa baab babab babbab babbab babbab, são quatro derivações distintas para a palavra babbab. Existem outras. (c) Para todos m, n, p > 0, a palavra b m ab n ab p pode ser derivada (gerada) da seguinte forma: iniciaente, aplicase a produção S AA; depois aplica-se m vezes a produção A ba na variável A mais à esquerda; em seguida, aplica-se n vezes a produção A Ab na variável A mais à esquerda; na seqüência, aplica-se p vezes a produção A Ab na variável A mais à direita; finaente, aplica-se a produção A a nas duas variáveis A. Esquematicamente, temos: S AA m b m AA n b m Ab n A p b m Ab n Ab p b m ab n Ab p b m ab n ab p. Claramente, existem outras formas possíveis para derivação da mesma palavra. 2. Construa gramáticas livres de contexto para as linguagens abaixo: (a) L a = {wcw R : w {a, b} } (b) L b = {ww R : w {a, b} } (c) L c = {w {a, b} : w = w R } (d) L d = {a m b n : m n} (e) L e = {w {a, b} : w possui duas vezes mais a s que b s} (a) G a = ({S}, {a, b}, {S asa bsb c}, S). (b) G b = ({S}, {a, b}, {S asa bsb λ}, S). (c) G c = ({S}, {a, b}, {S asa bsb a b λ}, S). (d) G d = ({S}, {a, b}, {S asb as λ}, S). (e) G e = ({S}, {a, b}, P, S), em que P é o conjunto das produções a seguir: S aab aba baa λ, A as baaa, B aabb abab abba bs.

2 Formaente, resta mostrar que cada gramática acima descreve precisamente a linguagem para a qual foi criada, isto é, que L(G x ) = L x. As gramáticas para os ítens (a) (d) são simples o suficiente para que não haja dúvidas quanto aos seus poderes de expressão. O mesmo não acontece com (e). Vamos então, fornecer uma prova adequada. Proposição 1. L(G e ) = {w {a, b} : w a = 2 w b }. Demonstração. A prova consiste em mostrar que S x se e somente se x L. Para atingir este objetivo, vamos provar algo ligeiramente mais forte. Vamos provar que S A B x x a = 2 x b, (1) x x a = 2 x b + 1, (2) x x a = 2 x b 2. (3) A necessidade é por indução no número de derivações, denotado por n, de x. Caso n = 1, temos que S λ pela produção S λ e que esta é a única possibilidade, pois todas as demais produções de G e possuem ao menos uma variável no lado direito. Logo, S deriva λ em um passo, e A e B não derivam nenhuma palavra em um passo. Como λ a = λ b = 0, o resultado segue. Considere então n > 0 e suponha que as relações são válidas para derivações com no máximo n 1 passos. Para as A-produções, considerando derivações em n passos, temos que A as x ou que A baaa x. No primeiro caso, S x em n 1 passos e assim, x a = 2 x b. Como x = ax, obtemos x a = 2 x b + 1. No segundo, x = buvw com A <n u, A <n v, e A <n w. Por hipótese de indução, z a = 2 z b + 1 com z {u, v, w}. Como x b 1 = u b + v b + w b, segue que x a = u a + v a + w a = (2 u b + 1) + (2 v b + 1) + (2 w b + 1) = 2( x b 1) + 3 = 2 x b + 1. Para B-produções, a argumentação é semelhante. Dos quatro possíveis casos, B bs x, B aabb x, B abab x, ou B abba x, temos dois a considerar pois os três últimos são semelhantes. Quando B bs x, x = bx e S n 1 x, implicando em x a = x a = 2 x b e x b + 1 = x b. Logo, x a = 2 x b 2. Em caso contrário, B az x, em que z é uma permutação cíclica de uvw e A <n u, B <n v, e B <n w. De qualquer forma, x a 1 = u a + v a + w a e x b = u b + v b + w b e, por hipótese de indução, u a = 2 u b + 1, v a = 2 v b 2, w a = 2 w b 2. Logo, x a 1 = (2 u b + 1) + (2 v b 2) + (2 w b 2) = 2( u b + v b + w b ) 3 x a = 2 x b 2. Finaente, para S-produções, temos dois casos: S aab x (que engloba S aba x, já que este contém uma permutação cíclica de AB), e S baa x. Caso x = auv ou x = avu com A <n u e B <n v, temos que x a = u a + v a + 1 e x b = u b + v b. Por hipótese, u a = 2 u b + 1 e v a = 2 v b 2, resultando em x a = (2 u b + 1) + (2 v b 2) + 1 x a = 2 x b. Caso S baa x, temos que x = buv, A <n u, A <n v, x a = u a + v a e x b = u b + v b + 1. Por hipótese, u a = 2 u b + 1 e v a = 2 v b + 1. Portanto, e x L sempre que S x. x a = (2 u b + 1) + (2 v b + 1) = 2 x b, A suficiência é por indução no comprimento das palavras x L, que são sempre múltiplos de 3. Caso x = λ, temos que S λ, A as a e B bs b e o resultado segue, pois as quantidades de a s e b s derivadas satisfazem as relações (1), (2) e (3), respectivamente. Considere então que x = 3k para algum k > 0 e suponha, a título de hipótese de indução, que (1), (2) e (3) são válidas para qualquer subpalavra própria de x. Temos que (i) x = auv ou x = avu com A u e B v, ou que (ii) x = byz com A y, z.

3 As derivações de u, y e z à partir de A, isto é, A r com r {u, y, z}, ocorrem via A as r ou via A baaa r com a escolha independente para cada identidade de r. Logo, r = as com S s ou r = bopq com A o, p, q. Como s, o, p, q < r, segue que s a = 2 s b, o a = 2 o b + 1, p a = 2 p b + 1 e q a = 2 q b + 1, o que resulta em r a 1 = s a = 2 s b r a = 2 s b + 1, ou r b 1 = o b + p b + q b = ( o a 1) + ( p a 1) + ( q a 1) 2 = o a + p a + q a 3 2 = r a 3, 2 implicando em r a = 2 r b + 1 e garantindo que (2) é válida. Isto já é suficiente para mostrar que (ii) é válido, já que x b 1 = y b + z b = ( y a + z a 2)/2 = ( x a 2)/2 o que ocorre se e somente se x a = 2 x b. Para B v, temos que v {aopq, apoq, apqo : A o, B p, q} ou que v = bs com S s. De forma análoga, como s, o, p, q < v, segue que s a = 2 s b, o a = 2 o b + 1, p a = 2 p b 2 e q a = 2 q b 2, o que resulta em ou v b 1 = s b = s a /2 = v a /2 v a = 2 v b 2, v a 1 = o a + p a + q a = (2 o b + 1) + (2 p b 2) + (2 q b 2) = 2 v b 3, e garantindo que (3) é válida. Com isto, fechamos o caso (i), pois e obtemos que S x a 1 = u a + v a = u b v b 2 x a = 2 x b, x para toda palavra x L. 3. [ ] Considere a gramática livre de contexto G = (V, T, P, S), em que V = {S}, T = {a, b} e Qual a linguagem gerada por G? Prove sua afirmação. P = {S bs Sa asb λ}. Considere a gramática livre de contexto G especificada acima. Realizando algumas derivações em G, intuimos que L(G) é a linguagem de todas as palavras compostas por a s e b s. Proposição 2. L(G) = {a, b}. Demonstração. Não é difícil perceber que as sentenças geradas por G possuem apenas a s e b s, o que implica em L(G) {a, b}. Vamos mostrar a recíproca por indução no comprimento das palavras em {a, b}. Seja w {a, b}. Caso w = λ, a produção S λ garante que S λ e o resultado segue. Considere agora que w > 0 e suponha, a título de hipótese de indução, que S x, para toda palavra x {a, b} com x < w. Podemos dividir a argumentação em três casos: (i) w começa com b, (ii) w termina com a, ou (iii) o complementar dos anteriores, isto é, w começa com a e termina com b. Não é difícil perceber que qualquer palavra em {a, b} enquadra-se em uma e somente uma das possibilidades e que w = bx, ou w = xa, ou w = axb, respectivamente. Em todos os casos, por hipótese de indução, S x. Utilizando-se, respectivamente, as produções S bs, ou S Sa, ou S asb na primeira derivação, obtemos que S bs bx = w, ou S Sa xa = w, ou S asb axb = w, resultando em w L(G). 4. [ ] A seguinte gramática livre de contexto G = (V, T, P, S), em que V = {S}, T = {a, b} e P = {S as asbs λ} é ambígua. Encontre uma gramática livre de contexto inambígua equivalente, isto é, encontre uma gramática livre de contexto H tal que L(G) = L(H). A gramática G é ambígua, pois a palavra aab possui mais de uma derivação mais à esquerda (), como ilustrado a seguir: S as aasbs aabs aab, S asbs aasbs aabs aab.

4 O problema ocorre na derivação de a s não emparelhados com b s a s para os quais não existe um b correspondente. Claramente, isto se dá pelo fato de as ser um prefixo comum aos lados direitos das produções S as e S asbs. Introduzimos nova variável X e produção X axbx λ para restringir o prefixo comum e forçar a derivação dos a s não emparalhados por S as. Formaente, H = ({R, X}, T, P, R), com P dado pelo conjunto de produções abaixo: R ar axbr λ, X axbx λ. A prova do argumento apresentado acima enconra-se na proposição que segue. Proposição 3. As gramáticas livres de contexto G e H descrevem a mesma linguagem, com a diferença de que H é inambígua. Demonstração. Seja L = L(G) L(H) e suponha que L. Logo, existe uma palavra x L que satisfaz uma e apenas uma das possibilidades: (i) x L(G) \ L(H), ou (ii) x L(H) \ L(G). Considere o primeiro caso e para u, v T, seja S uasbsv uaasbsv x uma derivação mais à esquerda para x em G, em que destacamos uma forma sentencial na qual a produção S as foi usada para substituir a variável S mais à esquerda em asbs, resultando em aasbs. Esta substituição foi exatamente a que proibímos em H com a substituição do S mais à esquerda em asbs por X, conjuntamente com a introdução das X-produções. Como G é ambígua, a subsentença aasbs pode ser derivada mais à esquera de duas formas: asbs aasbs ou as aasbs. Considere então uma derivação G x mais à esquerda para x em G em que asbs aasbs não ocorre. Não é difícil perceber agora que existe uma correspondência biunívoca entre G x e uma derivação mais à esquerda H x para x em H, pois todas as substituições realizadas em G x possuem um equivalente em H x. Logo, x L(H) contradizendo a hipótese. A mesma correspondência biunívoca utilizada no caso (i) garante que o caso (ii) também não pode ocorrer, implicando em L(G) = L(H). Quando à inambiguidade de H, basta observar que a substituição do S mais à esquerda na produção S asbs por S axbs, conjuntamente com a introdução das X-produções garante que há apenas uma forma de derivar a s não emparelhados, e o resultado segue. 5. Para cada uma das gramáticas livres de contexto abaixo, elimine as λ-produções, as produções unitárias, os símbolos inúteis e coloque-as na Forma Normal de Chomsky (CNF). (a) (c) S ASB λ A aas a B SbS A bb S AAA B A aa B B λ (b) S 0A0 1B1 BB A C B S A C S λ (d) S aaa bbb λ A C a B C b C CDE λ D A B ab Os passos a serem seguidos são: eliminar as λ-produções, as produções unitárias, os símbolos inúteis, e reduzir os lados direitos das produções longas pela introdução de novas variáveis e produções de ligação.

5 (a) Observe que somente a variável S é anulável, devido à produção S λ. Após a eliminação das λ-produções, obtemos: S ASB AB A aas aa a B SbS Sb bs b A bb. A única produção unitária é B A. Logo, é suficiente substituir essa ocorrência de A pelos lados direitos das produções cujo lado esquerdo é A (A-produções). Com isso, temos: S ASB AB A aas aa a B SbS Sb bs b aas aa a bb. Não existem símbolos inúteis, pois: (i) A e B geram palavras formadas por terminais e, consequentemente, S também; (ii) todos os símbolos (terminais e variáveis) da gramática são atingíveis a partir de S. Substituindo os símbolos terminais não isolados por variáveis e incluindo as produções adequadas: S ASB AB A CAS CA a B SDS SD DS b CAS CA a DD C a D b. Finaente, quebrando as produções que têm mais de duas variáveis no lado direito, obtemos uma gramática equivalente, a menos de λ, na Forma Normal de Chomsky: S AE AB A CF CA a B SG SD DS b CF CA a DD C a D b E SB F AS G DS. (b) Neste caso, todas as variáveis são anuláveis, pois C λ, A C, B A e S BB. Após a eliminação das λ-produções, obtemos: S 0A0 00 1B1 11 BB B A C B S A C S. As produções unitárias dessa gramática são: S B, A C, B S, B A e C S. Observe que, inclusive, existem ciclos. Após a eliminação destas produções, temos: S 0A0 00 1B1 11 BB A 0A0 00 1B1 11 BB B 0A0 00 1B1 11 BB C 0A0 00 1B1 11 BB. A variável C não é atingivel a partir de S. Logo, ela e todas as C-produções podem ser eliminadas. Isso resulta em: S 0A0 00 1B1 11 BB A 0A0 00 1B1 11 BB B 0A0 00 1B1 11 BB.

6 Observando que todas as A-, B- e S-produções são iguais, simplificamos a gramática para: S 0S0 00 1S1 11 SS. Finaente, incluindo variáveis e produções para os terminais não isolados e quebrando as produções de comprimento maior que 2, obtemos uma gramática equivalente, a menos de λ, na Forma Normal de Chomsky: S ZA ZZ UB UU SS A SZ B SU Z 0 U 1. (c) Neste caso, todas as variáveis são anuláveis, pois B λ, A B, S B e, ainda, S AAA. eliminação das λ-produções, obtemos: Após a S AAA AA A B A aa a B. As produções unitárias dessa gramática são: S A, S B e A B. Após a eliminação destas produções, temos: S AAA AA aa a B A aa a B. Como você deve ter percebido, não tivemos como eliminar as produções unitárias S B e S A acima, pois B é um símbolo inútil que não gera nada. Eliminando-o da gramática, vem: S AAA AA aa a A aa a. Finaente, incluindo variáveis e produções para os terminais não isolados e quebrando as produções de comprimento maior que 2, obtemos uma gramática equivalente, a menos de ε, na Forma Normal de Chomsky: S AB AA CA a A CA a B AA C a. (d) Neste caso, todas as variáveis são anuláveis, pois S λ, C λ, A C, B C, e D A e, ainda D B. Após a eliminação das λ-produções, obtemos: A C a B C b C CDE DE CE E D A B ab. As produções unitárias dessa gramática são: A C, B C, C E, D A e D B. Eliminando a produção D A: A C a B C b C CDE DE CE E D C a B ab.

7 Eliminando a produção D B: A C a B C b C CDE DE CE E D C a b ab. Eliminando a produção C E: A C a B C b Eliminando as produções A C, B C e D C: C CDE DE CE D C a b ab. A CDE DE CE a B CDE DE CE b C CDE DE CE D CDE DE CE a b ab. Temos que a variável E não é geradora, assim após sua eliminação a gramática fica: A a B b D a b ab. Temos ainda que a variável D não é alcançável a partir de S. Logo: A a B b. Finaente, incluindo variáveis e produções para os terminais não isolados e quebrando as produções de comprimento maior que 2, obtemos uma gramática equivalente, a menos de ε, na Forma Normal de Chomsky: S AF AA BG BB A a B b F AA G BB. 6. [ ] Para w {0, 1}, definimos o complemento Booleano de w, denotado por por w, como a palavra obtida pela complementação de cada símbolo em w. Ou seja, se w = 010, então w = 101. Considere o conjunto A = {w {0, 1} : w = w R }. (a) Forneça uma gramática livre de contexto para o conjunto A.

8 (b) Forneça uma gramática na forma normal de Chomsky para o conjunto A {λ}. Como exemplo, observe que as palavras e pertencem a A, mas a palavra A. (a) Uma gramática livre de contexto para o conjunto A é G = (V, T, P, S), em que V = {S}, T = {0, 1} e P é o conjunto de produções: S 0S1 1S0 λ. A idéia é gerar símbolos complementares à mesma distância das extremidades. Não é difícil provar que L(G) = A. (b) Uma gramática na Forma Normal de Chomsky para o conjunto A {λ} é G = (V, T, P, S), em que V = {S, A, B, Z, U}, T = {0, 1} e P é o conjunto de produções: S ZU UZ ZA UB, A SU, B SZ, Z 0, U Mostre que toda linguagem livre de contexto que não possua λ pode ser gerada por uma gramática livre de contexto na qual todas as produções são da forma A a, A ab ou A abc, para a terminal e A, B e C variáveis. Sugestão, comece com uma gramática na Forma Normal de Greibach para a linguagem em questão. Sejam L uma linguagem livre de contexto que não possui λ, e G = (V, T, P, S) uma gramática livre de contexto na Forma Normal de Greibach para L. Todas as produções em P são da forma A aβ, para A V, a T e β V. Suponha que k é o maior número de símbolos que aparecem do lado direito das produções em P, e seja V := { [γ] : γ V + e γ < k }. Defina, iniciaente, P =. Para cada produção A aγ pertencente a P, com A V, a T e γ V + ( γ < k) e cada variável [Aδ] pertencente a V, inclua em P a produção [Aδ] a, se γ = δ = λ; [Aδ] a[γ], se γ λ e δ = λ; [Aδ] a[δ], se γ = λ e δ λ; [Aδ] a[γ][δ], se γ λ e δ λ. Ao final desse processo, teremos uma gramática equivalente a G na qual todas as produções são da forma A a, A ab ou A abc, para a terminal e A, B e C variáveis. 8. Mostre que as linguagens abaixo não são livres de contexto. (a) [ ] {a i b j c k : i < j < k}. (b) {a i b j : j = i 2 }. (c) {a p : p é um número primo}. (d) [ ] {a 2i : i 0}. Vamos utilizar o lema de iteração (pumping lemma) para linguagens de contexto em cada uma das linguagens acima. Como é o caso quando se utiliza este resultado, todas as provas serão por contradição. (a) Demonstração. Suponha que L = {a i b j c k : i < j < k} é livre de contexto e seja n > 0 a constante cuja existência é garantida pelo lema de iteração. Considere a palavra z = a n b n+1 c n+2 L. Claramemte z = 3n + 3 > n. Seja então z = uvwxy uma decomposição qualquer de z satisfazendo vwx n e vx λ. Vamos mostrar que existem valores de l 0 tais que a palavra uv l wx l y L. Temos dois casos relevantes para analisar (todas as demais possibilidades são cobertas por estes casos). No primeiro caso, vwx não possui nenhum símbolo c. Com isso, para l = 3, z = uv 3 wx 3 y possui no mínimo n + 2 a s ou b s, pois vx > 0. Como z c = n + 2, segue que z L.

9 Em caso contrário, vwx possui pelo menos um c e temos que ela não possui nenhum a, já que vwx n e existem n + 2 posições entre o último a e o primeiro c, inclusive. Logo, para l = 0, a palavra z = uv 0 wx 0 y = uwy possui n símbolos a e não mais que 2n + 2 b s e c s, já que vx > 0. Como não é possível com esses valores termos mais b s do que a s e mais c s do que b s, segue que z L. Logo, independente da forma em que z for dividida, existem valores l 0 para os quais uv l wx l y L, contradizendo o lema da iteração. Portanto, L não é livre de contexto. (b) Demonstração. Suponha que L = {a i b j : j = i 2 } é livre de contexto e seja n > 0 a constante cuja existência é garantida pelo lema de iteração. Considere a palavra z = a n b n2 L, com z = n 2 + n > n. Seja z = uvwxy uma decomposição qualquer de z satisfazendo vwx n e vx λ. Se vwx possui apenas a s, então para l = 0 a palavra z = uv l wx l y = uwy consiste em n 2 símbols b e no máximo n 1 símbolos a, implicando que z L. Um argumento análogo mostra que se vwx possui apenas b s, z também não pertence a L. Caso v ou x possua simultaneamente a s e b s, claramente a palavra uv 2 wx 2 y L, pois nem à linguagem a b ela pertence. O último e mais interessante caso ocorre quando v consiste de k símbolos a e x consiste de m símbolos b, com k, m > 0. Para todo l > 1, a palavra z = uv l wx l y consiste em n + lk símbolos a e n 2 + símbolos b. Temos que z L se e somente se (n + lk) 2 = n 2 +, pois o número de b s deve ser igual ao quadrado do número de a s. No entanto, (n + lk) 2 = n 2 + 2lkn + l 2 k 2 e assim é necessário que 2lkn + l 2 k 2 = com k, m > 0 e l > 1. Como o lado esquerdo da equação acima cresce quadraticamente e o direito linearmente, não é possível satisfazer a igualdade para todo l > 1 lembre-se que n 2 O(n). Ou seja, existe algum valor l para o qual z L e isso completa a prova. (c) Demonstração. Suponha que L = {a p : p é um número primo} é livre de contexto e seja n > 0 a constante cuja existência é garantida pelo lema de iteração. Seja p n + 2 primo e considere a palavra z = a p L. Seja z = uvwxy uma decomposição qualquer de z satisfazendo vwx n e vx λ. Se vx = m, então uwy = p m. Tome l = p m e considere a palavra z = uv l wx l y = uv p m wx p m y. Temos que: z = uwy + (p m) vx = (p m) + (p m)m = (1 + m)(p m). Para z pertençer a L, z deve ser primo. Isso ocorre se e somente se m + 1 ou p m for igual a 1. No entanto, temos que m + 1 > 1, pois vx λ e assim m = vx > 0, e que p m > 1, pois p n + 2 e m n, já que vwx n. Portanto, z L e L não é livre de contexto. (d) Demonstração. Suponha que L = {a 2i : i 0} é livre de contexto e seja n > 0 a constante cuja existência é garantida pelo lema de iteração. Considere a palavra z = a 2n L e seja z = uvwxy uma decomposição qualquer de z satisfazendo vwx n e vx λ. Tome l = 2 e considere z = uv 2 wx 2 z. Temos que 2 n < z = z + vx 2 n + n, pois vwx n e vx > 0. Como 2 n+1 > 2 n + n para todo n não negativo, segue que o número de a s em z não é uma potência de 2 e, consequentemente, que z L. Logo, L não é livre de contexto. 9. Escreva autômatos com pilha para as seguintes linguagens abaixo: (a) {wcw R : w {a, b} } (b) {w {a, b} : w = w R } (c) {a i b j c k : i = j ou j = k} (d) {w {a, b} : w possui duas vezes mais a s que b s} (e) L(G), em que G = ({S}, {(, ), [, ]}, {S (S) [S] SS λ}, S). (f) L(G), em que G = ({A, S}, {a, b}, {S aaa, A as bs a}, S). Especifique o tipo de aceitabilidade de cada autômato com pilha.

10 (a) A = ({p, q, r}, {a, b}, {, a, b}, δ A, p,, {r}), em que δ A é como: δ A (p, a, ) = {(p, a )} δ A (p, b, ) = {(p, b )} δ A (p, a, a) = {(p, aa)} δ A (p, a, b) = {(p, ab)} δ A (p, b, a) = {(p, ba)} δ A (p, b, b) = {(p, bb)} δ A (p, c, ) = {(q, )} δ A (p, c, a) = {(q, a)} δ A (p, c, b) = {(q, b)} δ A (q, a, a) = {(q, λ)} δ A (q, b, b) = {(q, λ)} δ A (q, λ, ) = {(r, λ)} A aceitabilidade de A é simultaneamente por alcance de estado final e por esvaziamento de pilha. (b) A = ({p, q, r}, {a, b}, {, a, b}, δ A, p,, {r}), em que δ A é como: δ A (p, a, ) = {(p, a )} δ A (p, b, ) = {(p, b )} δ A (p, a, a) = {(p, aa)} δ A (p, a, b) = {(p, ab)} δ A (p, b, a) = {(p, ba)} δ A (p, b, b) = {(p, bb)} δ A (p, a, ) = {(q, )} δ A (p, b, ) = {(q, )} δ A (p, a, a) = {(q, a)} δ A (p, a, b) = {(q, b)} δ A (p, b, a) = {(q, a)} δ A (p, b, b) = {(q, b)} δ A (p, λ, ) = {(q, )} δ A (p, λ, a) = {(q, a)} δ A (p, λ, b) = {(q, b)} δ A (q, a, a) = {(q, λ)} δ A (q, b, b) = {(q, λ)} δ A (q, λ, ) = {(r, λ)} A aceitabilidade de A é simultaneamente por alcance de estado final e por esvaziamento de pilha. Outro autômato de pilha possível para esta linguagem é B = ({p}, {a, b}, {S, a, b}, δ B, p, S), em que δ B é como: A aceitabilidade de B é por esvaziamento de pilha. δ B (p, a, a) = {(p, λ)} δ B (p, b, b) = {(p, λ)} δ B (p, λ, S) = {(p, asa)} δ B (p, λ, S) = {(p, bsb)} δ B (p, λ, S) = {(p, a)} δ B (p, λ, S) = {(p, b)} δ B (p, λ, S) = {(p, λ)} (c) A = (Q, {a, b}, {, a, b, c}, δ A, p,, {q 3, q 7 }), em que Q = {q i : 0 i 7} e δ A é como: δ A (q 0, λ, ) = {(q 1, ), (q 4, )} δ A (q 1, a, ) = {(q 1, a )} δ A (q 1, a, a) = {(q 1, aa)} δ A (q 1, λ, ) = {(q 2, )} δ A (q 1, λ, a) = {(q 2, a)} δ A (q 2, b, a) = {(q 2, λ)} δ A (q 2, λ, ) = {(q 3, )} δ A (q 3, c, ) = {(q 3, )} δ A (q 4, a, ) = {(q 4, )} δ A (q 4, λ, ) = {(q 5, )} δ A (q 5, b, ) = {(q 5, b )} δ A (q 5, b, b) = {(q 5, bb)} δ A (q 5, λ, ) = {(q 6, )} δ A (q 5, λ, b) = {(q 6, b)} δ A (q 6, c, b) = {(q 6, λ)} δ A (q 6, λ, ) = {(q 7, )} A aceitabilidade de A é por alcance de estado final. (d) B = ({p}, {a, b}, {S, A, B, a, b}, δ B, p, S), em que δ B é como: δ B (p, a, a) = {(p, λ)} δ B (p, b, b) = {(p, λ)} δ B (p, λ, S) = {(p, aab)} δ B (p, λ, S) = {(p, aba)} δ B (p, λ, S) = {(p, baa)} δ B (p, λ, S) = {(p, λ)} δ B (p, λ, A) = {(p, as)} δ B (p, λ, A) = {(p, baaa)} δ B (p, λ, B) = {(p, aabb)} δ B (p, λ, B) = {(p, abab)} δ B (p, λ, B) = {(p, abba)} δ B (p, λ, B) = {(p, bs)} A aceitabilidade de B é por esvaziamento de pilha (veja Exercício 2 ítem (e)). (e) B = ({p}, {(, ), [, ]}, {S, (, ), [, ]}, δ B, p, S), em que δ B é como: A aceitabilidade de B é por esvaziamento de pilha. δ B (p, (, () = {(p, λ)} δ B (p, ), )) = {(p, λ)} δ B (p, [, [) = {(p, λ)} δ B (p, ], ]) = {(p, λ)} δ B (p, λ, S) = {(p, (S))} δ B (p, λ, S) = {(p, [S])} δ B (p, λ, S) = {(p, SS)} δ B (p, λ, S) = {(p, λ)}

11 (f) B = ({p}, {a, b}, {S, A, a, b}, δ B, p, S), em que δ B é como: A aceitabilidade de B é por esvaziamento de pilha. δ B (p, a, a) = {(p, λ)} δ B (p, b, b) = {(p, λ)} δ B (p, λ, S) = {(p, aaa)} δ B (p, λ, A) = {(p, as)} δ B (p, λ, A) = {(p, bs)} δ B (p, λ, A) = {(p, a)} 10. [ ] Um autômato com pilha P = (Q, Σ, Γ, δ, q 0,, F ) é determinístico se: (1) Sempre que δ(q, a, X) é não vazia para algum a Σ, então δ(q, λ, X) é vazia (para qualquer X Γ), e (2) Para cada q Q, a Σ {λ} e X Γ, δ(q, a, X) 1 (isto é, δ(q, a, X) contém no máximo um elemento). A regra (1) elimina a possibilidade de escolha entre a realização de uma transição consumindo um símbolo da entrada ou através de uma λ-transição. A regra (2) elimina a possibilidade de escolha entre transições para um mesmo símbolo da entrada. Construa autômatos com pilha determinísticos para as seguintes linguagens: (a) {a n b m : n m}. (b) {a n b m : n m}. (c) {a n b m a n : n, m 0}. (a) A = ({p, q, r}, {a, b}, {, a, b}, δ, p,, {r}), em que δ é como: δ(p, a, ) = {(p, a )} δ(p, a, a) = {(p, aa)} δ(p, b, ) = {(q, )} δ(p, b, a) = {(q, λ)} δ(q, b, a) = {(q, λ)} δ(q, λ, ) = {(r, )} (b) A = ({p, q, r}, {a, b}, {, a, b}, δ, p,, {r}), em que δ é como: δ(p, a, ) = {(p, a )} δ(p, a, a) = {(p, aa)} δ(p, b, a) = {(q, λ)} δ(q, b, a) = {(q, λ)} δ(q, λ, a) = {(r, a)} δ(q, λ, ) = {(r, )} (c) A = ({p, q, r, s}, {a, b}, {, a, b}, δ, p,, {s}), em que δ é como: δ(p, a, ) = {(p, a )} δ(p, a, a) = {(p, aa)} δ(p, b, ) = {(q, )} δ(p, b, a) = {(q, a)} δ(q, b, ) = {(q, )} δ(q, b, a) = {(q, a)} δ(q, a, a) = {(r, λ)} δ(r, a, a) = {(r, λ)} δ(r, λ, ) = {(s, )} Sugestão: desenhe os diagramas correspondentes para observar melhor como cada autômato funciona. 11. Seja L {a} uma linguagem sobre um alfabeto unitário. Mostre que L é livre de contexto se e somente se L é regular. Demonstração. Para necessidade, observe que todo DFA D pode ser interpretado como um DPDA que não faz uso da pilha. Formaente, para D = (Q, Σ, δ, s, F ), defina um DPDA D = (Q, Σ, Σ { }, δ, s,, F ) em que para todos p, q Q e a Σ tal que δ(p, a) = q, tem-se que δ (p, a, ) = (q, ). Claramente, L(D) = L(D ). Para suficiência, seja L {a} uma linguagem livre de contexto e seja n > 0 a constante cuja existência é garantida pelo lema da iteração para linguagens livres de contexto. Para todo k n e toda palavra z = a k L, o lema da iteração estabelece que que z = uvwxy com vx λ e vwx n, e que z(i) = uv i wx i y L para todo i 0. Defina p k = vx e m k = uwy de forma que z(i) = a m k+ip k L e observe que m k + ip k é uma progressão aritmética com início m k 0 e razão 1 p k n com m k e p k dependentes de k e que, portanto, {z(i) : i 0}

12 é uma linguagem fundamentaente periódica ou, em outras palavras, regular (cf. Teorema 6, Lista 2). Defina S := L {a l : 0 l < n}. Claramente S é finita e portanto, regular (cf. Exercício 2, Lista 2). Vamos mostrar então que o número de progressões aritméticas em L é finito, isto é, que um número finito de valores para k é suficiente para descrever L \ S. Seja K := {k n : a k L} e observe que L = S {a k : k K} S ( k K a m k ) ) L, implicando em {a k : k K} = k K am k ). Agora, para cada valor de k K, temos que a m k ) a r k ), em que r k 0 e r k m k (mod p k ), resultando em a m k ) a r k ). k K k K Para mostarmos que a recíproca da inclusão acima, defina o conjunto P := {(r, p) : 1 p n, 0 r < p e existe k K com p k = p e r k r (mod p k )}, e para todos os pares (r, p) P, defina Temos então que Logo, q(r, p) := min{r k : k K com p k = p e r k r (mod p k )}. (r,p) P a q(r,p) (a p ) L = S (r,p) P k K a m k ). a q(r,p) (a p ), isto é, L é a união de uma linguagem finita com P n 2 linguagens fundamentaente periódicas e, portanto, L é regular. Nota: Observe que a técnica utilizada na prova para limitar o número de linguagens fundamentaente periódicas é semelhante à utilizada no Teorema 7 da Lista Uma gramática livre de contexto G = (V, T, P, S) é linear se toda produção em P é da forma A α ou A β B γ, em que A, B V e α, β, γ T. Ou seja, todas as produções de G possuem no máximo um não terminal (variável) no lado direito. Uma linguagem livre de contexto L é linear se existe uma gramática livre de contexto linear G tal que L = L(G). Mostre a seguinte versão do lema de iteração para linguagens livres de contexto lineares. Se L é livre de contexto e linear, então existe uma constante n tal que se z L com z n, então existe uma decomposição z = uvwxy com uvxy n e vx 1 tal que uv i wx i y L para todo i 0. Demonstração. Seja G = (V, T, P, S) uma gramática livre de contexto para L e, sem perda de generalidade, suponha que G não possui produções unitárias do tipo A B em P, com A, B V a suposição é sem perda de generalidade pois podemos eliminar tais produções e obter uma gramática equivalente, como fizemos em um dos passos da normalização de Chomsky. Sejam p := V e k := max{ α : A α P }, o número de não-terminais (variáveis) e o número máximo de símbolos no lado direito de uma produção em G, respectivamente. Defina n := (p + 1)k, seja z L com z n e considere S z uma derivação mais à equerda para z. Pelo princípio da casa do pombo, algum A V ocorre em mais de uma forma sentencial nos primeiros p + 1

13 passos na derivação de z. Sejam 0 < i < j < p + 1 os números de derivações até a primeira e a segunda ocorrências de A na derivação de z, isto é, S i uay j i uvaxy uvwxy = z, (4) para palavras u, v, w, x, y T. Como i < j < p + 1, temos que uvxy (p + 1)k = n, e vx λ pelo fato de G não possuir produções unitárias. A última afirmação agora é provada manipulando-se as derivações em (4). Para todo l 0, começando com S i uay, repetindo-se l vezes A j i vax, e finalizando com A w, obtemos caso l = 0, ou S i uay j i uvaxy j i S i uay uv 2 Ax 2 y j i uwy uv 3 Ax 3 y j i j i uv l Ax l y uv l wx l y caso l > 0. Nos dois casos, não é difícil perceber que a palavra derivada pertence a L(G) e, portanto, a L.

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

Transformações úteis para GLC: (1) eliminação de produções nulas; (2) eliminação de produções unitárias; (3) Eliminação de símbolos estéreis e

Transformações úteis para GLC: (1) eliminação de produções nulas; (2) eliminação de produções unitárias; (3) Eliminação de símbolos estéreis e Transformações úteis para GLC: (1) eliminação de produções nulas; (2) eliminação de produções unitárias; (3) Eliminação de símbolos estéreis e inacessíveis; Forma Normal de Chomsky (FNC) e Forma Normal

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

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

Modelos de Computação Folha de trabalho n. 8 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

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

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

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

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

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

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

SCC Capítulo 1 Linguagens Regulares e Autômatos Finitos

SCC Capítulo 1 Linguagens Regulares e Autômatos Finitos SCC-505 - Capítulo 1 Linguagens Regulares e Autômatos Finitos 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

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

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

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

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

Propriedades de Linguagens Livres de Contexto. Propriedades de Linguagens Livres de Contexto. Propriedades de Linguagens Livres de Contexto

Propriedades de Linguagens Livres de Contexto. Propriedades de Linguagens Livres de Contexto. Propriedades de Linguagens Livres de Contexto UNIVESIDADE ESTADUAL DE MAINGÁ DEPATAMENTO DE INFOMÁTICA Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 2 A classe de linguagens livres de contexto é fechada

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

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

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

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

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

Hierarquia de Chomsky Exemplos de gramáticas

Hierarquia de Chomsky Exemplos de gramáticas Hierarquia de Chomsky Exemplos de gramáticas 1 Formalmente, as gramáticas são caracterizadas como quádruplas ordenadas G = ( Vn, Vt, P, S) onde: Vn representa o vocabulário não terminal da gramática. Este

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

Se o símbolo inicial não fizer parte do conjunto de símbolos férteis, a linguagem gerada pela gramática é vazia.

Se o símbolo inicial não fizer parte do conjunto de símbolos férteis, a linguagem gerada pela gramática é vazia. Transformações em G.L.C Uma vez que existem métodos de análise, cada qual exigindo gramáticas com características específicas é importante que uma gramática possa ser transformada, porém, sem perder a

Leia mais

Capítulo 3: Gramáticas

Capítulo 3: Gramáticas Capítulo 3: Gramáticas Já vimos que procedimentos podem ser usados para definir linguagens de duas maneiras essenciais: como geradores, procedimentos que enumeram os elementos da linguagem, e como reconhecedores

Leia mais

O que é Linguagem Regular. Um teorema sobre linguagens regulares. Uma aplicação do Lema do Bombeamento. Exemplo de uso do lema do bombeamento

O que é Linguagem Regular. Um teorema sobre linguagens regulares. Uma aplicação do Lema do Bombeamento. Exemplo de uso do lema do bombeamento O que é Linguagem Regular Um teorema sobre linguagens regulares Linguagem regular Uma linguagem é dita ser uma linguagem regular se existe um autômato finito que a reconhece. Dada uma linguagem L: É possível

Leia mais

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto Capítulo 6. Autômatos com Pilha 6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto Nos exemplos da seção anterior, vimos que os autômatos com pilha existem para

Leia mais

Lista de exercícios 1

Lista de exercícios 1 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO DE CIÊNCIAS AGRÁRIAS CCA/ UFES Departamento de Engenharia Rural Lista de exercícios 1 Disciplina: Linguagens Formais e Autômatos Professora: Juliana Pinheiro

Leia mais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE CIÊNCIAS EXATAS E NATURAIS FACULDADE DE COMPUTAÇÃO CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof.

Leia mais

LINGUAGENS FORMAIS E AUTÔMATOS

LINGUAGENS FORMAIS E AUTÔMATOS LINGUAGENS FORMAIS E AUTÔMATOS O objetivo deste curso é formalizar a idéia de linguagem e definir os tipos de sintaxe e semântica. Para cada sintaxe, analisamos autômatos, ue são abstrações de algoritmos.

Leia mais

Apostila 03 Linguagens Livres de Contexto

Apostila 03 Linguagens Livres de Contexto 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

Capítulo 4: Autômatos finitos e expressões regulares

Capítulo 4: Autômatos finitos e expressões regulares Linguagens Formais Capítulo 4: Autômatos finitos e expressões regulares 4.1 - Introdução com Luiz Carlos Castro Guedes Neste capítulo estudaremos uma máquina (um procedimento aceitador, ou reconhecedor),

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

Autômatos a pilha. UFRN/DIMAp/DIM0330 Linguagens formais. David Déharbe. http://www.consiste.dimap.ufrn.br/ david/enseignement/2003.

Autômatos a pilha. UFRN/DIMAp/DIM0330 Linguagens formais. David Déharbe. http://www.consiste.dimap.ufrn.br/ david/enseignement/2003. UFRN/DIMAp/DIM0330 Linguagens formais http://www.consiste.dimap.ufrn.br/ david/enseignement/2003.1/dim0330 1/36 Autômatos a pilha David Déharbe UFRN/DIMAp Campus Universitário, Lagoa Nova, 59072-970 Natal,

Leia mais

Matemática Discreta para Ciência da Computação

Matemática Discreta para Ciência da Computação Matemática Discreta para Ciência da Computação 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

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

INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto

INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto baseado em material produzido pelo prof Paulo Bauth Menezes e pelo prof Olinto José Varela

Leia mais

Gramática. Gramática. Gramática

Gramática. Gramática. Gramática Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Prof. Yandre Maldonado - 2 Mecanismo gerador que permite definir formalmente uma linguagem; Através de uma gramática

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

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

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

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

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 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: Teoria, Modelagem e Implementação. Material adicional, versão do dia 22 de novembro de 2017 às 17:24

LINGUAGENS FORMAIS: Teoria, Modelagem e Implementação. Material adicional, versão do dia 22 de novembro de 2017 às 17:24 LINGUAGENS FORMAIS: Teoria, Modelagem e Implementação Material adicional, versão do dia 22 de novembro de 2017 às 17:24 1. Página 32, imediatamente depois do Exemplo 1.8: A teoria de conjuntos apresentada

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

INE5317 Linguagens Formais e Compiladores AULA 8: Linguagens Livres de Contexto

INE5317 Linguagens Formais e Compiladores AULA 8: Linguagens Livres de Contexto INE5317 Linguagens Formais e Compiladores AULA 8: Linguagens Livres de Contexto baseado em material produzido pelo prof Paulo B auth Menezes e pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira

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

9.3 Gramáticas Irrestritas

9.3 Gramáticas Irrestritas 9.3. Gramáticas Irrestritas 9.3 Gramáticas Irrestritas Para investigar a conexão entre as linguagens recursivamente enumeráveis e as gramáticas, retornaremos à definição geral de uma gramática. Na definição

Leia mais

Gramáticas Livres de Contexto

Gramáticas Livres de Contexto Gramáticas Livres de Contexto 25 de novembro de 2011 Definição 1 Uma Regra (ou produção) é um elemento do conjunto V (V Σ). Sendo que V é um conjunto finito de elementos chamados de variáveis e Σ um conjunto

Leia mais

Prova 1 de INF1626 Linguagens Formais e Autômatos

Prova 1 de INF1626 Linguagens Formais e Autômatos Prova 1 de INF1626 Linguagens Formais e Autômatos Aluno(a): Matrícula: Atenção: O tempo total de prova é de 110 minutos (09:05 às 10:55). Durante a prova não é permitido o uso de qualquer aparelho eletrônico

Leia mais

OS TEOREMAS DE JORDAN-HÖLDER E KRULL-SCHMIDT (SEGUNDA VERSÃO)

OS TEOREMAS DE JORDAN-HÖLDER E KRULL-SCHMIDT (SEGUNDA VERSÃO) ! #" $ %$!&'%($$ OS TEOREMAS DE JORDAN-HÖLDER E KRULL-SCHMIDT (SEGUNDA VERSÃO) Neste texto apresentaremos dois teoremas de estrutura para módulos que são artinianos e noetherianos simultaneamente. Seja

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

Um alfabeto é um conjunto de símbolos indivisíveis de qualquer natureza. Um alfabeto é geralmente denotado pela letra grega Σ.

Um alfabeto é um conjunto de símbolos indivisíveis de qualquer natureza. Um alfabeto é geralmente denotado pela letra grega Σ. Linguagens O conceito de linguagem engloba uma variedade de categorias distintas de linguagens: linguagens naturais, linguagens de programação, linguagens matemáticas, etc. Uma definição geral de linguagem

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

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

Análise I Solução da 1ª Lista de Exercícios

Análise I Solução da 1ª Lista de Exercícios FUNDAÇÃO EDUCACIONAL SERRA DOS ÓRGÃOS CENTRO UNIVERSITÁRIO SERRA DOS ÓRGÃOS Centro de Ciências e Tecnologia Curso de Graduação em Matemática Análise I 0- Solução da ª Lista de Eercícios. ATENÇÃO: O enunciado

Leia mais

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/30 3 - INDUÇÃO E RECURSÃO 3.1) Indução Matemática 3.2)

Leia mais

Linguagens Livres de Contexto

Linguagens Livres de Contexto Universidade Católica de Pelotas Centro Politécnico Bacharelado em Ciência da Computação 364018 Linguagens Formais e Autômatos TEXTO 4 Linguagens Livres de Contexto Prof. Luiz A M Palazzo Maio de 2011

Leia mais

A forma canônica de Jordan

A forma canônica de Jordan A forma canônica de Jordan 1 Matrizes e espaços vetoriais Definição: Sejam A e B matrizes quadradas de orden n sobre um corpo arbitrário X. Dizemos que A é semelhante a B em X (A B) se existe uma matriz

Leia mais

Definições Hierarquia de Chomsky Exemplos de gramáticas

Definições Hierarquia de Chomsky Exemplos de gramáticas Definições Hierarquia de Chomsky Exemplos de gramáticas 1 Formalmente, as gramáticas são caracterizadas como quádruplas ordenadas G = ( Vn, Vt, P, S) onde: Vn representa o vocabulário não terminal da gramática.

Leia mais

Sistemas de equações lineares com três variáveis

Sistemas de equações lineares com três variáveis 18 Sistemas de equações lineares com três variáveis Sumário 18.1 Introdução....................... 18. Sistemas de duas equações lineares........... 18. Sistemas de três equações lineares........... 8

Leia mais

a = bq + r e 0 r < b.

a = bq + r e 0 r < b. 1 Aritmética dos Inteiros 1.1 Lema da Divisão e o Algoritmo de Euclides Recorde-se que a, o módulo ou valor absoluto de a, designa a se a N a = a se a / N Dados a, b, c Z denotamos por a b : a divide b

Leia mais

AFNs, Operações Regulares e Expressões Regulares

AFNs, Operações Regulares e Expressões Regulares AFNs, Operações Regulares e Expressões Regulares AFNs. OperaçõesRegulares. Esquematicamente. O circulo vermelho representa o estado inicial q 0, a porção verde representa o conjunto de estados de aceitação

Leia mais

Linguagens Formais e Autômatos. Conceitos Básicos Prof. Anderson Belgamo

Linguagens Formais e Autômatos. Conceitos Básicos Prof. Anderson Belgamo Linguagens Formais e Autômatos Conceitos Básicos Prof. Anderson Belgamo Introdução Teoria das Linguagens Formais Originariamente desenvolvida na década de 1950. Objetivo inicial: desenvolver teorias relacionadas

Leia mais

Linguagens Livres de Contexto

Linguagens Livres de Contexto Linguagens Livres de Contexto 1 Conteúdo Programático Introdução Teoria de autômatos Strings e linguagens Gramáticas Algoritmos Linguagens formais Hierarquia de chomsky Linguagens Regulares Autômatos finitos

Leia mais

(Ciência de Computadores) 2005/ Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação

(Ciência de Computadores) 2005/ Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação Álgebra (Ciência de Computadores) 2005/2006 Números inteiros 1. Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação (a) {inteiros positivos impares}; (b) {inteiros negativos pares};

Leia mais

Introduzir os conceitos de base e dimensão de um espaço vetorial. distinguir entre espaços vetoriais de dimensão fnita e infinita;

Introduzir os conceitos de base e dimensão de um espaço vetorial. distinguir entre espaços vetoriais de dimensão fnita e infinita; META Introduzir os conceitos de base e dimensão de um espaço vetorial. OBJETIVOS Ao fim da aula os alunos deverão ser capazes de: distinguir entre espaços vetoriais de dimensão fnita e infinita; determinar

Leia mais

Construção de Compiladores Aula 16 - Análise Sintática

Construção de Compiladores Aula 16 - Análise Sintática Construção de Compiladores Aula 16 - Análise Sintática Bruno Müller Junior Departamento de Informática UFPR 25 de Setembro de 2014 1 Introdução Hierarquia de Chomsky Reconhecedores Linguagens Livres de

Leia mais

Lista 1 com respostas

Lista 1 com respostas Lista 1 com respostas Professora Nataliia Goloshchapova MAT0105/MAT0112-1 semestre de 2015 Exercício 1. Verifique se é verdadeira ou falsa cada afirmação e justifique sua resposta: (a) (A, B) (C, D) AB

Leia mais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE CIÊNCIAS EXATAS E NATURAIS FACULDADE DE COMPUTAÇÃO CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof.

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

Matemática Discreta - 07

Matemática Discreta - 07 Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta - 07 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

Exercícios preparatórios para a Prova 2

Exercícios preparatórios para a Prova 2 Exercícios preparatórios para a Prova 2 Estes exercícios foram selecionados do Cap. 3 do livro-texto da disciplina (Ramos, 2009), e têm como objetivo auxiliar na preparação para a Prova 2, programada para

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

MESTRADO PROFISSIONAL EM MATEMÁTICA EM REDE NACIONAL. ENQ Gabarito

MESTRADO PROFISSIONAL EM MATEMÁTICA EM REDE NACIONAL. ENQ Gabarito MESTRADO PROFISSIONAL EM MATEMÁTICA EM REDE NACIONAL ENQ 2017.1 Gabarito Questão 01 [ 1,25 ] Determine as equações das duas retas tangentes à parábola de equação y = x 2 2x + 4 que passam pelo ponto (2,

Leia mais

Linguagens, Gramáticas e Máquinas

Linguagens, Gramáticas e Máquinas Linguagens, Gramáticas e Máquinas 1 INTRODUÇÃO Pode-se olhar um computador como uma máquina M que tem as propriedades descritas a seguir. A cada instante, M tem um "estado interno", M lê alguma "entrada",

Leia mais

Os números inteiros. Capítulo 2

Os números inteiros. Capítulo 2 6 Capítulo 2 Os números inteiros Intuitivamente, o conjunto Z dos números inteiros é composto pelos números naturais e pelos "negativos". Como justificamos de uma forma simples qual a origem dos números

Leia mais

Compiladores. Parser LL 10/13/2008

Compiladores. Parser LL 10/13/2008 Compiladores Fabiano Baldo Usa uma pilha explícita ao invés de chamadas recursivas para realizar a análise sintática. LL(k) parsing significa que ktokensà frente são utilizados. O primeiro L significa

Leia mais

Definições Hierarquia de Chomsky Exemplos de gramáticas

Definições Hierarquia de Chomsky Exemplos de gramáticas Definições Hierarquia de Chomsky Exemplos de gramáticas 1 Formalmente, as gramáticas são caracterizadas como quádruplas ordenadas G = ( Vn, Vt, P, S) onde: Vn representa o vocabulário não terminal da gramática.

Leia mais

INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos

INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira As Linguagens e os formalismos representacionais

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

Lista de Exercícios Definição de gramáticas e Autômatos Finitos Determinísticos

Lista de Exercícios Definição de gramáticas e Autômatos Finitos Determinísticos Lista de Exercícios Definição de gramáticas e Autômatos Finitos Determinísticos Uma das formas de se especificar a gramática de uma linguagem de programação é utilizar a Backus-Naur Form (BNF Ingerman

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

Aula 3: Autômatos Finitos

Aula 3: Autômatos Finitos Teoria da Computação Primeiro Semestre, 25 Aula 3: Autômatos Finitos DAINF-UTFPR Prof. Ricardo Dutra da Silva Um procedimento ue determina se uma string de entrada pertence à uma linguagem é um reconhecedor

Leia mais

MA14 - Unidade 1 Divisibilidade Semana de 08/08 a 14/08

MA14 - Unidade 1 Divisibilidade Semana de 08/08 a 14/08 MA14 - Unidade 1 Divisibilidade Semana de 08/08 a 14/08 Neste curso, consideraremos o conjunto dos números naturais como sendo o conjunto N = {0, 1, 2, 3,... }, denotando por N o conjunto N \ {0}. Como

Leia mais

Análise na Reta - Verão UFPA 1a lista - Números naturais; Corpos ordenados

Análise na Reta - Verão UFPA 1a lista - Números naturais; Corpos ordenados Análise na Reta - Verão UFPA 1a lista - Números naturais; Corpos ordenados A lista abaixo é formada por um subconjunto dos exercícios dos seguintes livros: Djairo G. de Figueiredo, Análise na reta Júlio

Leia mais

UNIVERSIDADE FEDERAL DE VIÇOSA Centro de Ciências Exatas Departamento de Matemática

UNIVERSIDADE FEDERAL DE VIÇOSA Centro de Ciências Exatas Departamento de Matemática UNIVERSIDADE FEDERAL DE VIÇOSA Centro de Ciências Exatas Departamento de Matemática 2 a Lista - MAT 137 - Introdução à Álgebra Linear II/2005 1 Resolva os seguintes sistemas lineares utilizando o Método

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

TRANSFORMAÇÃO DE GRAMÁTICAS LIVRES DO CONTEXTO PARA EXPRESSÕES REGULARES ESTENDIDAS

TRANSFORMAÇÃO DE GRAMÁTICAS LIVRES DO CONTEXTO PARA EXPRESSÕES REGULARES ESTENDIDAS TRANSFORMAÇÃO DE GRAMÁTICAS LIVRES DO CONTEXTO PARA EXPRESSÕES REGULARES ESTENDIDAS Acadêmico: Cleison Vander Ambrosi Orientador: José Roque Voltolini da Silva Roteiro da Apresentação Introdução Motivação

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

Equações da reta no plano

Equações da reta no plano 3 Equações da reta no plano Sumário 3.1 Introdução....................... 2 3.2 Equação paramétrica da reta............. 2 3.3 Equação cartesiana da reta.............. 7 3.4 Equação am ou reduzida da reta..........

Leia mais

CAPÍTULO 6 SIMPLIFICAÇÃO DE GRAMÁTICAS LIVRES DE CONTEXTO E FORMAS NORMAIS

CAPÍTULO 6 SIMPLIFICAÇÃO DE GRAMÁTICAS LIVRES DE CONTEXTO E FORMAS NORMAIS CAPÍTULO 6 SIMPLIFICAÇÃO DE GRAMÁTICAS LIVRES DE CONTEXTO E FORMAS NORMAIS 6.1 Introdução 215 6.2 Métodos para transformar gramáticas 215 6.2.1 Eliminação do carácter 216 6.2.2 Uma regra geral para substituir

Leia mais

Autômato com pilha. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz

Autômato com pilha. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz Autômato com pilha IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz evandro@usp.br Departmento de Computação e Matemática FFCLRP Universidade de São Paulo E.E.S Ruiz (DCM USP)

Leia mais

7.1. Autómatos de pilha não-determinísticos (NPDA) 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto determinísticas.

7.1. Autómatos de pilha não-determinísticos (NPDA) 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto determinísticas. Capítulo 7 Autómatos de pilha 7.1. Autómatos de pilha não-determinísticos (NPDA) 7.2. Autómatos de pilha e linguagens livres de contexto 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto

Leia mais

1 Conjuntos, Números e Demonstrações

1 Conjuntos, Números e Demonstrações 1 Conjuntos, Números e Demonstrações Definição 1. Um conjunto é qualquer coleção bem especificada de elementos. Para qualquer conjunto A, escrevemos a A para indicar que a é um elemento de A e a / A para

Leia mais

LFA Aula 08. Minimização de AFD Autômatos Finitos com saídas 25/01/2017. Linguagens Formais e Autômatos. Celso Olivete Júnior.

LFA Aula 08. Minimização de AFD Autômatos Finitos com saídas 25/01/2017. Linguagens Formais e Autômatos. Celso Olivete Júnior. LFA Aula 08 Minimização de AFD Autômatos Finitos com saídas 25/01/2017 Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete/lfa 1 Na aula de hoje Minimização de autômatos finitos

Leia mais

Construção de Compiladores

Construção de Compiladores Construção de Compiladores Parte 1 Introdução Linguagens e Gramáticas F.A. Vanini IC Unicamp Klais Soluções Motivação Porque compiladores? São ferramentas fundamentais no processo de desenvolvimento de

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