Prova 02 de Autômatos e Computabilidade

233 views

Published on

Prova 02 de Autômatos e Computabilidade da UnB.

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
233
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prova 02 de Autômatos e Computabilidade

  1. 1. Autˆomatos e Computabilidade: Prova 2Parte 1 (5 pontos)Para cada quest˜ao, indique a resposta correta. N˜ao precisa justificar sua escolha. Cada quest˜ao vale 0,5ponto.1. Seja a gram´atica G definida porS → AX | Y CA → aA | εC → cC | εX → bXc | εY → aY b | εQual das seguintes cadeias pode ser derivada de S em zero ou mais passos?(a) aaba(b) aabbbc(c) aaAbXcResposta: (c). A linguagem gerada pela gram´atica ´e {aibjck| i = j ou j = k}. Asrespostas (a) e (b) violam esse formato, enquanto que S ⇒ AX ⇒ aAX ⇒ aaAX ⇒aaAbXc.2. Na gram´atica do item (1), o conjunto de cadeias que podem ser derivadas de C ´e(a) c∗(b) Cadeias com uma quantidade par de cs.(c) ∅ porque C n˜ao ´e a vari´avel inicial.Resposta: (a).3. Qual das seguintes afirma¸c˜oes sobre a gram´atica do item (1) ´e verdadeira?(a) G ´e amb´ıgua porque abc tem duas deriva¸c˜oes diferentes a partir de S.(b) G ´e amb´ıgua porque abc tem duas ´arvores sint´aticas diferentes apartir de S.(c) G n˜ao ´e amb´ıgua porque pode ser convertida `a forma normal de Chomsky.Resposta: (b). Uma gram´atica ´e amb´ıgua se alguma cadeia tem duas ´arvores sint´aticasdiferentesSAa AεXb XεcSYa YεbCc CεDuas deriva¸c˜oes diferentes para a mesma cadeia n˜ao necessariamente indicam ambig¨ui-dade.
  2. 2. 4. Considere o autˆomato com pilha P definido porq0 q1ε,ε → εa,# → εb,ε → #Suponha que o autˆomato est´a no estado q1, que o conte´udo da pilha ´e ##### e que a por¸c˜ao n˜aolida da cadeia de entrada ´e abba. Depois de executar um passo, o autˆomato(a) termina sua opera¸c˜ao.(b) continua no estado q1 e o conte´udo da pilha ´e ######.(c) continua no estado q1 e o conte´udo da pilha ´e ####.Resposta: (c). O autˆomato desempilha um # e continua em q1.5. A linguagem reconhecida pelo autˆomato do item (4) ´e(a) {bnan| n ≥ 0}(b) {bman| m ≥ n ≥ 0}(c) {bman| n ≥ m ≥ 0}Resposta: (b). Em q0, o autˆomato empilha um # para cada b na cadeia de entrada. Emq1, desempilha um # para cada a. Como q1 ´e um estado de aceita¸c˜ao, o autˆomato aceitasempre que puder desempilhar um #, i.e., sempre que a quantidade de as seja menor ouigual que a quantidade de bs.6. Seja a linguagem L = {ambnambn| m,n ≥ 0}, e considere a seguinte demonstra¸c˜ao de que Lsim satisfaz o lema do bombeamento para linguagens livre-do-contexto: Seja p o comprimento debombeamento. Escolha s = apbapb ∈ L. Divida s na forma s = uvxyz, com u = ap−1, v = a,x = b, y = a, z = ap−1b. Claramente, uvixyiz ∈ L para todo i ≥ 0.(a) A demonstra¸c˜ao est´a incorreta porque n˜ao foram consideradas todas as poss´ıveis divis˜oes des.(b) A demostra¸c˜ao est´a incorreta porque n˜ao foram consideradas todas as poss´ıveis cadeias s ∈ L.(c) A demonstra¸c˜ao est´a correta.Resposta: (b).7. Seja a linguagem L = {anbncn| ≥ 0}, e considere a seguinte demonstra¸c˜ao de que L n˜ao satisfazo lema do bombeamento para linguagens livre-do-contexto: Seja p ≥ 1 o comprimento de bombe-amento. Escolha s = apbpcp ∈ L, e divida s na forma s = uvxyz, com u = ε, v = a, x = ε, y = ε,z = ap−1bpcp. Claramente, uv0xy0z /∈ L.(a) A demonstra¸c˜ao est´a incorreta porque n˜ao foram consideradas todas as poss´ıveis divis˜oes des.(b) A demostra¸c˜ao est´a incorreta porque n˜ao foram consideradas todas as poss´ıveis cadeias s ∈ L.
  3. 3. (c) A demonstra¸c˜ao est´a correta.Resposta: (a).8. Quantas m´aquinas de Turing ´e poss´ıvel construir com alfabeto de entrada Σ = {0,1}, alfabeto defita Γ = {0,1, }, e os estados q0, qaceita e qrejeita?(a) 3.(b) 183.(c) Infinitas.Resposta: (b). No diagrama de estados de cada m´aquina de Turing h´a 3 setas detransi¸c˜ao saindo de q0 (uma para cada s´ımbolo em Γ). Para cada transi¸c˜ao, h´a 3 estadosalvo poss´ıveis, 3 s´ımbolos que podem ser escritos na fita, e 2 sentidos poss´ıveis para movera cabe¸ca leitora.9. Suponha que M1 e M2 s˜ao m´aquinas de Turing que reconhecem as linguagens L1 e L2, respectiva-mente, e L1 ⊆ L2. Ent˜ao(a) Para cada cadeia de entrada na qual M1 n˜ao para, M2 tampouco para.(b) Para cada cadeia de entrada na qual M1 para, M2 tamb´em para.(c) Para cada cadeia de entrada que M1 aceita, M2 para.Resposta: (c). M2 aceita todas as cadeias de L1.10. Se L ´e uma linguagem Turing-decid´ıvel, ent˜ao(a) L e ¯L devem ser Turing-reconhec´ıvel.(b) L deve ser Turing-reconhec´ıvel, mas ¯L pode n˜ao sˆe-lo.(c) L ou ¯L ´e Turing-reconhec´ıvel, mas n˜ao ambas.Resposta: (a). L ´e Turing-reconhec´ıvel, pois ´e decid´ıvel. ¯L tamb´em deve ser decid´ıvel,pois podemos construir uma m´aquina de Turing que aceite as cadeias que n˜ao est˜ao emL e rejeite as que sim est˜ao. Se ¯L ´e decid´ıvel tamb´em ´e reconhec´ıvel.Parte 2 (5 pontos)1. (2 pontos) Considere a seguinte m´aquina de Turing M sobre o alfabeto de entrada {0, 1}. Todasas transi¸c˜oes n˜ao mostradas no diagrama conduzem ao estado de rejei¸c˜ao.q0q1q2qaceita1 → 0,D0 → 1,E0 → 1,D→ ,D
  4. 4. (a) Escreva a defini¸c˜ao formal de M como uma 7-upla.Resposta: M = (Q, Σ, Γ, δ, qo, qaceita, qrejeita), onde Q = {q0, q1, q2, qaceita, qrejeita},Σ = {0, 1} , Γ = {0, 1, } e δ ´e a fun¸c˜ao definida porδ(q0, 1) = (q1, 0, D)δ(q1, 0) = (q2, 1, E)δ(q1, ) = (qaceita, , D)δ(q2, 0) = (q0, 1, D)δ(q, a) = (qrejeita, , D) para qualquer outro caso(b) Descreva a opera¸c˜ao de M sobre a entrada 1000, como uma sequˆencia de configura¸c˜oes. Paracada configura¸c˜ao, indique o conte´udo da fita, a posi¸c˜ao da cabe¸ca leitora, e o estado de M.Por exemplo, a configura¸c˜ao inicial ´eq0↓1 0 0 0 . . .Tamb´em pode utilizar a nota¸c˜ao do livro-texto: q01000Resposta:q01000 11q0100q1000 110q10q20100 11q2011q0100 111q0110q100 1110q11q2010 1110 qaceita(c) Existe alguma cadeia para qual a M n˜ao para?Resposta: N˜ao, M aceita ou rejeita todas as cadeias de entrada.(d) Qual a linguagem reconhecida por M?Resposta: 10*.2. (1 ponto) Toda linguagem decid´ıvel por uma m´aquina de Turing com k > 1 fitas pode ser decididatamb´em por uma m´aquina de Turing com k − 1 fitas? Justifique brevemente sua resposta.Resposta: Sim. Toda linguagem decidida por uma m´aquina de Turing com k > 1 fitastamb´em ´e decidida por uma m´aquina de Turing com uma ´unica fita. Uma m´aquina deTuring com uma fita pode ser considerada como uma m´aquina de k − 1 fitas, que apenasutiliza a primeira e ignora as restantes.3. (2 pontos) Suponha que A e B s˜ao linguagens Turing-reconhec´ıveis e que A∪B e A∩B s˜ao ambasdecid´ıveis. Prove que A ´e decid´ıvel.
  5. 5. Resposta: Sejam MA e MB as m´aquinas de Turing que reconhecem as linguagens A eB, respectivamente, e MA∪B e MA∩B as que decidem A ∪ B e A ∩ B, respectivamente.Construimos uma m´aquina de Turing M que decide A da seguinte forma:Para uma cadeia de entrada w, M roda MA∪B.Se MA∪B rejeita, w /∈ A, portanto, M rejeita (e para).Se MA∪B aceita, M roda MA∩B.Se MA∩B aceita, ent˜ao w ∈ A e M aceita (e para).Se MA∩B rejeita, ent˜ao w ∈ A ou w ∈ B (mas n˜ao pertence a ambos).Agora, M roda MA e MB em paralelo, alternando entre ambas um passo por vez.Uma das duas m´aquinas, MA ou MB, deve aceitar w.Se MA aceita, M aceita (e para).Se MB aceita, M rejeita (e para).

×