Escolar Documentos
Profissional Documentos
Cultura Documentos
Definição
Uma máquina de Turing com múltiplas fitas opera, como o nome diz, com mais de
uma fita, de forma que cada uma delas tenha uma cabeça de escrita/leitura
independente.
A definição formal
Uma máquina de Turing multi-fita pode ser definida como uma 6-upla:
M = {Q, X, β, δ, q0, F}
Onde:
Exemplo – Palíndromo
Usando uma fita:
Ideia: Ler o símbolo mais a esquerda e em seguida apagá-lo, deslocar a cabeça para
o canto direito e verificar se o símbolo atual é o mesmo que o anteriormente
deletado. Caso sejam iguais, deslocar a cabeça para a esquerda e repetir o processo,
do contrário, a máquina imediatamente entra em estado de rejeição. O estado de
aceitação é alcançado quando a máquina processa uma cadeia de caracteres vazia.
A função de transição pode ser definida como:
Vamos executar essa máquina para a entrada “abba” com a ajuda do programa de
computador JFLAP (construímos a máquina de Turing no software, permitindo que
ela seja executada):
Trata-se de um processo longo para demonstrar por completo aqui neste trabalho, mas
seguindo rigorosamente o que a função de transição nos diz, eventualmente
chegaremos ao estado de aceitação:
Ideia: Copiar a cadeia de entrada para a segunda fita, posicionar a cabeça da primeira
fita no canto esquerdo e a cabeça da segunda fita no canto direito. Comparar os
símbolos lidos por ambas cabeças e verificar se são iguais. Logo depois a primeira fita
move-se para a direita e segunda fita para a esquerda e o processo se repete.
Podemos definir a função de transição como:
Como fizemos com a máquina de uma fita, vamos executar a multi-fita no JFLAP e ver
que resultado obtemos para a string “abba”:
Sucesso, a máquina entrou em estado de aceitação, concordando com o resultado da
máquina anterior, mesmo que tenham sido feitas com técnicas diferentes.