| ▲ | soraminazuki 4 hours ago | ||||||||||||||||||||||
Yep, calling it an "unsolved" problem is a misnomer. We already have mathematical proof that it's impossible. But that aside, it's such a shame that many drinking the AI Kool-Aid aren't even aware of the theoretical limits of a computer's capabilities. | |||||||||||||||||||||||
| ▲ | mjd 4 hours ago | parent [-] | ||||||||||||||||||||||
This sort of theoretical result is not always as clear-cut as you suggest. Computers are finite machines. There is a theorem that although a machine with finite memory can add, multiplication requires unbounded memory. Somehow we muddle along and use computers for multiplication anyway. More to your point there is a whole field of people who write useful programs using languages in which every program must be accompanied by a proof that it halts on all inputs. (See for example https://lean-lang.org/ or David Turner's work on Total Functional Programming from about 20 years ago.) Other examples are easy to find. The simplex algorithm for linear optimization requires exponential time in general, and the problem it solves is NP-hard, but in practice works well on problems of interest and is widely used. Or consider the dynamic programming algorithms for problems like subset-sum. Theory is important, but engineering is also important. | |||||||||||||||||||||||
| |||||||||||||||||||||||