16 de setembro de 2010
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Sumario Sumario
2 Aut
omatos de Pilha Determinsticos 2 Aut
omatos de Pilha Determinsticos
3 Aut
omatos de Pilha Nao Determinsticos
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal
Aut
omatos de Pilha Determinsticos
Aut
omatos de Pilha N
ao Determinsticos
Gram
aticas Livres do Contexto
2 Aut
omatos de Pilha Determinsticos Linguagem que contem express
oes aritmeticas, como:
3 Aut
omatos de Pilha Nao Determinsticos (n t1 +t2 )+t3 ) +tn+1 )
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Uma Introducao Informal
Aut
omatos de Pilha Determinsticos Aut
omatos de Pilha Determinsticos
Aut
omatos de Pilha N
ao Determinsticos Aut
omatos de Pilha N
ao Determinsticos
Gram
aticas Livres do Contexto Gram
aticas Livres do Contexto
Um exemplo de AP Computacao de um AP
Conjunto EA das express
oes aritmeticas: Pilha: uma palavra de . Pilha vazia: .
a) t EA; Configuracao instantanea: [e, y , p], sendo p a pilha.
b) se x, y EA, entao (x) EA, x+y EA e xy EA.
Computacao do AP quando a palavra de entrada e (t-(t+t)):
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Transic
oes compatveis Aut
omato de pilha determinstico
Seja : E ( {}) ( {}) E . Um aut omato de pilha determinstico (APD) e uma sextupla
(E , , , , i, F ), em que
oes (e, a, b) e (e, a , b ) sao compatveis
As transic
E e um conjunto finito de um ou mais estados;
se, e somente se e o alfabeto de entrada;
(a = a ou a = ou a = ) e (b = b ou b = ou b = ). e o alfabeto de pilha;
e uma funcao parcial de E ( {}) ( {}) para
Ou ainda: (e, a, b) e (e, a , b ) sao incompatveis se, e somente E , sem transicoes compatveis;
se:
i E e o estado inicial;
(a 6= a e a 6= e a 6= ) ou (b 6= b e b 6= e b 6= ). F E e o conjunto de estados finais.
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
{an bn | n N} e reconhecida por ({a, b}, {a, b}, {X}, , a, {a, b}),
Seja um APD M = (E , , , , i, F ). Entao: em que e dada por:
e, e E , a {}, b {}, x : 1. (a, a, ) = [a, X];
y , z [e, ay , bz] [e , y , xz] (e, a, b) = [e , x]. 2. (a, b, X) = [b, ];
3. (b, b, X) = [b, ].
e o fecho reflexivo e transitivo de . Diagrama de estados:
Linguagem reconhecida por um APD
a, /X b, X/
Seja M = (E , , , , i, F ). A linguagem reconhecida por M e:
? b, X/
?
- a - b
L(M) = {w | [i, w , ] [e, , ] para algum e F }.
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Uma Introducao Informal
Aut
omatos de Pilha Determinsticos Aut
omatos de Pilha Determinsticos
Aut
omatos de Pilha N
ao Determinsticos Aut
omatos de Pilha N
ao Determinsticos
Gram
aticas Livres do Contexto Gram
aticas Livres do Contexto
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Reconhecimento por pilha vazia Seja L uma linguagem. As seguinte afirmativas sao equivalentes:
Seja um APN M = (E , , , , I ). A linguagem reconhecida por M a) L pode ser reconhecida por pilha vazia e estado final.
por pilha vazia e: b) L pode ser reconhecida por estado final.
c) L {} pode ser reconhecida por pilha vazia.
LV (M) = {w | [i, w , ] [e, , ] para algum i I e e E }.
(a) (b):
M
Exemplo: APN para {0m 1n | m n}, rec. por pilha vazia:
1, / i1 f1
0, /X , /F
* H , F/
H
1, X/
HH
1, / - i .. .. j g
? 1, X/ ? *
H . .
- a - b HH
, /F H
j
, F/
im fn
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Arvore de derivacao E E +T | T
Seja G = (V , , R, P). Def. recursiva de arvore de derivacao T T F | F
(AD): F (E ) | t
a) uma arvore com apenas o vertice de r
otulo P e uma AD; A derivacao
b) se X V e r otulo de uma folha f de uma AD, entao:
E T (regra E T )
i. se X R, entao a arvore obtida acrescentando-se
mais um vertice v com r otulo e uma aresta {f , v } e leva `a AD:
uma AD;
ii. se X x1 x2 . . . xn R, onde x1 , x2 , . . . , xn V , E
entao a arvore obtida acrescentando-se mais n vertices
v1 , v2 , . . . , vn com r
otulos x1 , x2 , . . . , xn , nessa ordem, e
n arestas {f , v1 }, {f , v2 }, . . . , {f , vn }, e uma AD. T
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
E T (regra E T )
T
T F (regra T T F )
@ T (E ) (regra F (E )).
@
@
@
T
F
*
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Observacoes:
T
T
N
umero de passos da derivacao: n
umero de vertices internos
@ @ de X .
@ @
@ @ @@ A estrutura da AD e normalmente utilizada para associar
T
F
* T
F
* significado.
@ Mais de uma AD para w mais de um significado para w .
@
@ @
F
( E
)
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Gramatica ambgua Duas ADs para t+t*t
E
E
Uma GLC e denominada ambgua quando existe mais de uma AD @ @
para alguma sentenca que ela gera. @ @
@ @ @@
E
+
E E *
E
Exemplo: @ @
@ @
GLC ambgua para express
oes aritmeticas: @ @ @ @
t
E * E
E + E
t
E E + E | E E | (E ) | t
t
t t
t
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
= Existe uma u
nica DME e uma u
nica DMD correspondentes a
uma AD e vice-versa.
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Variavel u
til
Linguagem inerentemente ambgua: LLC para a qual existem Seja uma GLC G = (V , , R, P). Uma variavel X V e dita ser
apenas gramaticas ambguas. til se, e somente se, existem u, v (V ) e w tais que:
u
P uXv w .
Exemplo:
{am bn ck | m = n ou n = k}.
Exemplo:
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Algoritmo que determina {X V | X w para algum w }: Algoritmo que determina
{X V | P uXv para algum u, v (V ) }:
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
A ABC | AEF | BD
B B0 | 0 Seja uma GLC G = (V , , R, P). Seja X w R, X 6= P.
C 0C | EB Seja a GLC G = (V , , R , P) em que R e obtido assim:
D 1D | 1 1 para cada regra de R em que X nao ocorre do lado direito,
E BE exceto X w , coloque-a em R ;
F 1F 1 | 1 2 para cada regra de R da forma Y x1 Xx2 X . . . Xxn+1 , com
pelo menos uma ocorrencia de X do lado direito, com n 1 e
V = {B, D, F , A} A BD
xi [(V {X }) ] , coloque em R todas as regras da
B B0 | 0
forma Y x1 1 x2 2 . . . n xn+1 , sendo que cada j pode ser
D 1D | 1
X ou w , com excecao da regra X w .
F 1F 1 | 1
V = {A, B, D} A BD G e equivalente a G .
B B0 | 0
D 1D | 1
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
a) Ao se eliminar regras podem aparecer regras unitarias. A seguinte sequencia de eliminacoes para G = (V , , R, P):
Exemplo: GLC com as regras A BC e B . 1 adicionar a regra P P, se P for recursivo;
b) Ao se eliminar regras unitarias podem aparecer regras . 2 eliminar regras ;
Exemplo: GLC com P , sendo P e o smbolo de partida, e
a regra A P.
3 eliminar regras unitarias;
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
X w 1 Z | w2 Z | . . . | w k Z | w1 | w2 | . . . | wk
Z y1 Z | y 2 Z | . . . | y n Z | y 1 | y2 | . . . | yn
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introducao Informal Definic
ao e exemplos Uma Introducao Informal Definic
ao e exemplos
Aut
omatos de Pilha Determinsticos Derivac
oes e ambiguidade Aut
omatos de Pilha Determinsticos Derivaco
es e ambiguidade
Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais Aut
omatos de Pilha N
ao Determinsticos Manipulacao de gramaticas e formas normais
Gram
aticas Livres do Contexto GLCs e aut omatos de pilha Gram
aticas Livres do Contexto GLCs e aut omatos de pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Uma Introduc ao Informal Uma Introduc ao Informal
Automatos de Pilha Determinsticos Automatos de Pilha Determinsticos
Aut
omatos de Pilha N ao Determinsticos Aut
omatos de Pilha N ao Determinsticos
Gramaticas Livres do Contexto Gramaticas Livres do Contexto
Linguagens Livres do Contexto: Propriedades Linguagens Livres do Contexto: Propriedades
A classe das LLCs nao e fechada sob: Seja L uma LLC e R uma linguagem regular. Entao L R e uma
Intersecao. LLC.
L1 = {an bn ck | n, k 0} e L2 = {an bk ck | n, k 0} sao LLCs.
L1 L2 = {an bn cn | n 0} nao e LLC. Seja L = {w {a, b, c} | w tem o mesmo n
umero de as, bs e cs}.
Complementacao. Suponha que L seja uma LLC. Entao, como R = L(a b c ) e uma
linguagem regular, L R e LLC. Mas, L R = {an bn cn | n N},
L1 L2 = L1 L2 .
que nao e LLC. Logo, L nao e LLC.
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha
Problemas decidveis:
Determinar se w L(G ), para qualquer GLC G e palavra w .
Determinar se L(G ) e vazia, para qualquer GLC G .
Problemas indecidveis:
Determinar se G e ambgua, para qualquer GLC G .
Determinar se L(G ) = , para qualquer GLC G .
Verificar se L(G1 ) L(G2 ) = , para quaisquer GLCs G1 e G2 .
Determinar se L(G1 ) L(G2 ), para quaisquer GLCs G1 e G2 .
Determinar se L(G1 ) = L(G2 ), para quaisquer GLCs G1 e G2 .
Newton Jos
e Vieira Captulo 3: Aut
omatos de Pilha