UNIVEIDDE ETDUL DE MINGÁ DEPTMENTO DE INFOMÁTI utômato com Pilha Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da osta utômato com Pilha Prof. Yandre Maldonado - 2 utômato com Pilha - P ão formalismos (máquinas) capazes de reconhecer as Linguagens Livres de ontexto; Maior poder que os utômatos Finitos, pois possuem um espaço de armazenamento extra que é utilizado durante o processamento de uma cadeia; Possui uma pilha que caracteriza uma memória auxiliar onde pode-se inserir e remover informações; Mesmo poder de reconhecimento das GL s; utômato com Pilha Prof. Yandre Maldonado - 3 Exemplo de LL: {a n b n n 0} Um F não é capaz de reconhecer este tipo de linguagem devido à sua incapacidade de recordar (memorizar) informação sobre a cadeia analisada; utômatos com Pilha (P) possuem uma pilha para armazenar informação, adicionando poder aos F s. 1
utômato com Pilha Prof. Yandre Maldonado - 4 Definição: P é uma sextupla <Σ,Γ,, 0,δ,B>, onde: Σ é o alfabeto de entrada do P; Γ é o alfabeto da pilha; é o conjunto finito não vazio de estados do P; 0 é o estado inicial, 0 ; δ é a função de transição de estados, δ: (Σ {λ}) Γ conjunto de subconjuntos finitos de Γ * B é o símbolo da base da pilha, B Γ. utômato com Pilha Pilha: Leitura/Escrita Fita de Entrada: Leitura Prof. Yandre Maldonado - 5 bstração de um P como reconhecedor de cadeias (DELMO, 1998). utômato com Pilha Prof. Yandre Maldonado - 6 o contrário da fita de entrada, a pilha pode ser lida e alterada durante um processamento; O autômato verifica o conteúdo do topo da pilha, retira-o e substitui por uma cadeia α Γ *. e α =, e Γ, então o símbolo do topo é substituído por e a cabeça de leitura escrita continua posicionada no mesmo lugar; e α = 1 2... n, n>1 então o símbolo do topo da pilha é retirado, sendo n colocado em seu lugar, n-1 na posição seguinte, e assim por diante. cabeça é deslocada para a posição ocupada por 1 que é então o novo topo da pilha; e α = λ então o símbolo do topo da pilha é retirado, fazendo a pilha decrescer. 2
utômato com Pilha Prof. Yandre Maldonado - 7 função de transição δ, é função do estado corrente, da letra corrente na fita de entrada e do símbolo no topo da pilha; lém disso, esta função determina não só o próximo estado que o P assume, mas também como o topo da pilha deve ser substituído; O P inicia sua operação num estado inicial especial denotado por 0 e com um único símbolo na pilha, denotado por B. utômato com Pilha Prof. Yandre Maldonado - 8 configuração de um P é dada por uma tripla <s, x, α> onde s é o estado corrente, x é a cadeia da fita que falta ser processada e α é o conteúdo da pilha, com o topo no início de α; O P anda ou move-se de uma configuração para outra através da aplicação de uma função de transição. utômato com Pilha Prof. Yandre Maldonado - 9 e o P está na configuração <s,ay,β> e temos que δ(s,a,)=<t,γ>, então o P move-se para a configuração <t,y, γβ> e denota-se <s,ay,β> <t,y, γβ>. e o P move-se de uma configuração <s 1,x 1,α 1 > para uma configuração <s 2,x 2,α 2 > por meio de um número finito de movimentos, denotamos <s 1,x 1,α 1 > * <s 2,x 2,α 2 > e o valor de δ para uma determinada configuração for o P pára. 3
utômato com Pilha Prof. Yandre Maldonado - 10 Note que, segundo esta definição, P s não possuem estados finais como os F s; ssim, uma cadeia x é aceita se, ao chegar ao final do processamento da mesma, a pilha estiver vazia, independentemente do estado em que o P se encontra; utômato com Pilha Prof. Yandre Maldonado - 11 Formalmente temos: Dado o P P = <Σ,Γ,, 0,δ,B> e a cadeia x sobre Σ, diz-se que x é aceita por P sse existe s tal que < 0,x,B> * <s,λ, λ >. aso contrário, x é rejeitada. Dado o P P = <Σ,Γ,, 0,δ,B>, a linguagem L(P) definida por P é {x Σ * s < 0,x,B> * <s,λ, λ >} utômato com Pilha Exemplo de P para a LL {a n b n n 0}: Prof. Yandre Maldonado - 12 δ(,a,b) = {<,>} δ(,a,) = {<,>} δ(,b,) = {<,λ>} δ(,b,) = {<, λ>} δ(,λ,b) = {<, λ>} <a,b>/ <a,>/ <b,>/ λ <b,>/ λ 4
utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 13 <a,b>/ <a,>/ <b,>/ λ B PILH utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 14 <a,b>/ <a,>/ <b,>/ λ PILH utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 15 <a,b>/ <a,>/ <b,>/ λ PILH 5
utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 16 <a,b>/ <a,>/ <b,>/ λ PILH utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 17 <a,b>/ <a,>/ <b,>/ λ PILH utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 18 <a,b>/ <a,>/ <b,>/ λ PILH 6
utômato com Pilha <b,>/ λ Prof. Yandre Maldonado - 19 <a,b>/ <a,>/ <b,>/ λ DEI EIT PILH utômato com Pilha P para {x {a,b} * x a = x b }: Prof. Yandre Maldonado - 20 Está correto? <a,>/ <b,>/b <a,>/ <b,>/λ utômato com Pilha Prof. Yandre Maldonado - 21 Um P definitivo para {x {a,b} * x a = x b }: δ(,a,) = {<,>} δ(,b,) = {<,B>} δ(,λ,) = {<,λ>} δ(,a,) = {<,>} δ(,b,) = {<,λ>} δ(,a,b) = {<,λ>} δ(,b,b) = {<,BB>} <a,>/ <a,>/ <b,>/λ 7
utômato com Pilha Prof. Yandre Maldonado - 22 <a,>/ <a,>/ <b,>/λ BE D PILH: PILH utômato com Pilha Prof. Yandre Maldonado - 23 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 24 <a,>/ <a,>/ <b,>/λ PILH 8
utômato com Pilha Prof. Yandre Maldonado - 25 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 26 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 27 <a,>/ <a,>/ <b,>/λ PILH 9
utômato com Pilha Prof. Yandre Maldonado - 28 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 29 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 30 <a,>/ <a,>/ <b,>/λ PILH 10
utômato com Pilha Prof. Yandre Maldonado - 31 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 32 <a,>/ <a,>/ <b,>/λ PILH utômato com Pilha Prof. Yandre Maldonado - 33 DEI EIT <a,>/ <a,>/ <b,>/λ PILH 11
utômato com Pilha Descreva um P para a linguagem {a n b m a n n 0 m>0}. Prof. Yandre Maldonado - 34 0 1 2 <a,b>/ <a,>/ <b,b>/b <b,>/ <λ,b>/λ <b,b>/b <b,>/ <a,>/λ <a,>/λ Bibliografia DELMO, Márcio Eduardo. Linguagens Formais e utômatos. UEM, 1998. Prof. Yandre Maldonado - 35 12