Vamos usar , ou seja, todas as máquinas que não aceitam palavra (ou seja, cujo idioma está vazio).L∅={⟨M⟩∣L(M)=∅}
Agora, mostramos a redução . A redução é feita usando uma entrada de e convertendo-a em uma entrada para modo queATM¯¯¯¯¯¯¯¯¯¯≤L∅(⟨M⟩,w)ATM¯¯¯¯¯¯¯¯¯¯⟨M~⟩L∅
(⟨M⟩,w)∈ATM¯¯¯¯¯¯¯¯¯¯ iff ⟨M~⟩∈L∅
Dado , podemos construir da seguinte maneira. na entrada y faz o seguinte:(⟨M⟩,w)M~M~
- exclui a fita
- escreve na fitaw
- executa em e executa o mesmo (se aceitar, aceita).MwMM~
Convença-se de que é possível construir a codificação de partir da codificação de e de . Agora vamos verificar se essa redução é válida:M~Mw
- Se , rejeita ou não para. Nesse caso, também não aceita , para qualquer entrada . Isso significa assim .(⟨M⟩,w)∈ATM¯¯¯¯¯¯¯¯¯¯MM~yyL(M~)=∅⟨M~⟩∈L∅
- Se então aceitará , assim aceitará (para cada ). Segue que que implica que .(⟨M⟩,w)∉ATM¯¯¯¯¯¯¯¯¯¯MwM~yyL(M~)=Σ∗⟨M~⟩∉L∅
A condição "iff" é válida e mapeamos com êxito uma entrada de em uma entrada de . Nesse caso, dizemos que reduzimos para . Ou seja, se pudermos resolver , também podemos resolver primeiro convertendo a entrada e depois executando o algoritmo que resolve na entrada convertida.ATM¯¯¯¯¯¯¯¯¯¯L∅ATM¯¯¯¯¯¯¯¯¯¯L∅L∅ATM¯¯¯¯¯¯¯¯¯¯L∅