The document discusses the halting problem, which asks if there are problems for which no algorithm exists. Alan Turing proved that non-computable problems exist by introducing the halting problem - determining if a given program will ever finish running. The document shows that no procedure can solve the halting problem by considering a paradoxical program: if it says the program halts, it leads to a contradiction, and if it says the program doesn't halt, it also leads to a contradiction. This proves the halting problem is non-computable, as any procedure to solve it would have to either give the wrong answer or not terminate. A formal model of computation is needed to give a rigorous proof.