Có những chương trình thực sự như thế này. Để chứng minh điều này, hãy giả sử ngược lại rằng đối với mọi máy không dừng lại, có một bằng chứng là nó không dừng lại.
Các bằng chứng này là các chuỗi có độ dài hữu hạn, vì vậy chúng ta có thể liệt kê tất cả các bằng chứng về độ dài nhỏ hơn cho một số s .SS
Sau đó, chúng ta có thể sử dụng điều này để giải quyết vấn đề tạm dừng như sau: Cho Turing Machine và đầu vào x , chúng tôi sử dụng thuật toán sau:Mx
s := 0
while (True)
test if machine M halts on input x in s steps
look at all proofs of length s and see if they prove M doesn't halt on input x
set s := s + 1
Nếu dừng trên đầu vào x , thì nó dừng trong một số bước hữu hạn s , vì vậy thuật toán của chúng tôi chấm dứt.MxS
Nếu không ngừng trên đầu vào x , sau đó theo giả thiết của chúng tôi, có một số bằng chứng chiều dài s nơi có một bằng chứng cho thấy M không làm dừng lại. Vì vậy, trong trường hợp này, thuật toán của chúng tôi luôn chấm dứt.MxSM
Vì vậy, chúng tôi có một thuật toán quyết định vấn đề Dừng luôn luôn chấm dứt. Nhưng chúng tôi biết điều này không thể tồn tại, vì vậy, giả định của chúng tôi rằng luôn có bằng chứng về việc không tạm dừng phải là sai.
if T is true then halt else loop forever