  This paper describes Turing's Halting Problem (HP), and reviews the classic
proof that no function exists that can solve HP. The concept of a
"Context-Dependent Function" (CDF), whose behavior varies based on seemingly
irrelevant changes to a program calling that function, is introduced, and the
proof of HP's undecidability is re-examined in light of CDFs. The existence of
CDFs is established via a pair of examples of such functions. The conclusion of
the proof of HP's undecidability is thus shown to be overly strong, as it
doesn't show that no solution to HP exists, but rather that a solution must be
a CDF. A higher-level analysis of this work is given, followed by conclusions
and comments on future work.
