Talvez você possa criar uma linguagem no DPSACE (n) que não possa ser reconhecida por um MPA com usando um argumento de diagonalização (provavelmente a ideia é semelhante à da resposta de Ben, mas não a expliquei):k=1
Suponha que no alfabeto você codifique um MPA usando uma lista de transições:Σ={0,1}
s,a,p→s′,p′,L|R;...#
onde é o estado atual, é o símbolo atual, é o status do seixo, é o novo estado, é o novo estado do seixo, é a direção do movimento, é um marcador final).a p s ′ p ′ L | R #saps′p′L|R#
Uma máquina de Turing na entrada pode verificar se é uma descrição válida de um e simulá-la na entrada para etapas usando células, estendendo a entrada desta maneira:MxMPAxx4|x|6|x|+log|x|
MPA description # MPA tape # curr_state # counter #
Onde:
- A descrição do MPA é a sequência de entrada original (possui comprimento );x|x|
- Fita MPA é a representação da fita MPA: para cada célula, podemos usar 3 bits para armazenar o sinalizador principal, sinalizador de calhau e o conteúdo da fita (fixa) (com comprimento );3|x|
- curr_state armazena o estado atual do MPA (possui comprimento );log|x|
- counter é o contador de etapas da simulação que é atualizado após cada etapa da simulação (tem comprimento ).2|x|
Se em etapas, o TM emitirá o oposto (se não interromper emitirá 0).MPAx4|x|MM
Para grande o suficiente , as etapas de simulação de são maiores queque é maior que o comprimento de uma descrição completa da configuração do ; dessa maneira, se o não parar em etapas, temos certeza de que ele fará um loop para sempre.x>x04|x|2|x|+2|x|log|x|MPAxMPAx4|x|
Suponha que exista um que decida o mesmo idioma de ; ele sempre será interrompido e você poderá criar um "maior" que decida o mesmo idioma com (basta adicionar estados dum).MPAyLMMPAy′y′>x0
Por construção, temos, que é uma contradição.MPAy′(y′)=1−M(y′)=1−MPAy′(y′)