Supongamos que HALTS es una TM que lee su entrada como un par y , donde es una codificación TM y es cualquier entrada a esa TM.x M xMxMx
Su pregunta es si ¿qué pasaría si asumimos HALTS resolvió el problema de la parada para todas las entradas tal que no es una codificación de un TM que es funcionalmente equivalente a .x M⟨M,x⟩xM
Afirmo que esto implica una contradicción. Se me ocurrió esto en el acto, así que agradezco cualquier crítica de mi prueba. La idea de la prueba es que, en lugar de diagonalizar algo en sí mismo, hacemos dos TM mutuamente recursivas que se comportan de manera diferente en alguna entrada (por lo tanto, no son funcionalmente equivalentes), pero de lo contrario causan contradicciones.
Supongamos que y son dos TM mutuamente recursivas (es decir, podemos simular, imprimir, etc., la descripción de dentro del programa de y viceversa). Tenga en cuenta que podemos hacer TM recursivas mutuamente a partir del teorema de recursividad.D 2 D 2 D 1D1D2D2D1
Defina y siguiente manera: en la entrada , si (10 elegidos arbitrariamente), luego acepta y bucles. (Por lo tanto, no son funcionalmente equivalentes).D 2 x | x | < 10 D 1 D 2D1D2x|x|<10D1D2
Entrada dada con , defina para simular HALTS en y si detiene o si bucle.| x | ≥ 10 D 1 ⟨ D 2 , x ⟩ D 2 D 2x|x|≥10D1⟨D2,x⟩D2D2
Entrada dada con , defina para simular HALTS en y bucle si detiene o se detiene si se .| x | ≥ 10 D 2 ⟨ D 1 , x ⟩ D 1 D 1x|x|≥10D2⟨D1,x⟩D1D1
Luego tenga en cuenta que para cualquier con , (x) se detiene o se repite. Si detiene en la entrada x, entonces sabemos que HALTS ( , x) determinó que detiene en la entrada x. Sin embargo, la detención de en la entrada x implica que HALTS ( , x) se .x|x|≥10D1D1D2D2D2D1
Si en la entrada bucles, la contradicción sigue de manera similar.D1x
Esto es una contradicción a menos que sea una codificación para una máquina de turing funcionalmente equivalente a o , en cuyo caso HALTS tiene un comportamiento indefinido. Sin embargo, se eligió de forma arbitraria entre todas las cadenas de tamaño superior a . Por lo tanto, queda por demostrar que existe una máquina de Turing con una codificación de tamaño superior a 10 que se comporta de manera diferente a y . Podemos construir tal máquina de manera trivial. QEDxD1D2x10D1D2
Pensamientos?