Member-only story

The Halting Problem

Why should we care?

Steven Curtis
4 min readMar 4, 2023

Have you ever had a program crash on you? A program which the OS closes with the message “This program is not responding” or some other barely decipherable message?

You might be incredibly lucky and have never seen such a message. Well done to you! You should be aware that others *do* have such issues and they’re annoying!

If you’ve been blighted by such computer behaviour you might ask yourself a crucial question. Why doesn’t a phone App store (or similar) act to prevent this software being released? Shouldn’t they have a clever program which will prevent a program that never completes from ever being released?

The answer has two words. The Halting Problem.

The halting problem

This is where a program `H` (more specifically a Turing Machine) should determine if a decision problem `P` for a given input `I` will ever halt.

It is important to note that for a Turing machine a program and an input are essentially the same thing. That is, the input of a Turing machine is actually the initial state of the machine itself.

Halting means that the program will either accept it and halt or reject it an halt.

The halting oracle H

--

--

No responses yet