Escolar Documentos
Profissional Documentos
Cultura Documentos
Exercicios Resolvidos de Teoria Dos Automatos e Linguagens Formais
Exercicios Resolvidos de Teoria Dos Automatos e Linguagens Formais
Resoluo do 2a NTI
Jr
Fortaleza - CE
17 de janeiro de 2010
Questes e Respostas
Questo 1
Seja G a gramtica:
(I)
(II)
(III)
S ASB |
A aAb |
B bBa | ba
por (I)
por (II)
por (II)
por (II)
por (I)
por (III)
S ASB
aAbSB
aaAbbSB
aabbSB
aabbB
aabbba
por (I)
por (III)
por (III)
por (I)
por (III)
por (I)
por (II)
por (II)
por (II)
por (II)
por (II)
S ASB
ASbBa
ASbbaa
AASBbbaa
AASbabbaa
AAbabbaa
AaAbbabbaa
AaaAbbbabbaa
Aaabbbabbaa
aAbaabbbabbaa
abaabbbabbaa
4
Resposta:
rvore de derivao
S
ASB
aAbba
aaAbbba
aabbba
S
ASB
aAbASBbBa
abaAbbabbaa
abaaAbbbabbaa
abaabbbabbaa
Questo 2
Dada gramtica G seguinte, use a notao de conjunto para denir a linguagem gerada pela
mesma.
S aSbb | A
A cA | c
Resposta:
Questo 3
Construa uma gramtica G sobre = {a, b, c} cuja linguagem denida como L(G) =
{am bn ci | m > n + i}.
Resposta:
G : S aS | aC
B aBb |
C B | aCc |
Questo 4
Seja G a gramtica:
(I)
(II)
(III)
S aSaa | B
B bbBdd | C
C bd
Seja o conjunto de palavras X = {am b2n+1 d2n+1 a2m | m, n > 0} sobre o alfabeto =
{a, b, d}. Para provar que L(G) = X , inicialmente provaremos que X L(G) e, depois,
L(G) X :
P1) X L(G):
P2) L(G) X :
Essa prova feita ao se mostrar que toda palavra w derivvel de G pertence a X . Para
isso, caracterizaremos uma palavra u X por meio de algumas relaes, e, por conseguinte,
mostraremos que toda sentena obtida de G tambm satisfaz essas relaes.
Seja nu (c) o nmero de vezes que o smbolo c aparece numa palavra u. Podemos caracterizar
as palavras u X por meio de algumas relaes. So elas:
1. Quanto ao nmero de smbolos da palavra u:
nu (a) = 3m, com m 0.
nu (b) = nu (d) = 2n + 1, com n 0, ou seja, o nmero de b's e d's mpar.
2. Quanto quantidade mnima de cada smbolo na palavra u. Duas situaes:
Quando a ocorre: nu (a) 3 e nu (b) = nu (d) 1.
Quando a no ocorre: nu (b) = nu (d) 1.
6
3. Quanto precedncia, as ocorrncias de a's precedem b's, que precedem d's e que, por sua
vez, precedem uma quantidade de a's correspondente ao dobro da quantidade do mesmo
smbolo no incio da palavra.
E, tambm podemos caracterizar, quanto quantidade de cada smbolo e quanto precedncia dos smbolos, uma forma sentencial qualquer, aps aplicar cada uma das regras de
derivao (tabela abaixo). Para tanto, considere nu (c) o nmero de vezes que o smbolo c
aparece explicitamente na forma sentencial u antes da derivao, nu (c, C) o nmero de vezes
que o smbolo c aparece por meio da varivel C na forma sentencial u antes da derivao, e,
n0u (c) o nmero de vezes que o smbolo c aparece na forma sentencial u depois de aplicada a
regra de derivao.
Regra
Precedncia
S aSaa
n0u (a)
nu (a) + nu (a, S) + 3
n0u (b)
nu (b) + nu (b, S)
n0u (d)
nu (d) + nu (d, S)
SB
nu (a) + nu (a, B)
nu (b) + nu (b, B)
nu (d) + nu (d, B)
B bbBdd
nu (a) + nu (a, B)
nu (b) + nu (b, B) + 2
nu (d) + nu (d, B) + 2
BC
nu (a) + nu (a, C)
nu (b) + nu (b, C)
nu (d) + nu (d, C)
C bd
nu (a)
nu (b) + 1
nu (d) + 1
A cada um a colocado
no incio S , colocado
dois a's no nal
Mesma precedncia da
varivel B
Os b's precedem o B ,
que precede os d's
Mesma precedncia da
varivel C
b precede d
Diante disso, provaremos que as relaes 1, 2 e 3 se mantm para as sentenas obtidas por
derivaes a partir de S. Essa prova se dar por induo sobre o nmero de derivaes partindo
de S, sendo na anlise de uma forma sentencial especca sempre ser considerada a sentena
mais prxima a ela obtida pela derivao das variveis da forma sentencial, um nmero mnimo
de vezes, para obter apenas smbolos terminais. Assim, temos:
C
B
n0u (a)
n0u (b)
n0u (d)
bd
C
bd
B
C
bd
Regra
S aSaa
SB
n0u (a)
0+0+3=3
0+0=0
n0u (b)
0+1=1
0+1=1
n0u (d)
0+1=1
0+1=1
Assim:
Relaes
1
2
3
S aSaa
u = abdaa
Regras
nu (a) = 3 = 3 1
nu (b) = nu (d) = 1 = 2 0 + 1
nu (a) = 3 3
nu (b) = nu (d) = 1 1
a precede b que precede d que precede dois a's
SB
u = bd
nu (a) = 0 = 3 0
nu (b) = nu (d) = 1 = 2 0 + 1
nu (b) = nu (d) = 1 1
b precede d
7
Suponha que as relaes 1, 2 e 3 so vlidas na anlise para todas as formas
sentenciais u obtidas da derivao em n > 0 passos. Assim, seja iu , ju e ku o nmero de vezes
que as variveis S , B e C , respectivamente, aparecem em u, ento n0u (a), n0u (b) e n0u (d) so
dados por:
Hiptese:
n0u (a) = nu (a) + iu .nu (a, S) + ju .nu (a, B) + ku .nu (a, C) = nu (a) = 3x, com x 0
n0u (b) = nu (b) + iu .nu (b, S) + ju .nu (b, B) + ku .nu (b, C) = nu (b) + iu + ju + ku = 2y + 1, com y 0
n0u (d) = nu (d) + iu .nu (d, S) + ju .nu (d, B) + ku .nu (d, C) = nu (d) + iu + ju + ku = 2y + 1, com y 0
Induo:
S w
n
Suw
Regra
S aSaa
SB
B bbBdd
BC
C bd
nw (a)
nu (a) + 3
nu (a)
nu (a)
nu (a)
nu (a)
nw (b)
nu (b)
nu (b)
nu (b) + 2
nu (b)
nu (b) + 1
nw (d)
nu (d)
nu (d)
nu (d) + 2
nu (d)
nu (d) + 1
iw
iu
iu 1
iu
iu
iu
jw
ju
ju + 1
ju
ju 1
ju
kw
ku
ku
ku
ku + 1
ku 1
n0w (a)
0
nu (a) +
n0u (a)
n0u (a)
n0u (a)
n0u (a)
n0w (b)
n0u (b)
n0u (b)
0
nu (b) + 2
n0u (b)
n0u (b)
n0w (d)
n0u (d)
n0u (d)
0
nu (d) + 2
n0u (d)
n0u (d)
Com isso, percebe-se que todos os valores n0w (a), n0w (b) e n0w (d) encontrados satisfazem a
relao 1.
As relaes 2 e 3 podem ser tambm facilmente vericadas. Logo, L(G) X .
Assim, por P1) e P2), temos que L(G) = X .
Questo 5
Seja M o autmato nito determinstico abaixo:
M
>
<
a) D o diagrama do estado de M.
Resposta
q0
q1
q2
a
q0
q2
q2
b
q1
q1
q0
[q0 , abaa] `
[q0 , baa]
[q1 , aa]
[q2 , a]
[q2 , ]
ER = a bb aa (ba bb aa )
Questo 6
Seja M um DAF cujo diagrama de estados dado por:
9
a) Construa a tabela de transio para M.
Resposta:
M
>
<
q0
q1
qa
a
q1
q1
q0
b
q0
qa
q1
[q0 , baab] `
[q0 , abaaab] `
[q0 , aab]
[q1 , ab]
[q1 , b]
[qa , ]
[q1 , baaab]
[qa , aaab]
[q0 , aab]
[q1 , ab]
[q1 , b]
[qa , ]
ER = b aa b((ba b) + (ab aa b) )
Questo 7
D um diagrama de estados para o DAF que aceita as seguintes linguagens.
a) (ab) ba
Resposta:
b) (ab a)
10
Resposta: