Download - Maquina de Turing
Máquina de Turing
Teoria da Computação
Máquina de Turing
Wellington Aparecido Della Mura
Universidade Estadual do Norte do Paraná
Centro de Ciências Tecnológicas
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Aulas anteriores
Linguagens Livres de Contexto
Autômatos com Pilha
Poder de reconhecimento do AP
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Aula de hoje
Objetivo: Introduzir a Máquina de TuringHistórico
Noção intuitiva e formal
Modelos equivalentes
Hipótese de Church
Motivação
É a formalização mais utilizada de algoritmo;
Seu funcionamento é base para a computação atual;
Serve para o entendimento da noção de computabilidade.
Existem mais problemas não solucionáveis do quesolucionáveis.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Contextualização
David Hilbert (1928) propôs o Problema de DecisãoExiste um procedimento mecânico capaz de decidir, emtempo �nito, se uma proposição é válida ou não?
Kurt Gödel (1931) propôs o Teorema da Não CompletudeProvando a existência de proposições indecidíveis
Máquinas Universais:Máquina de TuringMáquinas com pilhasMáquina de PostMáquina NormaFunções Recursivas de KleeneCálculo Lambda
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Histórico
A Máquina de Turing foi proposta porAlan Turing em 1936.
O primeiro formalismo com a noção dealgoritmos e do que seria computável.
Algoritmo
Sequência �nita de instruções discretas realizadasmecanicamente em um tempo �nito.
Hipótese de Church: qualquer função computável podeser processada por uma Máquina de Turing.
Noção de algoritmo não é matematicamente precisa.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Aplicabilidade da Máquina de Turing
Processamento de FunçõesConceito de funções computáveis e suas propriedades
Reconhecimento de LinguagensFormalismo reconhecedor de linguagens RecursivamenteEnumeráveis
Solucionabilidade de ProblemasDe�nir se os problemas são solucionáveis, nãosolucionáveis, parcialmente solucionáveis ou insolúveis.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Noção Intuitiva
Mecanismo simples que formaliza a ideia de uma pessoaque realiza cálculos.Uma pessoa, equipada com uma caneta e um apagador,realiza cálculos em uma folha de papel, organizada emquadrados.Os quadrados contém apenas dados iniciais do problema.A pessoa realiza operações simples:
1 Ler um símbolo do quadrado;2 Alterar um símbolo do quadrado;3 Mover os olhos para outro quadrado (esquerda/direita)
O comportamento, a cada momento, é determinado peloestado presente e o símbolo no quadrado atual.Termina quando chega em uma resposta satisfatória.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Noção como Máquina
A noção de uma pessoa calculando pode ser vista como umamáquina de estados �nitos formada por:
Fita: que serve de dispositivo de entrada, de saída ememória de trabalho.
Unidade de Controle: representa o estado corrente damáquina e possui uma unidade de leitura e gravação.Pode de movimentar para a esquerda ou para a direita.
Função de transição (programa): De�ne o próximo estadoda máquina, comanda as leituras, gravações e a direçãode movimento da leitura.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Representação Grá�ca da Máquina
A �ta é �nita à esquerda e in�nita à direitaSímbolo na �ta pode pertencer ao alfabeto de entrada, aoalfabeto auxiliar, ser branco ou marcar o início de �ta.Inicialmente a única informação que existe na �ta é seumarcador de início seguido da entrada.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Representação Formal
M = 〈Σ, Q, δ, q0, F, V, β,Θ〉
Σ: alfabeto de símbolos de entrada;
Q: conjunto �nito de estados possíveis da máquina;
δ: é a função de transição (programa) tal que:δ : Q×(Σ∪V ∪{β,Θ})→ Q×(Σ∪V ∪{β,Θ})×{E,D}q0: estado inicial tal que q0 ∈ Q;F : conjunto de estados �nais tal que F ⊆ Q;
V : é um alfabeto auxiliar (pode ser vazio);
β: é o símbolo especial branco;
Θ: é o marcador de início de �ta.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Função de Transição
A Função de Transição:
Considera o estado corrente e o símbolo lido na �ta.
Determina um novo estado, o símbolo a ser gravado na�ta e o sentido do movimento da cabeça de leitura.
A transição δ(p, x) = (q, y,m) é representada por:
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Computação da Máquina de Turing
O processamento para uma entrada w consiste em:
Aplicação sucessiva da função programa a partir do estadoinicial q0 e da cabeça posicionada mais à esquerda da �ta.
A execução da função programa ocorre até que se atinjauma condição de parada.
O processamento pode:
parar; ou
�car processando inde�nidamente(ciclo ou loop in�nito).
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Condição de Parada
A parada do processamento de uma Máquina de Turing parauma entrada w pode acontecer de duas maneiras:
Aceita a entrada w.Quando atinge o estado �nal e a máquina para;
Rejeita a entrada w. Quando:A função programa é inde�nida; ouA função programa de�ne um movimento à esquerda noinício da �ta.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Linguagens Aceita, Rejeitada e Loop
Seja M = 〈Σ, Q, δ, q0, F, V, β,Θ〉 uma Máquina de Turing,então:
A linguagem aceita (reconhecida) por M é denotada porACEITA(M) ou L(M).A linguagem rejeitada por M é denotada porREJEITA(M).A linguagem loop de M , denotada por LOOP (M).
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Exemplo: Problema do Duplo Balanceamento
Seja uma MT que aceite a linguagem L = {anbn | n ≥ 0}
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Exemplo: Função de Transição
δ Θ a b A B βq0 (q0,Θ, D) (q1, A,D) (q3, B,D) (q4, β,D)q1 (q1, a,D) (q2, B, E) (q1, B,D)q2 (q2, a, E) (q0, A,D) (q2, B, E)q3 (q3, B,D) (q4, β,D)q4
Dada a entrada w = aabb, os passos de processamento são:
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Máquina de Turing x Algoritmo
A Máquina de Turing é aceita como uma formalização doconceito de algoritmo.
É usual considerar como conceito de algoritmo:Máquina de Turing que sempre para a qualquer entrada.
Uma máquina que eventualmente �ca em loop in�nito:Não seria considerada um algoritmo.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Modelos Equivalentes à Máquina de Turing
A Máquina de Turing é considerada o mais geral dispositivo decomputação
Todos os demais modelos e máquinas propostosNormaPostAutômato com Pilha
As diversas modi�cações da Máquina de Turing
Possuem, no máximo, o mesmo poder computacional daMáquina de Turing.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Autômato com Múltiplas Pilhas
O autômato com pilha é um formalismo reconhecedor daslinguagens livres de contexto.
Um autômato com duas pilhas possui o mesmo poder deuma MT;
Um maior número de pilhas não aumenta a capacidadecomputacional;
A estrutura de �ta é mais expressiva do que a de pilha.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
MT com Fita In�nita à Esquerda e à Direita
Uma MT com �ta in�nita dos dois lados não aumenta o podercomputacional.
Pode ser facilmente simulada por uma �ta tradicional:Células pares: parte direita da �ta; eCélulas ímpares: parte esquerda da �ta.
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Outras modi�cações da Máquina de Turing
Máquina de Turing Não-Derminística
Máquina de Turing com Múltiplas Fitas
Máquina de Turing Multidimensional
Máquina de Turing com Múltiplas Cabeças
Modi�cações combinadas
A combinação de algumas ou todas as modi�cações nãoaumenta o poder computacional da Máquina de Turing
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Hipótese de Church
Objetivo do modelo abstrato de computação Máquina deTuring:
Explorar os limites da capacidade de expressar soluções deproblemas;
Uma proposta de de�nição formal da noção intuitiva dealgoritmo;
Existiram diversos outros trabalhos equivalentes ao de Turing,como:
1 Máquina de Post (Post - 1936)2 Funções Recursivas (Kleene - 1936)
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Hipótese de Church (cont.)
Forte reforço da Hipótese de (Turing-) Church
"A capacidade de computação representada pela Máquina de
Turing é o limite máximo que pode ser atingido por qualquer
dispositivo de computação".
Remete ao conceito de Máquinas Universais
Hipótese de Church não é demonstrávelUm algoritmo ou função computável não ématematicamente preciso.Não há como de�nir o conjunto de todas as máquinaspossíveis.
Reconhecida para toda a teoria da computação clássica.Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Revisão
1 De�nição de algoritmo2 Noção intuitiva da MT3 Modelo formal da MT4 Condições de parada e loop
5 Modelos equivalentes à MT6 Hipótese de Church
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Exercícios
Lista de Exercícios
Ferramenta para simulação da MT: JFLAP(http://www.j�ap.org/)
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Próxima Aula
Máquina de Turing como Reconhecedor de Linguagem
Máquina de Turing como Processador de Funções
Wellington Aparecido Della Mura Teoria da Computação
Máquina de Turing
IntroduçãoNoção intuitiva e formalModelos equivalentes à Máquina de TuringHipótese de Church
Bibliogra�a
MENEZES, P. B. Linguagens Formais e autômatos.v.3, 6a ed. Porto Alegre: Bookman, 2011. (cap.8)
DIVERIO, T. A.; MENEZES, P. B. Teoria daComputação: máquinas universais e computabilidade.v. 5, 3a ed. Porto Alegre: Bookman, 2011.(cap.5)
LEWIS, H. R.; PAPADIMITRIOU, C. H. Elementos eTeoria da Computação. v. 2. Porto Alegre: Bookman,2000.(cap.4)
HOPCROFT J. E.; MOTWANI H. ; ULLMAN J. D.Introduction to Automata Theory, Languages, andComputation. v.2. Addison-Wesley, 2001.(cap.8)
Wellington Aparecido Della Mura Teoria da Computação