Quizás pueda construir un lenguaje en DPSACE (n) que no pueda ser reconocido por un MPA con usando un argumento de diagonalización (probablemente la idea es similar a la de la respuesta de Ben, pero no profundicé en ello):k=1
Suponga que sobre el alfabeto codifica un MPA usando una lista de transiciones:Σ={0,1}
s,a,p→s′,p′,L|R;...#
donde es el estado actual, es el símbolo actual, es el estado del guijarro, es el nuevo estado, es el nuevo estado del guijarro, es la dirección del movimiento, es un marcador final).a p s ′ p ′ L | R #saps′p′L|R#
Una máquina Turing en la entrada puede verificar si es una descripción válida de un y simularla en la entrada para pasos usando celdas, estirando la entrada de esta manera:x M P A x x 4 | x | 6 | x | + log | x |MxMPAxx4|x|6|x|+log|x|
MPA description # MPA tape # curr_state # counter #
Dónde:
- La descripción de MPA es la cadena de entrada original (tiene longitud );| x |x|x|
- La cinta MPA es la representación de la cinta MPA: para cada celda podemos usar 3 bits para almacenar la bandera principal, la bandera de guijarros y el contenido de la cinta (fija) (tiene una longitud de );3|x|
- curr_state almacena el estado actual del MPA (tiene una longitud );log|x|
- counter es el contador de pasos de simulación que se actualiza después de cada paso de simulación (tiene una longitud de ).2|x|
Si detiene en pasos, TM genera lo contrario (si no detiene produce 0).MPAx4|x|MM
Para suficientemente grande , los pasos de simulación son mayores queque es mayor que la longitud de una descripción de configuración completa de ; de esta manera, si el no se detiene en pasos, entonces estamos seguros de que se repetirá para siempre.x>x04|x|2|x|+2|x|log|x|MPAxMPAx4|x|
Suponga que hay un que decide el mismo lenguaje de , entonces siempre se detiene y puede construir un más grande " que decide el mismo idioma, con (solo agregue estados dum).MPAyLMMPAy′y′>x0
Por construcción tenemos, cual es una contradicción.MPAy′(y′)=1−M(y′)=1−MPAy′(y′)