Decidir o conjunto de todas as máquinas de Turing que param no máximoetapas

8

Seja pára em cada entrada no máximoetapas .L={<M>|Mx200|x|}

é decidível? Reconhecível?L

Dado que a participação em afirma algo sobre o comportamento de em um conjunto infinito de strings, parece extremamente improvável para mim que possa ser. Mostrei que co- é Turing-reconhecível (eu acho): você pode fazer um enumerador que testa cada para cada e emite se ele não aceitar alguns na no máximopassos.LMLLM1,M2,,s1,s2,Ms200|x|

Como co- é reconhecível, L não é reconhecível ou é decidível. Não consigo imaginar que L seja decidível. No entanto, definitivamente não pode ser reduzido ao problema da parada, nem o teorema de Rice pode ser aplicado a ela (uma vez que a qualidade em questão é a qualidade da parada em um número específico de etapas, poder decidir que não nos permite decidir outros propriedades arbitrárias).LLL

Parece-me que o melhor caminho a seguir será mostrar que L me permite reconhecer algo que é irreconhecível, já que os únicos problemas que ele resolve são aqueles que exigem que eu corra sobre conjuntos infinitos de strings. Mas não consigo pensar no que isso poderia ser. Eu pensei que talvez o co-HALT funcionasse, mas eu nunca posso provar que uma MT nunca irá parar com alguma entrada.

Estou preso. Em que direção devo ir?

Patrick Collins
fonte
e gostaria de saber se existe alguma maneira de relacionar isso com classes de linguagem padrão, por exemplo, CSLs etc ...?
vzn

Respostas:

6

A linguagem é realmente decidível, mas a prova está bastante envolvida e usa argumentos de seqüência cruzada. Veja este documento para detalhes.

Se você alterarpara uma função de crescimento mais rápido, como(mais alguma constante), o idioma se tornará indecidível pelos argumentos de redução padrão.200|x||x|log|x|

Shaull
fonte
2

Esta resposta está errada. Estou deixando aqui, já que esse tipo de argumento é o caminho natural a seguir e funciona para funções de crescimento mais rápido, como mencionado na resposta de Shaull.

Dica: Seja uma máquina sem entrada. Defina uma nova máquina seguinte maneira: na entrada , simula para etapas , onde é uma função tendendo ao infinito, de modo que a simulação execute menos de etapas. Se parar, muda para um loop infinito. Quando é ?MMxMMf(|x|)f(t)200tMMML

Yuval Filmus
fonte
Você não pode necessariamente executar a simulação no tempo . Especificamente, não sabemos como simular com sobrecarga linear. f(t)
Shaull