You are on page 1of 22

Máquina de Turing:

uma aná lise sobre a visã o de Frederick C. 


Hennie

ANA LUZIA GOMES DA CUNHA


FÁBIO SILVEIRA VIDAL
KELE TEIXEIRA BELLOZE
RICARDO MARÓQUIO BERNARDO
THIAGO SILVA DE SOUZA

Prof.ª: Dr.ª Cláudia Maria Garcia de Oliveira

Março/2005
Roteiro da apresentação

⇒ Introdução
⇒ Diagrama de estados
⇒ Máquinas de copiar
⇒ Máquinas de comparação
⇒ Substituição de blocos
⇒ Máquinas compostas
⇒ Considerações finais
⇒ Referencial teórico
Introdução

⇒ Definições básicas
→ Em 1936, o matemático inglês Alan M. Turing idealizou uma máquina
que seria capaz de calcular qualquer função matemática mediante
um determinado conjunto de instruções.

→ Uma máquina de Turing consiste de uma fita de comprimento infinito


acoplada a uma unidade de controle, que lê/grava na fita a partir de
uma cabeça de leitura/gravação.
→ A fita é dividida em n quadros; cada quadro pode ser preenchido com
um símbolo simples de um alfabeto finito ou pode estar em branco.
Introdução

⇒ Definições básicas:
→ Operação:
• A m áquina é alimentada por um a fita, que pode m over de passo
em passo para a direita ou para a esquerda;
• Um núm ero finito de quadros é preenchido com símbolos e o
restante fica em branco;
• A unidade de controle assum e algum estado de inicialização
predefinido;
• A m áquina então realiza um a computação, que consiste de um a
seqüência de m ovim entos básicos.
Introdução

⇒ Definições básicas:
→ Tabela de estados:
• Descreve sucintam ente as especificações de projeto de um a m áquina
de Turing;
• Os estados são listados ao lado da tabela, enquanto os sím bolos da
fita são listados cruzando o topo;
• Cada entrada na tabela corresponde a um a com binação específica de
estado atual e sím bolo lido.
0 1

q0 0Rq 1

q1 1Rq 2 1Rq 1

q2 0Lq 3

q3 0Rq 0 1Lq 3
Introdução

⇒ Definições básicas:
Ex em plo: 0 1

q0 0Rq 1

q1 1Rq 2 1Rq 1

q2 0Lq 3

q3 0Rq 0 1Lq 3

(a) ... 001110001100 ...


(b) ... 000111001100 ...
(c) ... 000111001100 ...
(d) ... 000011101100 ...
(e) ... 000001111100 ...
Diagrama de estados

⇒ É a descrição ou representação gráfica da Máquina


de Turing baseada no modelo matemático de
grafos
⇒ Grafo: formado por dois conjuntos: conjunto de
pontos (X) e conjunto de ligações (U) – G(X, U)
⇒ X= {x1 , x2 , x3 }
x1

x2 x3 U= {(x 1 , x 1 ), (x 2 , x 1 ),
(x 2 , x 3 ), (x 3 , x 1 )}
Diagrama de estados

Diagrama simplificado
0 1

0/ 0 q0 0Rq 0 0Rq 1 1/ 0
1/ 0 1/ 1 R R
R R
q0 q1 q1 1Rq 2 1Rq 1
0/ 1
0/ 1 0
0/ 0 q2 0Lq 3 Halt
1
1 L R
L R Halt q3 0Rq 0 1Lq 3 0
q3 0/ 0 q2
1/ 1
Máquinas de copiar

Dado um determinado padrão de entrada na forma:

... A 1 1 1 0 1 1 0 0 1 ... 0 1 1 1 0 B 0 0 0 0 0 1 1 ...

... A 1 1 1 0 1 1 0 0 1 ... 0 1 1 1 0 B 1 1 1 0 0 1 1 ...

Copia o bloco de símbolos ‘1’ imediatamente à direita da


marca ‘A’ para o espaço a direita da marca ‘B’
Existir espaço disponível Σ= {0, 1, A, B}
Máquinas de copiar

Esquema iterativo Diagrama de estado

0 A 1 1 1 0 1 1 0 0 1 ... 0 1 1 1 0 B 0 0 0 0 0 1 1 ...
X/ 1
0 A X 1 1 0 1 1 0 0 1 ... 0 1 1 1 0 B 1 0 0 0 0 1 1 ... 0 1/ X
L R R
0 A X X 1 0 1 1 0 0 1 ... 0 1 1 1 0 B 1 1 0 0 0 1 1 ...
A
B
0 A X X X 0 1 1 0 0 1 ... 0 1 1 1 0 B 1 1 1 0 0 1 1 ... X

0 A 1 1 1 0 1 1 0 0 1 ... 0 1 1 1 0 B 1 1 1 0 0 1 1 ... L R
0/ 1
Máquinas de comparação

Teste padrão de fita com dois Blocos marcados


Bloco A 1 1 1 1 0
Bloco B 1 1 1 1 1 0
Inicia- se com o símbolo A sob a cabeça de leitura e termina-
se da mesma forma
O estado final da máquina deve indicar se os comprimentos
dos blocos de 1 que segue A e B são iguais ou não.
A máquina pára em um estado se os comprimentos dos
blocos forem iguais e em outro estado se os comprimentos
dos blocos forem diferentes.
Máquinas de comparação

Uma série de passagens é feita pela máquina


através de sua fita, em cada passagem se marca
um símbolo no bloco A e um símbolo no bloco B
este símbolo é um X.
Se os membros dos dois blocos se esgotarem na
mesma passagem os dois blocos devem ter os
mesmo comprimento, caso um dos blocos
esgotarem antes os blocos devem ter
comprimentos diferentes.
Máquinas de comparação

Exemplo:
a) fita inicial A1 1 1 1 0 B1 1 1 1 1 0
b) após a primeira passagem AX1 1 1 0 BX 1 1 1 1 0
c) após a segunda passagem AXX 1 1 0 BX X 1 1 1 0
d) após a terceira passagem AXX X 1 0 BX X X1 1 0
e) após a quarta passagem AXX X X 0 BX X XX1 0
Máquinas de comparação
1/ X

R R

A B

L 1/ X R
Substituição de blocos

⇒ Dada uma seqüência de blocos de 1 ’s, deve- se


substituir um deles por outro

B111110…0111C1110101110111110….

Após a substituição de blocos

B111110…0111C111110101110111110….
Substituição de blocos

⇒ O processo é dividido em duas etapas:


⇒ Colapso: O bloco C é removido

B111110…0111C1110101110111110….
Após a etapa de colapso
B111110…0111C0101110111110….

⇒ Inserção: O bloco B é copiado a direita de C

B111110…0111C0101110111110….
Após a substituição de blocos
B111110…0111C111110101110111110….
Substituição de blocos

Diagramas de Estados do Estágio de Colapso


B111110…
0111C1110101110111110….
0
R

C 1

L R

1/ 0 0/ 1 1 0

0
L R
Substituição de blocos
Diagramas de Estados do Estágio de Inserção
B111110… X/ 1
0111C0101110111110…. 0 B
R L

X 1/ X

L R

0 C

1/ 0
R R
0/ 1
Substituição de blocos
Diagramas de Estados do Estágio para Máquinas
Combinadas: X/ 1
C 0 B 0 B
R R L R L

C 1 X 1/ X

L R L R

1/ 0 0/ 1 1 0 0 C

0 1/ 0
L R R R
0/ 1
Máquinas compostas

Doubling machine
Exponentation machine
Considerações finais

Turing provou que:


Para qualquer sistem a form al ex iste um a m áquina de Turing
que pode ser program ada para imitá- lo.
Diagram as de estados fornecem um a m elhor visualização da
m áquina de Turing em relação às tabelas de estados.
As com binações podem ser feitas com test e padrão de fita.
A m áquina de Substituição de Blocos resolve o problem a
proposto, porém precisa de um grande núm ero de passos.
Máquinas Com postas, quando bem utilizadas, podem
ex ecutar algoritm os ex trem am ente com plex os.
Referencial teórico

HENNIE, F. Introduction to computability. Addison-


Wesley, 1 9 7 7 .

You might also like