Você está na página 1de 1

Máquina de Post

O Modelo proposto por Post se trata de uma máquina abstrata, não existindo na realidade e
tem como uma de suas principais características sua composição dividida em duas partes, um
programa e uma estrutura de dados do tipo fila, no caso, a variável X (utilizada para entrada,
saída e memória de trabalho), sendo que não possui um tamanho nem limite fixos e, portanto,
proporcional ao tamanho da palavra armazenada no momento. Os símbolos são Σ (Alfabeto
de entrada), # (Símbolo auxiliar) e D (diagrama de fluxos). M = (Σ, D, #). Instrução de início
do programa constiste em apenas uma, partida. Duas alternativas de parada, aceita e
rejeita. O desvio determina o fluxo do programa de acordo com o símbolo a esquerda da
palavra armazenada (tipo fila). A atribuição concatena o símbolo indicado (do alfabeto de
entrada ou símbolo auxiliar) no fim da palavra X (fim da fila).

Máquina de Pilhas

O modelo possui uma memória de entrada separada das memórias de trabalho e de saída.
Essas estruturas auxiliares são do tipo pilha, e cada máquina possui zero ou mais pilhas. Uma
Máquina com Pilhas consiste, basicamente, de três partes: Variável X(Usada somente para
entrada), Variáveis Yi e o Programa. A variável X não possui tamanho nem limites fixos.
Inicialmente, o valor de X é a palavra de entrada e seu comprimento é igual ao comprimento
da palavra corrente armazenada. As variáveis Yi, em número variável, mas finito, também não
possuem tamanho nem limites fixos, e os símbolos pertencem ao alfabeto de entrada (não
existem símbolos auxiliares). É importante observar que, embora os modelos Máquina de Post
e Máquina com Pilhas possuam alguma semelhança, existe uma grande diferença na forma de
manipular seus dados.

MÁQUINA DE POST X MÁQUINA DE TURING

O Poder de expressão da Máquina de Post é o mesmo que o da Máquina de Turing ou seja,


para toda máquina de Turing existe uma máquina de Post equivalente e vice-versa. Todo
conteúda da fita de uma máquina de Turing pode ser expresso por uma máquina de Post. Se x
= d4 d5 d6 d7 # d1 d2 d3 e a próxima instrução da Máquina de Turing é (d4, β, R); então o
conteúdo de x é trocado na Máquina de Post para x= d5 d6 d7 # d1 d2 d3 β. Entretanto
existem 2 casos especiais : 1º caso :Quando x = d7 #d1 d2...d6e a próxima instrução é (d7
β,,R)#d1 d2...d6 β ( # é o símbolo mais a esquerda de x) Isto significa que o próximo símbolo a
ser lido pela cabeça da Máquina de Turing é o 1º ∆ (branco) à direita de d7.Portanto neste
caso, troca-se x por ∆ #d1..d6 β. 2º caso: Quando se atinge uma situação onde x = d1...d7# ( # é
o símbolo mais a direita de x) e a próxima instrução da Máquina de Turing é (d1, β,L) Este caso
acontece quando a cabeça de leitura da fita da Máquina de Turing lê o símbolo mais a
esquerda da fita e é pedido para se fazer movimento para a esquerda. Portanto, neste caso
deve-se irp ara uma parada Reject na Máquina de Post. A Máquina de Post obtida é sobre å U
V U {∆}e não sobre ∑ . O valor corrente de x durante a computação da Máquina de post, por
exemplo, x= d1 d2 d3 d4 # d5 d6 é expressa na máquina de turing como: Δ Δ... d1 d2 d3 d4 #
d5 d6 Δ Δ... Isso é necessário para que a Máquina possa atingir a primeira letra da string de
entrada através de movimentos à esquerda sem encontrar um halt reject.

Você também pode gostar