Decidir Decidability é Decidable?

13

Eu estou querendo saber se decidir a decidibilidade do problema é um problema decidível. Acho que não, mas após as pesquisas iniciais não consigo encontrar nenhuma literatura sobre esse problema.

sincronizar
fonte
7
Yo, cara, eu ouvi você gosta de decidibilidade assim ...
David Richerby
Sua pergunta não é respondida em sua forma atual, como mostra as duas respostas que basicamente dizem "Trivialmente, não" e "Trivialmente, sim" (com um comentário bônus dizendo "não" ao "não"). Você perguntou se um problema é decidível, mas não definiu qual é esse problema. Em particular, qual é a entrada? Se você quer projetar uma máquina de Turing que vão dizer se um problema é decidível, você tem que dar esse problema como uma entrada para M . Mas como você faz isso? MM
David Richerby
3
Dadas as respostas atuais, há a questão "é decidir Decidir Decidibilidade decidíveis decidíveis?", Mas eu não vou pedir para ele :-)
Mark Hurd

Respostas:

10

Edição principal do meu original:

Parece uma leitura ingênua da sua pergunta, seja o problemaP

Dado um idioma, L , é decidível?P=eu

Então você pergunta

é decidível?P

Como DW e David observaram, a resposta é "sim, é", embora não saibamos qual dos dois decisores triviais é o correto. A fim de enquadrar seu problema para que não seja tão trivial, sugiro isso. Primeiro, vamos restringir as coisas um pouco, considerando apenas aqueles línguas , que são as línguas aceites por alguns TM M . A razão para fazer isso é que, se um idioma não é aceito por nenhuma TM, ele não é re-reconhecível e, portanto, não pode ser recursivo (decidível). Então podemos reformular P comoeu(M)MP

Dada uma descrição,M de uma TM, M é G ( M ) decidíveis?P=MMeu(M)

Agora é uma linguagem das descrições da MT, em vez de uma linguagem das línguas como P parecia (sob uma interpretação generosa), e agora é perfeitamente razoável perguntar se a linguagem P ' é decidível. Sob essa leitura, a linguagem { M | M  é um TM e  L ( M )  é decidível } consistindo de descrições TM não é decidível. Essa é uma conseqüência fácil do teorema de Rice . Então agora temos duas respostas: meu "não" e o "sim" do DW, dependendo da interpretação.PPP

{MM é uma MT e eu(M) é decidível}
Rick Decker
fonte
1
Obrigado! Entendendo, pelo menos superficialmente, ambas as respostas me deram a informação que eu estava procurando, que é aproximadamente: "Podemos criar uma máquina que possa decidir o que pode e não pode decidir em geral?" (Não é bom fraseado, eu sei, mas não consigo pensar em fraseados melhores.) Muito útil, especialmente porque você reconhece as duas interpretações.
sync
Eu pensei que mostrar que para todo problema decidível existe um certificado (algoritmo com uma prova) e para todo problema indecidível também existe um certificado (redução do problema indecidível) é suficiente.
rus9384
9

Como vimos nas diferentes respostas, parte da resposta está na formulação do problema certo.

Em 1985, Joost Engelfriet escreveu "A não computabilidade da computabilidade" (Boletim do EATCS número 26, junho de 1985, páginas 36-39) como resposta a uma pergunta feita por um estudante inteligente. Infelizmente, o BEATCS naquela época era apenas papel e o artigo não deixava vestígios eletrônicos.

O autor assume que temos um formalismo (lógico) com os operadores e variáveis ​​booleanos usuais. Sua definição precisa não é importante. Uma fórmula F ( m , n ) especifica uma função f : NN se s (para todos os m , n N ) f ( m ) = n F ( m _ , n _ ) é verdadeira, onde m _ é o numeral representando o número m .ΨF(m,n)f:NNm,nNf(m)=n F(m_,n_)m_m

Eu cito:

ΦNNff

A parte divertida está na seguinte observação feita no artigo:

Φ

Hendrik Jan
fonte
4

Sim. É sempre decidível.

Para qualquer problema P, seja Q o problema de determinar se P é decidível ou não. Eu afirmo que Q é decidível. Aqui está o porquê. Tautologicamente, P é decidível ou não. Portanto, um dos dois programas está correto: (1) print "yup P is decidable"ou (2) print "nope P is not decidable". Pode não ser trivial descobrir qual desses dois programas está correto, um deles está correto; portanto, uma decisão para Q certamente existe . Portanto, o problema Q é decidível.

Isso lembra a seguinte pergunta clássica: É decidível dizer se a conjectura de Collatz é verdadeira? A resposta é sim. Isso pode parecer estranho, pois ninguém sabe se a Conjectura de Collatz é verdadeira (esse é um famoso problema em aberto). No entanto, o que sabemos é que a conjectura de Collatz é verdadeira ou não. No primeiro caso, o programa print "yup it's true"é decisivo. Neste último caso, o programa print "nope it's not true"é decisivo. Não sabemos qual é um decisor válido, mas isso é suficiente para provar que existe um decisor válido. Portanto, o problema é decidível.

DW
fonte
1
Acho que a interpretação de Ricky Decker da questão é superior. Dada a codificação de um problema, decida se o problema é decidível.
Yuval Filmus
1
@YuvalFilmus, OK, isso é razoável. Você tem uma codificação finita para problemas (ou seja, idiomas) que considera razoáveis ​​e não torna o problema trivial? A codificação finita natural de um idioma é como uma máquina de Turing que reconhece esse idioma, mas isso torna o problema trivial, como ilustra seu comentário na resposta de Ricky Decker. Portanto, precisaríamos de outra codificação razoável, que não sofra com esse tipo de problema. Você tem alguma sugestão para isso?
DW
Você pode usar a lógica de primeira ordem em algum idioma apropriado. Ou a entrada pode ser uma máquina em 0 '(por exemplo), ou seja, uma máquina de Turing com acesso a um oráculo de parada.
Yuval Filmus
Pelo teorema de Rice, sabemos que mesmo decidir R no universo RE é indecidível. Isso não é suficiente? (Nem todas as TMs são decisoras.)
Raphael
Obrigado! Embora, não a interpretação que pretendi, isso tenha me ajudado a entender por que a pergunta que fiz não pode ser suficientemente bem estabelecida para refletir minhas intenções.
sync