UNIVERIDADE FEDERAL DE UBERLÂNDIA Fculdde de Computção Disciplin : Teori d Computção Professor : ndr de Amo Revisão de Grmátics Livres do Contexto (1) 1. Fzer o exercicio 2.3 d págin 128 do livro texto do ipser, segund edição (em ingles). Este exercicio tem respost no livro. Tentr fzer ntes de procurr respost! 2. Fzer o exercicio 2.4 d págin 128 do livro texto do ipser, segund edição (em ingles). Alguns items deste exercicio tem su respost no livro. 3. Considere grmátic G bixo que ger lingugem dos plindromos sobre o lfbeto Σ = {0, 1}. Aplicndo o lgoritmo visto em ul, constru um grmátic livre do contexto n form norml de Chomsky que sej equivlente G. ɛ A A 0A0 A 1A1 A ɛ A 0 A 1 4. Considere s lingugens L(G 1 ) e L(G 2 ) gerds pels seguintes grmátics: 0A 1A A 0A A 0 A 1B B 1B B 1 B 0 0 1
0A A 0 1B B 1 Mostre que L(G 1 ) e L(G 2 ) são lingugens regulres (exib um utômto correspondente cd um ds grmátics). 5. A prtir do exercicio nterior você seri cpz de projetr um lgoritmo que receb como input um grmátic G cujs regrs são do tipo A B, ou A, onde A, B são vriáveis e é terminl, e produz como output um utômto M tl que L(G) = L(M)? Grmátics deste tipo (equivlentes utômtos) são chmds de grmátics regulres. 6. Mostre invers do exercicio nterior: projetr um lgoritmo que recebe como input um utômto finito M e retorn um grmátic regulr G tl que L(G) = L(M). 7. Considere o lfbeto Σ = {0, 1, (, )} e o conjunto ds plvrs sobre Σ tis que : () o número de prênteses que brem é igul o número de prênteses que fechm. (b) pres de prênteses (um brindo, outro fechndo) estão propridmente entrelçdos. Por exemplo : (0(10)1) é um plvr d lingugem, ms (0)10)( não é um plvr d lingugem. Mostre que est lingugem é livre do contexto exibindo um grmátic livre do contexto que gere. Mostre que est lingugem não é regulr, plicndo o lem do bombemento pr lingugens regulres. 8. Considere lingugem Pscl simplificd L P definid sobre o lfbeto Σ = {:-, ;, if, then, else,begin, end, =, } Int Vr onde : Vr = {A,B,C,D,...,Z} e Int = { 30000,..., 1, 0, 1, 2,..., 30000}. e cujs plvrs são somente os progrms constituídos por comndos de fetção de vriáveis e comndos condicionis if (condição) then, else, onde s condições são testes do tipo x = y ou x y, onde x Vr e y Vr ou y Int. () Dê lguns exemplos de plvrs dest lingugem (cd plvr deve ser um progrm). 9. Considere s seguintes grmátics : 2
() G 1 = (V N, V T, P, ) onde : V N = {A, B, }, V T = {,b} e P é ddo pels seguintes regrs : A B A A b B (b) G 2 = (V N, V T, P, ) onde : V N = {A, B, }, V T = {,b,c} e P é ddo pels seguintes regrs : B ABb Bb bb AB cc B (c) G 3 = (V N, V T, P, ) onde : V N = {A, B, }, V T = {,b,c} e P é ddo pels seguintes regrs : AB B bb A B c Em cd um destes csos, Pr cd um ds grmátics, dê dus plvrs que pertencem L(G) e dus que não pertencem. 10. Considere seguinte grmátic : G = (V N, V T, P, ) onde : V N = {A, B, }, V T = {,b} e P é ddo pels seguintes regrs : 3
B ba A A A baa B b B b B BB Dê árvore de derivção correspondente às seguintes plvrs : () bbb (b) bbbb (c) bbbb 11. Considere seguinte grmátic livre do contexto : B ba A A A baa B b B b B BB Dê lingugem gerds por est grmátic. (Ver solução n págin do curso). 12. Considere s seguintes lingugens sobre o lfbeto {0,1} : () conjunto ds plvrs que têm o menos 3 uns. (b) conjunto ds plvrs que começm e terminm com o mesmo símbolo. (c) conjunto ds plvrs que têm comprimento impr. (d) conjunto ds plvrs que têm comprimento impr e cujo simbolo do meio é zero. (e) conjunto ds plvrs que contém mis zeros do que uns. Dê s grmátics que germ extmente cd um ds lingugens cim. 4
13. Dê um grmátic livre do contexto gerndo seguinte lingugem : L = {w w {, b} e tl que o número de s em w é o dobro do número de b s } 14. Considere um grmátic livre do contexto G e um árvore de derivção A correspondente um plvr w d lingugem gerd por est grmátic. Mostre que, cso grmátic sej regulr, só há um mneir de construir est árvore. Isto é, árvore determin de form únic um derivção α 1 α 2... w. 15. Considere grmátic livre do contexto G dd pels regrs : A A A A b Considere plvr w = b pertencente L(G) e seguinte árvore de derivção pr w : A A b Mostre que existem dus mneirs de construir est árvore, isto é existem dus sequêncis de regrs prtindo de e chegndo em w diferindo somente pel ordem em que s regrs são plicds (s regrs são s mesms em cd sequênci, só ordem é que mud). 16. Considere um árvore de derivção fix. Um derivção é dit derivção mis esquerd se cd nível d árvore os nós correspondentes às vriáveis são desenvolvidos d esquerd pr direit. Considere o exercicio do item nterior. Qul derivção mis esquerd pr plvr w n árvore dd? A prtir de exercicio, você deve concluir que fixd um árvore de derivção existe pens um derivção mis esquerd d plvr gerd pel árvore. 17. Considere gor um outro problem. ej seguinte grmátic livre do contexto G sobre o lfbeto {, +,, (, )}. 5
+ () Considere s DUA árvores de derivção seguintes pr plvr + x + + x Repre que primeir árvore corresponde entender expressão + como sendo primeiro somo + depois multiplico o resultdo por. A segund árvore corresponde entender expressão + como sendo somo com o resultdo d multiplicção. Um grmátic deste tipo, que possui dus ou mis árvores de derivção pr um mesm plvr é dit um grmátic mbígu. Isto porque, neste cso, um mesm plvr w pode ter diversos sentidos (dependendo d árvore de derivção considerd), como mostr o exemplo cim. Pede-se : Exib um grmátic G não mbígu que sej equivlente à grmátic G. Um lingugem é dit mbígu se el só pode ser gerd por grmátics mbígus. Assim, lingugem gerd pel grmátic G cim NÃO É mbígu, pois pode ser gerd por um grmátic G não mbígu. Não confund, portnto, lingugem mbígu com grmátic mbígu. Pr o conhecimento de vocês : Existem lingugens mbígus (vej exercício seguir)!! Provr que um lingugem é mbígu não é nd fácil. Por que? O que você ch respeito de provr que um grmátic é mbígu? 18. Problem muito difícil : Considere lingugem L = { i b j c k i, j, k 0 e i = j ou j = k}. Exib um grmátic que gere extmente est lingugem. Est grmátic é mbígu? Mostre que lingugem L é mbígu. 6