Một máy Turing không xác định chấp nhận nếu ít nhất một đường dẫn chấp nhận; nó chỉ từ chối nếu tất cả các đường dẫn từ chối. Sự bất cân xứng này làm cho nó khó "lật câu trả lời".
Ví dụ: giả sử bạn có một máy Turing không xác định có hai đường dẫn cho đầu vào w : một chấp nhận, một từ chối khác. M có ít nhất một đường dẫn chấp nhận cho w , vì vậy nó chấp nhận. Giả sử chúng ta muốn sản xuất một máy chấp nhận chính xác các đầu vào mà M từ chối. Nỗ lực đầu tiên rõ ràng là lấy M và làm cho các trạng thái chấp nhận của nó bị từ chối, và các trạng thái từ chối của nó chấp nhận. M có một đường dẫn chấp nhận cho w và một đường dẫn từ chối; này máy mới M ' có một con đường từ chối và một con đường chấp nhận. Vì vậy, nó vẫn chấp nhận w , mà nó được cho là từ chối!MwMwMMMwM′w
Một cỗ máy không xác định không thể nhìn vào tất cả các đường dẫn của nó đồng thời và thực hiện hành động dựa trên những gì tất cả các đường dẫn đó làm. Nếu bạn thích, bạn có thể nghĩ về nó như một hình thức song song trong đó các chủ đề bị cấm giao tiếp với nhau. Khi tất cả các luồng đã kết thúc, chương trình phải tự hỏi mình câu hỏi sau: "Có ít nhất một trong các luồng của tôi chấp nhận không?" Nếu câu trả lời là có, nó có nghĩa vụ pháp lý để chấp nhận; nếu câu trả lời là không, thì bắt buộc phải từ chối. Nó không thể làm gì khác.
Khi bạn mô phỏng một máy không xác định sử dụng với nhau, M ' , mỗi con đường của M ' mô phỏng một con đường M và thấy chỉ con đường đó. Nó không thể nói, "Nếu tất cả những con đường khác bị từ chối, tôi sẽ chấp nhận" bởi vì nó không thể nhìn thấy những con đường khác; nó chỉ có thể nhìn thấy chính nó Vì vậy, tất cả những gì có thể nói là những điều như: "Nếu con đường tôi mô phỏng được chấp nhận, tôi sẽ từ chối" hoặc "Nếu con đường tôi mô phỏng được chấp nhận, tôi cũng sẽ chấp nhận". Sau đó, khi kết thúc tính toán, máy phải nói: "Nếu bất kỳ con đường nào của tôi được chấp nhận, tôi cũng sẽ chấp nhận", dẫn đến vấn đề tôi đã mô tả ở trên. Để đảo ngược hành vi của M , mỗi con đường của M 'MM′M′MMM′cần phải nói, "Nếu đường dẫn tôi mô phỏng được chấp nhận, tôi từ chối; khác, tôi chấp nhận" và, khi kết thúc tính toán, máy cần nói, "Nếu tất cả các đường dẫn của tôi được chấp nhận, tôi chấp nhận; . " Điều này là do, nếu tất cả các đường dẫn của trình giả lập được chấp nhận, điều đó có nghĩa là tất cả các đường dẫn của bị từ chối, vì vậy M bị từ chối, vì vậy trình giả lập cần phải chấp nhận. Nhưng trình giả lập không phải là máy Turing không xác định hợp lệ vì nó không sử dụng tiêu chí chấp nhận được ủy quyền hợp pháp. Nó không thể làm điều đó.MM
Cách duy nhất chúng ta biết để tìm hiểu xem một máy không xác định từ chối đầu vào của nó là thử mọi đường dẫn có thể và xác minh rằng tất cả chúng đều từ chối. Rốt cuộc, nếu thậm chí một trong số họ chấp nhận, máy sẽ chấp nhận đầu vào. Nhưng cố gắng mọi con đường có thể chậm hơn theo cấp số nhân so với chỉ thử một.