O documento discute o trabalho fundamental de Alan Turing na definição de problemas decidíveis e indecidíveis. Turing introduziu a máquina de Turing em 1936, que forneceu uma definição precisa do que constitui um algoritmo e viabilizou a demonstração formal de que certos problemas matemáticos são indecidíveis.
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
Slides turing-abr-2012
1. Alan Turing e Decidibilidade
Problemas Decidı́veis e
Problemas Indecidı́veis
Ruy de Queiroz
Centro de Informática, Univ. Federal de Pernambuco
12 Abr 2012
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
2. Alan Turing e Decidibilidade
Content
1 Alan Turing e Decidibilidade
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
3. Alan Turing e Decidibilidade
Problemas Decidı́veis e Problemas Indecidı́veis
Necessidade de Definição Precisa
Em 1936 Alan Turing veio com uma definição precisa de
máquinas idealizadas: a máquina de Turing.
Isso viabilizou a definição exata da decidibilidade de
problemas matemáticos, e, portanto, abrindo a possibilidade de
se demonstrar que certos problemas são de fato indecidı́veis.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
4. Alan Turing e Decidibilidade
Exemplos de Problemas Indecidı́veis
Números Construtı́veis
Um ponto no plano Euclideano é chamado de construtı́vel se,
dado um sistema fixo de coordenadas,(ou um segmento de
reta fixo de comprimento unitário), o ponto pode ser construı́do
com régua e compasso.
Já na Antiguidade, os matemáticos buscavam por construções
para trissectar um dado ângulo, assim como por construções
para transformar um cı́rculo num quadrado de mesma área.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
5. Alan Turing e Decidibilidade
Exemplos de Problemas Indecidı́veis
Trissectar um Ângulo com Régua-e-Compasso
Somente em 1837, o matemático francês Pierre Wantzel
(1814–1848), mostrou que não existe método geral para
trissectar um ângulo usando apenas régua-e-compasso.
A estratégia de Wantzel foi se valer da chamada teoria de
Galois – mais especificamente, a trissecção de um ângulo
corresponde à resolução de uma certa equação cúbica, que
não é possı́vel usando as ferramentas dadas.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
6. Alan Turing e Decidibilidade
Exemplos de Problemas Indecidı́veis
Outros Resultados de Pierre Wantzel
No mesmo artigo em que demonstrou a impossibilidade de
trissectar um ângulo, Wantzel também demonstrou a
impossibilidade de, usando apenas régua-e-compasso:
1 dobrar o cubo: ”dobrar o cubo” significa ser capaz de, ao
receber um dado cubo de comprimento de lado s e volume
V = s3, construir um novo cubo, maior que o recebido,
com volume dobrado, i.e., 2V, e, portanto, comprimento de
lado s
3
√
2.
2 construir um polı́gono regular cujo número de lados não
é o produto de uma potência de 2 e nenhum número de
primos de Fermat distintos.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
7. Alan Turing e Decidibilidade
Exemplos de Problemas Indecidı́veis
Quadratizando o Cı́rculo
Quadratizar o cı́rculo é um problema proposto pelos
geômetras da Antiguidade. Trata-se do desafio de construir um
quadrado com a mesma área que um dado cı́rculo, usando
apenas régua e compasso.
Em 1882, o problema foi demonstrado impossı́vel de resolver,
e isso veio como uma conseqüência do teorema de
Lindemann–Weierstrass que mostra que π é um número
transcendental, e não algébrico.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
8. Alan Turing e Decidibilidade
Exemplos de Problemas Indecidı́veis
Equações Solúveis por Raı́zes
Somente em 1824, o matemático norueguês Niels Abel
(1802–1829) obteve o importante resultado de que não pode
haver uma fórmula (finita) geral, envolvendo apenas operações
aritméticas e raı́zes, que exprima as raı́zes de um polinômio de
grau 5 ou mais em termos de seus coeficientes.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
9. Alan Turing e Decidibilidade
Problemas Indecidı́veis
Definição
Recente survey “Undecidadble Problems: A Sampler”, por
Bjorn Poonen, Março 2012:
Há dois cenários comuns nos quais se fala de
indecidibilidade:
1 Independência de axiomas: Um único enunciado é
dito indecidı́vel se nem ele nem sua negação pode ser
deduzido usando as regras da lógica a partir do
conjunto de axiomas sendo utilizados. (Exemplo: A
Hipótese do Contı́nuo)
2 Problema de decisão: Uma famı́lia de problemas
com respostas SIM/NÃO é dita indecidı́vel se não
existe algoritmo que termine com a resposta correta
para todo problema da famı́lia. (Exemplo: 10o
problema de Hilbert)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
10. Alan Turing e Decidibilidade
Problemas Indecidı́veis
Definição
Na literatura moderna, a palavra “indecidibilidade” é
usada mais frequentemente no sentido (2), dado que
“independência” adequadamente descreve o sentido
(1).
Para tornar o sentido (2) preciso, é preciso uma noção
formal de algoritmo. Tal noção foi introduzida por A.
Church (1936) e A. Turing (1936) independentemente
nos anos 1930’s. (Bjorn Poonen, 2012)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
11. Alan Turing e Decidibilidade
Algoritmos
Origens do Conceito de Algoritmo
Abu Abdallah Muhammad ibn Musa al-Khwarizmi (c. 780 – c.
850) foi um matemático e astrônomo persa responsável pela
introdução no Ocidente dos numerais arábicos, baseado no
sistema de numerais indo-arábico desenvolvido na matemática
indiana.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
12. Alan Turing e Decidibilidade
Algoritmos
Origens do Conceito de Álgebra
”Talvez um dos avanços mais significativos
conseguidos pela matemática árabe tenha começado
com o trabalho de al-Khwarizmii, a saber, os
primórdios da álgebra.
Foi uma mudança revolucionária do conceito grego de
matemática que era essencialmente geometria.
Álgebra veio como uma teoria unificadora que
permitiu tratar números racionais, números
irracionais, magnitudes geométricas, etc., todos como
objetos algébricos.”
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
13. Alan Turing e Decidibilidade
Algoritmos
Definição do Conceito de Algoritmo
”Um algoritmo é um procedimento passo-a-passo
com o fim de realizar cálculos, processar dados,
automatizar o raciocı́nio dedutivo.”
”Mais precisamente, um algoritmo é um método eficaz
expresso como uma lista finita de instruções bem
definidas para o cálculo de uma função. A partir de
um estado inicial e uma entrada inicial (possivelmente
vazia), as instruções descrevem uma computação
que, quando executada, irá prosseguir por meio de
um número finito de estados sucessivos bem
definidos, acabando por produzir uma ‘saı́da’ e
terminando em um estado final.” (Wikipedia)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
14. Alan Turing e Decidibilidade
Algoritmos
Exemplo Milenar de Algoritmo: Euclides
O algorithm de Euclides é um método eficiente de calcular o
máximo divisor comum (MDC) de dois números inteiros.
Presente nos livros VII e X dos Elementos de Euclides (c. 300
a.C.), trata-se de um dos mais antigos algoritmos numéricos
que se conhece.
Embora concebido para números reais, o algoritmo foi
generalizado no séc. XIX para outros tipos de números, tais
como inteiros de Gauss e polinômios de uma variável.
Tais generalizações levaram a noções algébricas abstratas
como domı́nios euclideanos. Generalizando ainda mais, a
aplicabilidade do algoritmo hoje inclui nós e polinômios
multivariados.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
15. Alan Turing e Decidibilidade
Algoritmos
Décimo Problema de Hilbert
Em sua lista de 1990 dos 23 problemas mais importantes da
Matemática, David Hilbert incluiu:
10. Determinação da solubilidade de uma equação
Diophantina. Dada uma equação Diophantina com
qualquer número de quantidades indeterminadas e
com coeficientes integrais racionais: Conceber um
processo conforme o qual pode ser determinado, em
um número finito de operações, se a equação é
solúvel nos inteiros racionais.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
16. Alan Turing e Decidibilidade
Algoritmos
Entscheidungsproblem: A Generalização do Décimo Problema de Hilbert
O Entscheidungsproblem (’problema de decisão’, em
alemão) é um desafio posto por David Hilbert em 1928. O
Entscheidungsproblem pede por um algoritmo que
receberá como entrada uma descrição de uma linguagem
formal e um enunciado matemático na linguagem, e
produzirá como saı́da “Verdadeiro” ou “Falso”. Tal algoritmo
seria capaz de decidir, por exemplo, se enunciados tais
como a conjectura de Goldbach ou a hipótese de Riemann,
são verdadeiras, muito embora nenhuma prova ou
refutação desses enunciados seja conhecida. O
Entscheidungsproblem tem sido comumente identificado,
em particular, com o problema de decisão para a lógica de
primeira ordem (isto é, o problema de se determinar
algoritmicamente se um enunciado de primeira ordem é
universalmente válido). (Wikipedia)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
17. Alan Turing e Decidibilidade
Algoritmos
A Formulação de ‘Processo Combinatório Finito’
Em 1928 Hilbert enuncia o Entescheidungsproblem assim:
O Entscheidungsproblem é resolvido quando
conhecemos um procedimento que permite para
qualquer expressão lógica dada decidir sua validade
ou satisfatibilidade.
No perı́odo de 1928 a 1936, Emil Post trabalhou intensamente
no desenvolvimento de uma definição do que seria
procedimento envolvendo um número finito de passos: um
trabalhador se movendo de sala em sala escrevendo e
apagando sı́mbolos conforme uma lista de instruções.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
18. Alan Turing e Decidibilidade
Algoritmos
Formalização do Conceito de Algoritmo
Naturalmente, antes que a questão da solubilidade do
Entscheidungsproblem pudesse ser resolvida, a noção de
algoritmo tinha que ser formalmente definida.
Coube a Alonzo Church em 1936 com o conceito de
calculabilidade efetiva baseado no seu λ-cálculo, e a Alan
Turing também em 1936, com a noção de máquina de Turing.
Em seu artigo de 1936 (publicado em 1937, e avaliado por
Church) Turing acrescentou um apêndice demonstrando que a
classe de funções computáveis pelo λ-cálculo era a mesma
que a classe de funções computáveis por máquinas de Turing.
Daı́, a denominação Tese de Church–Turing: toda função
computável é computável por máquinas de Turing.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
19. Alan Turing e Decidibilidade
Algoritmos
Limitação do Homo Sapiens
Na verdade, o trabalho feito por Church e outros leva
essa identificação consideravelmente além do estágio
de hipótese de trabalho.
Porém, mascarar essa identificação sob uma
definição esconde o fato de que uma descoberta
fundamental nas limitações do poder de
matematicatização do Homo Sapiens foi feita, e nos
cega para a necessidade de sua contı́nua verificação.
(Emil Post)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
20. Alan Turing e Decidibilidade
Definição Matemática de Algoritmo
Processo Mecânico
Na primavera de 1935 Turing, ainda como aluno de Mestrado
no King’s College (Cambridge, UK), aceitou o desafio de provar
que não haveria processo ‘mecânico’ que resolvesse o
Entscheidungsproblem. O estı́mulo veio do matemático M.
Newman, orientador de Turing.
À pergunta ‘o que é um processo “mecânico”?’ Turing
dá a resposta caracterı́stica ‘Algo que pode ser feito
por uma máquina’, e aı́ embarca na tarefa altamente
congênere de analisar a noção geral de uma máquina
de computação. (Robin Gandy, 1974)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
21. Alan Turing e Decidibilidade
Definição Matemática de Algoritmo
Turing e o Entscheidungsproblem
Suponho, porém não tenho certeza, que Turing,
desde o inı́cio de seu trabalho, tinha como objetivo
uma prova da indecidibilidade do
Entscheidungsproblem. Ele me disse que a ‘idéia
principal’ do artigo veio a ele quando ele estava no
parque Grantchester no verão de 1935. A ‘idéia
principal’ pode ter sido sua análise do fenômeno da
computação ou sua percepção de que havia uma
máquina universal, e portanto um argumento diagonal
para provar a insolubilidade. (Robin Gandy, 1974)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
22. Alan Turing e Decidibilidade
Definição Matemática de Algoritmo
Máquina de Turing
Uma máquina de Turing é uma 7−upla,
(Q, Σ, Γ, δ, q0, qaceita, qrejeita), onde Q, Σ, Γ são todos conjuntos
finitos, δ é a função de transição, q0 ∈ Q é o estado inicial,
qaceita é o estado de aceitação, e qrejeita é o estado de rejeição.
Trata-se de um modelo formal de um “ser humano calculante”:
cada célula da fita de trabalho pode ser concebida como uma
folha de papel, Σ como o alfabeto de entrada, , e Γ o alfabeto
de trabalho.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
23. Alan Turing e Decidibilidade
Definição Matemática de Algoritmo Universal
Máquina de Turing Universal
”É possı́vel inventar uma única máquina que pode ser
usada para computar qualquer seqüência computável.
Se essa máquina U for alimentada com a fita no
começo da qual está escrita a cadeia de quı́ntuplas
separadas por vı́rgulas de alguma máquina de
computação M, então U vai computar a mesma
seqüência que M. ” (Alan Turing)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
24. Alan Turing e Decidibilidade
Definição Matemática de Algoritmo Universal
Máquina de Turing Universal: Computador de Memória Armazenada
um avanço teórico fundamental que levou à noção de
computador de programa armazenado. (Martin
Davis)
O artigo de Turing ... contém, essencialmente, a
invenção do computador moderno e algumas das
técnicas de programção que o acompanharam.
(Marvin Minsky)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
25. Alan Turing e Decidibilidade
Problemas Decidı́veis
Exemplos de Problemas Decidı́veis
Os seguintes problemas matemáticos são decidı́veis:
1 Determinar se um sistema de equações lineares em k variáveis,
com coeficientes em Z, têm soluções em Z.
2 Determinar quais equações da forma x2
− dy2
= 1, onde d é um
inteiro positivo, têm soluções nos inteiros.
3 Determinar para qual(is) valor(es) inteiro(s) de k a equação
y2
= x3
+ k tem solução nos inteiros. Alan Barker (Medalha
Fields 1966) mostrou que o problema é decidı́vel.
4 Determinar se um dado enunciado da aritmética de Presburger
é demonstrável a partir dos axiomas.
5 Determinar se um dado enunciado na linguagem da teoria dos
corpos real-fechados é demonstrável a partir dos axiomas da
teoria.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
26. Alan Turing e Decidibilidade
Problemas Indecidı́veis
Um Grande Resultado de Indecidibilidade
Em 1900, Hilbert perguntou em seu décimo problema:
Existe um algoritmo para decidir se um sistema de
equações com coeficientes inteiros tem uma solução
inteira?
Somente em 1970, surgiu uma resposta: o russo Yuri
Matejasevic, então com 23 anos de idade, demonstrou que não
pode haver tal algoritmo (assumindo a Tese de Church–Turing).
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
27. Alan Turing e Decidibilidade
Problemas Indecidı́veis
Um Filhote do Resultado de Matejasevic
O conjunto de valores positivos tomados pelo polinômio (em 26
variáveis):
(k + 2)(1 − (wz + h + j − q]2
− ((gk + 2g + k + 1)(h + j) + h − z)2
−
(16(k + 1)3
(k + 2)(n + 1)2
+ 1 − f2
)2
− (2n + p + q + z − e)2
−
(e3
(e + 2)(a + 1)2
+ 1 − o2
)2
− ((a2
− 1)y2
+ 1 − x2
)2
−
(16r2
y4
(a2
− 1) + 1 − u2
)2
− (n + l + v − y)2
−
((a2
− 1)l2
+ 1 − m2
)2
− (ai + k + 1 − l − i)2
−
(((a + u2
(u2
− a))2
− 1)(n + 4dy)2
+ 1 − (x + cu)2
)2
−
(p + l(a − n − 1) + b(2an + 2a − n2
− 2n − 2) − m)2
−
(q + y(a − p − 1) + s(2ap + 2a − p2
− 2p − 2) − x)2
−
(z + pl(a − p) + t(2ap − p2
− 1) − pm)2
)
é exatamente o conjunto dos números primos!
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
28. Alan Turing e Decidibilidade
Problemas Decidı́veis
Um Grande Resultado de Decidibilidade
Em 1930, (embora publicado apenas em 1948), o lógico
polonês Alfred Tarski demonstrou que:
Existe um algoritmo para testar a solubilidade, nos
reais, de sistemas de equações polinomiais com
coeficientes inteiros.
Naquela ocasião, Tarski deixou em aberto a questão da
extensão desse resultado para equações exponenciais.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
29. Alan Turing e Decidibilidade
Problemas Decidı́veis
Um Outro Grande Resultado de Decidibilidade
Após mais de 60 anos do enunciado do problema de Tarski,
em 1992 os matemáticos britânicos A. Macintyre e A. Wilkie
mostraram que a resposta é positiva, assumindo uma famosa
conjectura em teoria dos números transcendentais
(generalizando o resultado de que o cı́rculo não pode ser
quadratizado).
Isso permite decidir certas questões em geometria hiperbólica,
que não podem ser obtidas através do algoritmo de Tarski.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
30. Alan Turing e Decidibilidade
Problemas Indecidı́veis
O Grande Resultado de Indecidibilidade de Turing
Turing mostrou que o problema de se determinar se uma dada
máquina de Turing pára ou não quando roda sobre uma dada
entrada é indecidı́vel.
Esse ficou conhecido como o Problema da Parada.
Várias outras demonstrações de indecibilidade, inclusive a de
Emil Post (1946) com relação ao problema da correspondência,
passaram a utilizar como referencial o Problema da Parada: se
esse problema for decidı́vel então o Problema da Parada
também o é, portanto ele não pode ser decidı́vel.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
31. Alan Turing e Decidibilidade
Problemas Indecidı́veis
Exemplos na Matemática
Combinatória: tiling problem, desigualdades lineares entre
densidades de homomorfismo de grafo
Semigrupos de matrizes: problema da mortalidade de matrizes,
problema da palavra,
Topologia: problema do homeomorfismo, detecção de variedade
Teoria dos números: problema de decisão para a teoria de 1a.
ordem dos racionais
Análise: existência de soluções para equações diferenciais
algébricas
Sistemas dinâmicos: ponto vai para a origem em tempo finito?
problema Collatz generalizado
Probabilidade: estabilidade de caminhadas aleatórias
Geometria algébrica: existência de seções racionais
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
32. Alan Turing e Decidibilidade
Graus de Insolubilidade
A Noção de Oráculo: Computabilidade Relativa
Em 1939, com o objetivo de introduzir o conceito de máquina
de Turing não-determinı́stica, Turing define a noção de
máquina oráculo, que permitiu a classificação de problemas
em termos de computabilidade relativa.
O grau de Turing ou grau de insolubilidade de um conjunto
de números naturais mede o nı́vel de insolubilidade do
conjunto.
O grau de Turing de um conjunto revela o quão difı́cil é resolver
o problema de decisão associado ao conjunto.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
33. Alan Turing e Decidibilidade
Graus de Insolubilidade
A Noção de Oráculo: Computabilidade Relativa
Definition
Um oráculo para uma linguagem A é um dispositivo que é
capaz de reportar se uma cadeia qualquer w é um membro de
A. Uma máquina de Turing oráculo MA é uma máquina de
Turing modificada que tem a capacidade adicional de fazer
consultas a um oráculo. Sempre que MA escreve uma cadeia
sobre uma fita oráculo especial ela é informada se aquela
cadeia é um membro de A, em um único passo de computação.
Seja PA a classe de linguagens decidı́veis com um máquina de
Turing oráculo de tempo polinomial que usa o oráculo A.
Defina NPA
de maneira similar.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
34. Alan Turing e Decidibilidade
Teoria da Complexidade Computacional
Máquina de Turing: Tempo e Espaço
Dentre os modelos matemáticos do conceito de algoritmo, a
máquina de Turing tem servido de referencial teórico para a
classificação de algoritmos e problemas segundo os
respectivos requisitos de recursos necessários:
Tempo: medido pelo número de passos de computação
Espaço: medido pelo número de células da fita de trabalho
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
35. Alan Turing e Decidibilidade
Teoria da Complexidade Computacional
Máquina de Turing: Tempo e Espaço
Classes de Complexidade de Problemas Computacionais:
1 P: problemas solúveis por uma máquina de Turing
determinı́stica de tempo polinomial
2 NP: problemas solúveis por uma máquina de Turing
não-determinı́stica de tempo polinomial
Theorem (Cook, 1971)
SAT é NP-completo.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
36. Alan Turing e Decidibilidade
Segurança Computacional
Máquina de Turing: Modelo de Algoritmo Adversário
O Legado de Turing na Teoria da Criptografia:
1 Definição de: função unidirecional, função
pseudoaleatória, indistinguibilidade
2 Definição da noção de experimento, permitindo a
definição matemática de:
sigilo computacional,
resistência à colisão,
inforjabilidade existencial
3 Provas de Segurança Relativa (por redução)
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
37. Alan Turing e Decidibilidade
Inteligência de Máquina
Teste de Turing: Distinguir Humano de Computador
Em 1950, Turing procura uma resposta cientı́fica à pergunta
Máquinas podem pensar?
‘Jogo da Imitação’: humano conversando, por meio de terminal, com
uma máquina e um humano, sem saber quem é a m’aquina,
pretende distinguı́-los, podendo fazer qualquer tipo de pergunta a
cada um deles, cuja resposta pode ou não ser verdadeira. A
resposta à pergunta se a máquina pode pensar será respondida na
afirmativa se ela puder imitar um ser humano nas suas respostas.
Aplicação nos dias de hoje: Completely Automated Public Turing test
tell Computers and Humans Apart (CAPTCHA)
Teste de desafio cognitivo, utilizado como ferramenta anti-spam,
desenvolvido pioneiramente na universidade de Carnegie-Mellon (L.
von Ahn).
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis
38. Alan Turing e Decidibilidade
Referências
O Legado de Alan Turing
Turing, A.M. (1936). “On Computable Numbers, with an
Application to the Entscheidungsproblem”. Proceedings of the
London Mathematical Society 2 42: 230–65. 1937.
Turing, A.M. (1950). “Computing Machinery and Intelligence”.
Mind LIX (236): 433–460.
Macintyre, A. (2011). “Undecidable and Decidable Problems in
Mathematics: A survey and some reflections, for the centenary
of Turing’s birth”. Talk given Tuesday, 17 May 2011 - 6:00pm,
Barnard’s Inn Hall, Gresham College, London, UK.
Ruy de Queiroz Centro de Informática, Univ. Federal de Pernambuco
Problemas Decidı́veis e Problemas Indecidı́veis