Science Atlas

How We Know What We Know
Sign In
Text size
100%
Theme
Theory

Halting Problem

Computer Science

The halting problem asks whether it is possible to write a single general algorithm that, given the description of any computer program together with a specific input, can always correctly determine whether that program will eventually finish running, or halt, or will instead continue running forever. British mathematician Alan Turing proved in a 1936 paper, introducing what is now called the Turing machine as a formal model of computation, that no such general algorithm can exist: the halting problem is undecidable for the class of all possible program-input pairs. Turing's proof works by a diagonalization argument, similar in structure to the one Georg Cantor used to show some infinities are larger than others, showing that assuming a halting-decider program exists leads directly to a logical contradiction. The result is foundational to the theory of computability, establishing that there are precisely defined problems no computer program can ever solve in general, regardless of how much computing power or time is available, a limit inherent to the nature of computation itself rather than a limitation of any particular machine or programming language.

Facts
Proposed Year
1937 1
Connections

Belongs To

Sources
1. Wikidata: Halting Problem
lead
Quote, lead
Alan Turing proved in 1937 that the halting problem is undecidable, meaning that no general algorithm exists that can correctly solve the problem for all possible program-input pairs.
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.