Many scientific fields have their own versions of the impossibility theorem. In Mathematics, there is Godel's Incompleteness Theorem which states roughly that any but the simplest toy mathematical system has facts that can never be proven or disproven. In Computer Science, Turing's Halting Theorem states that there are computer programs that will never stop running (In other words, are unable to solve certain tasks as they won't ever stop running or find a solution).
Just chiming in to point out that that's an incorrect statement of Turing's Halting Theorem. The Halting Theorem is a statement that a very specific kind of computer program does not exist, and the precise statement is perhaps somewhat technical. The Halting Theorem states that there is no Turing machine H operating on ordered pairs (F,X), such that for all inputs (F,X) we have that H(F,X) halts and computes whether the Turing machine encoded by F (under a fixed but standard encoding) halts on input X. The Halting Theorem (as the negative solution to the Halting Problem) is intimately related to Gödel's Incompleteness Theorem.
Yeah I was once a computer science undergraduate so Turing's Halting Theorem is something I have studied a long time ago. I was trying to provide the simplest possible explanation of the theorem with more focus on the theorem's implications rather than trying to explain the theorem's details, which would have had to gone into details about Turing Machines, Lambda Calculus and a bunch of first order predicate logic. As a result, I may have over simplified things and badly mangling the explanation. For that I apologize.
Let me try again... The simplest explanation I can give is probably this: In just about every field of science, we humans have proven that there bounds to what science and technology can achieve. There are some truths we can never know, some things we cannot do. It is a fundamental fact of nature that certain things contradict themselves and end up being impossible. And because science and technology is a study of nature, there is no way to achieve these things. This means in Math, there are certain things we cannot prove.
In Machine Learning, we can never come up with one single learning algorithm that is best at every single task we set it to accomplish. If you think about it, Machine Learning is all about learning from information. However, this information is always incomplete and we never have the complete set of information (ie, the true decision boundary). Frankly, if we had the complete set of information for a specific task, then we can already define a scientific theory (just like we have for Gravity, Quantum Mechanics, Natural Selection, etc) and can already make highly precise predictions without the need for Machine Learning. So in a way, every prediction a Machine Learning algorithm makes is a best guess. It is an educated guess based on what information it has available, but it is still only a guess. That is why we are talking about accuracy in percentages, because as every gambler knows guesses can sometimes be wrong.
This is part of why every single "intelligence", regardless how superior it is, can be beaten, because in most real world situations no one have the complete information and have to resort to making educated guesses. Even SkyNet has to guess. Sorry Singularity conspiracists, the technological singularity is just a purely theoretical conjecture that won't ever happen in real life.
Last edited: