O equívoco zumbi da ciência da computação teórica
Introdução
- No livro didático "Introduction to the Theory of Computation", de Michael Sipser, há um exercício perfeito
- Exercício: "Se a função f:{0,1}*→{0,1} retorna 1 ou 0 dependendo da existência de Deus, então f é computável?"
- Resposta: "Sim, f é computável" (porque funções constantes são computáveis)
O conceito de computabilidade
- A computabilidade se aplica a funções ou sequências infinitas
- Não se aplica a perguntas individuais de sim/não nem a inteiros individuais
- A dificuldade de escrever um programa não tem relação com a computabilidade
O problema P versus NP
- O problema P versus NP é uma pergunta individual de sim/não
- NP-dificuldade se aplica a funções ou linguagens
- O problema P versus NP não pode ser incomputável nem NP-difícil
A função Busy Beaver
- A função Busy Beaver é incomputável
- Inteiros individuais como BB(6) são computáveis
- O que é incomputável é a função BB como um todo
O equívoco zumbi da ciência da computação teórica
- Aplicar por engano a inteiros individuais e problemas em aberto conceitos que se aplicam a sequências infinitas e funções
- Confundir a incomputabilidade do problema da parada com a incompletude de Gödel
Pergunta aos leitores
- O autor pergunta aos leitores como esse equívoco zumbi poderia ser evitado
Resumo do GN⁺
- Este texto trata de equívocos que surgem com frequência na ciência da computação teórica
- A computabilidade se aplica a funções ou sequências infinitas, e não a inteiros individuais ou perguntas de sim/não
- O problema P versus NP é uma pergunta individual e, portanto, não tem relação com o conceito de NP-dificuldade
- A função Busy Beaver é incomputável, mas valores individuais são computáveis
- Este texto ajuda a entender com clareza conceitos básicos da ciência da computação teórica
1 comentários
Comentários no Hacker News
A questão de existir ou não um algoritmo para calcular a complexidade de Kolmogorov está relacionada ao infinito
Opinião de que a matemática construtiva combina melhor com a intuição das pessoas
Por que é difícil entender a indecidibilidade do problema da parada
return trueoureturn false, sempre fornece a resposta corretaExpressão de problemas que exigem lógica modal
pragmaA representação confusa da função f
Diferença de significado entre decidibilidade, computabilidade e existência
O problema das perguntas relacionadas a "God exists"
Por que teoria da computação e teoria da complexidade são difíceis para alunos de graduação em Ciência da Computação
Reclamação sobre a forma de destaque de texto no blog
Proposta de substituir "God exists" por outra proposição matemática