Las máquinas de Turing pueden ser deterministas o no deterministas. Una máquina de Turing determinista toma una única acción para cada par estado-símbolo, mientras que una no determinista puede tomar múltiples acciones. Una máquina no determinista se "bifurca" en múltiples copias que siguen diferentes caminos de ejecución, aceptando la entrada si alguna copia alcanza un estado de aceptación. Aunque ambos tipos de máquinas tienen la misma capacidad de cómputo, una máquina no determinista puede resolver problemas