Plano de aula Nova Escola períodos simples e composto parte 1.pptx
2º/2012 - Prova 01 de Autômatos e Computabilidade
1. Autˆomatos e Computabilidade: Prova 1
1. Considere o seguinte autˆomato finito n˜ao determin´ıstico (AFN) sobre o alfabeto Σ = {a,b}.
q0 q1 q2
a,b
a b
a
a
b
(a) (1 ponto) Transforme o AFN em um autˆomato finito determin´ıstico (AFD) equivalente.
Utilize o m´etodo visto em aula, e nomeie cada estado do AFD apropriadamente para
indicar a quais estados do AFN corresponde. Aten¸c˜ao: N˜ao ´e necess´ario mostrar os
estados inalcan¸c´aveis desde o estado inicial.
Resposta:
Q0
Q01 Q012
Q1 Q2
a
b
a
b
a
b
a
b
a
b
(Nota¸c˜ao: Qij = {qi, qj})
(b) (1 ponto) Transforme o AFN em um autˆomato finito n˜ao determin´ıstico generalizado
(AFNG) equivalente.
Resposta:
qi q0 q1 q2 qf
a ∪ bε
a b
a
a
b
ε
(c) (1 ponto) A partir do AFNG do item (b), obtenha uma express˜ao regular para a lin-
guagem reconhecida pelo autˆomato. Utilize o m´etodo visto em aula (mostre todos os
passos).
Resposta: eliminando os estados intermedi´arios q2, q1 e q0, nessa ordem, obtemos
qi q0 q1 qf
a ∪ bε
a b ∪ aa
ab
ε
2. qi q0 qf
(a ∪ b)(b ∪ aa)∗
ε
a ∪ (a ∪ b)(b ∪ aa)∗
ab
qi qf
[a ∪ (a ∪ b)(b ∪ aa)∗
ab]∗
(a ∪ b)(b ∪ aa)∗
Portanto, uma express˜ao regular que gera a linguagem reconhecida pelo autˆomato ´e
[a ∪ (a ∪ b)(b ∪ aa)∗
ab]∗
(a ∪ b)(b ∪ aa)∗
(d) (1 ponto) Construa um gram´atica livre-do-contexto GLC que gere a mesma linguagem
reconhecida pelo autˆomato. Utilize o m´etodo visto em aula.
Resposta: a partir do AFD obtido no item (a), obtemos a gram´atica
Q0 → aQ01 | bQ1
Q1 → aQ2 | bQ1 | ε
Q2 → aQ1 | bQ0
Q01 → aQ012 | bQ1 | ε
Q012 → aQ012 | bQ01 | ε
2. (1 ponto) Desenhe um autˆomato finito que reconhe¸ca o complemento da linguagem reco-
nhecida pelo seguinte AFN. Explique seu racioc´ınio. Considere o alfabeto Σ = {0,1}.
0 0,1
Resposta: Primeiro, transformamos o AFN em um AFD equivalente. Podemos fazer
isso facilmente adicionando um estado e colocando as transi¸c˜oes que faltam, da seguinte
forma: 0 0,1
1
0,1
0,1
Queremos um autˆomato que aceite as palavras que n˜ao s˜ao aceitas pelo AFD acima, e
que sim aceite aquelas que o AFD n˜ao aceita. Para isso, simplesmente permutamos os
estados de aceita¸c˜ao pelos de nao-aceita¸c˜ao, e obtemos
3. 0 0,1
1
0,1
0,1
3. (1 ponto) Seja Σ um alfabeto com a ∈ Σ, e L uma linguagem regular sobre Σ. Prove que a
linguagem L′
= {w| w = w1w2, onde w1,w2 ∈ L e w tem pelo menos dois a’s} ´e regular.
Resposta: A linguagem L′
´e a interse¸c˜ao de duas linguagens, L1 = {w1w2| w1,w2 ∈ L}
e L2 = {w| w tem pelo menos dois a’s}. A linguagem L1 ´e a concatena¸c˜ao da linguagem
regular L com L e, portanto, ´e regular, pois a classe das linguagens regulares ´e fechada
sobre a concatena¸c˜ao. A linguagem L2 tamb´em ´e regular, pois pode ser descrita pela
express˜ao regular Σ∗
aΣ∗
aΣ∗
. Sabemos que a classe das linguagens regulares tamb´em
´e fechada sobre a interse¸c˜ao (vimos em aula como construir um AFD que reconhe¸ca a
interse¸c˜ao de duas linguagens regulares) e, portanto, L′
= L1 ∩ L2 ´e regular.
4. (2 pontos) Prove que as seguintes linguagens n˜ao s˜ao regulares.
(a) L2 = {ai
bj
ck
| i, j, k ≥ 0 e i2
+ j2
= k2
}.
Resposta: Suponha que L2 seja regular, e que p seja o comprimento de bombea-
mento. Considere w = a3p
b4p
c5p
. Note que (5p)2
= (3p)2
+ (4p)2
, portanto w ∈ L2,
e |w| ≥ p. Fazemos w = xyz, onde |xy| ≤ p e |y| > 0. Ent˜ao, xy = am
, com m ≤ p,
e y = an
, com 0 < n ≤ m. Segundo o lema do bombeamento, xz ∈ L2. No entanto,
xz = a3p−n
b4p
c5p
, e (5p)2
= (3p − n)2
+ (4p)2
. Ent˜ao, xz /∈ L2. A contradi¸c˜ao
implica que L2 n˜ao ´e regular.
(b) L3 = {xw| x,w ∈ {0,1}∗
e |x| = |w|}. Quest˜ao anulada
5. Verdadeiro ou falso? Justifique (prove) suas repostas
(a) (1 ponto) A classe das linguagens regulares ´e fechada sobre a opera¸c˜ao Impar(L) =
{w| w ∈ L e |w| ´e impar}.
Resposta: Verdadeiro. A linguagem L′
= {w| |w| ´e impar} ´e regular, pois pode
ser descrita pela express˜ao regular Σ(ΣΣ)∗
, onde Σ ´e o alfabeto. A linguagem
Impar(L) ´e a interse¸c˜ao das linguagens L e L′
. Sabemos que a classe das linguagens
regulares ´e fechada sobre a interse¸c˜ao, portanto, L ´e regular.
(b) (1 ponto) Seja a linguagem L gerada pela express˜ao a∗
b∗
. Qualquer AFD que reconhe¸ca
L deve ter pelo menos dois estados de aceita¸c˜ao.
4. Resposta: Verdadeiro. Seja M = (Q, Σ, δ, q0, F) um AFD qualquer que reconhe¸ce
L. A cadeia vazia ε ∈ L, portanto, o estado inicial q0 dedeve ser um estado de
aceita¸c˜ao. Considere agora a cadeia ab. O AFD deve aceitar essa cadeia, portanto,
existem estados qa e qb tais que δ(q0, a) = qa, δ(qa, b) = qb e qb ´e um estado de
aceita¸c˜ao. A quest˜ao ´e: o estado qb pode ser o mesmo estado q0, ou necessariamente
deve ser um estado diferente? Suponha que qb = q0, e considere a cadeia abab. Ao
ler essa cadeia, o autˆomato passa pela sequˆencia de estados q0qaq0qaq0 e a aceita. No
entanto, abab /∈ L, o que produz uma contradi¸c˜ao. Ent˜ao, os estados de aceita¸c˜ao
q0 e qb devem ser diferentes.