Você está na página 1de 2

Autômatos e Computabilidade – Teste 3

Sejam L uma linguagem livre-do-contexto. Prove que a linguagem L∗ também é livre-do-contexto.


Indique se cada uma das seguintes afirmações é verdadeira ou falsa. Se é verdadeira, explique por
quê. Se é falsa, forneça um contraexemplo.

1. Toda linguagem regular é livre-do-contexto.


2. Toda linguagem livre-do-contexto é regular.

1. Considere a gramática livre-do-contexto definida por

S → AB
A → aA | ε
B → ab | bB | ε

Cada derivação de uma cadeia deve começar pela substituição S ⇒ AB. Claramente, cada
cadeia derivada de A possui uma única derivação possı́vel a partir de A. Similarmente,
cada cadeia derivada de B possui uma única derivação possı́vel a partir de B. Portanto, a
gramática não é ambı́gua. Esta conclusão é verdadeira ou falsa? Justifique sua resposta.

Resposta: A conclusão é falsa. Por exemplo, a cadeia ab possui duas derivações mais à
esquerda diferentes : (1) S ⇒ AB ⇒ aAB ⇒ aB ⇒ abB ⇒ ab e (2) S ⇒ AB ⇒ B ⇒
ab.

2. A gramática livre-do-contexto G, definida por

S → SS | aSb | ε,

gera a linguagem L(G). Construa uma gramática livre-do-contexto G1 na forma normal de


Chomsky que gere a linguagem L(G) − {ε}.

Resposta: Convertemos G à forma normal de Chomsky seguindo o método visto em


aula (livro de Sipser, página 111), e logo eliminamos uma regra que permite derivar a
cadeia vazia apartir da variável inicial. O resultado é

S1 → SS | U2 U1 | U2 U3
S → SS | U2 U1 | U2 U3
U1 → SU3
U2 → a
U3 → b

3. Seja L a linguagem gerada pela gramática livre-do-contexto G = (V, Σ, R, S). Construa


uma gramática livre-do-contexto G1 que gere a linguagem L∗ .

Resposta: Criamos uma nova variável S1 ∈ / V , que será a variável inicial de G1 , e


adicionamos a regra S1 → S1 S | ε. Formalmente, G1 = (V1 , Σ, R1 , S1 ), com V1 = V ∪{S1 }
e R1 = R ∪ {S1 → S1 S, S1 → ε}.
4. Construa uma gramática livre-do-contexto que gere a linguagem reconhecida pelo AFD

a b

b
q1 a q2 q3
a
b

q4 a,b

Resposta: Definimos quatro variáveis S, A, B e C, que correspondem aos estados


q1 , q2 , q3 e q4 do AFD, respectivamente. Seguindo o método visto em aula, obtemos a
gramática

S → aA | bC | ε
A → aA | bB
B → aA | bB | ε
C → aC | bC

5. Construa uma gramática livre-do-contexto que gere a linguagem L = {am bn | 0 ≤ n < 2m}
sobre o alfabeto Σ = {a, b}. Atenção: note que ε ∈
/ L.

Resposta: Por exemplo, a seguinte gramática gera L

S → aSbb | aS |ab | a

Você também pode gostar