3 ms·
In domains like applied physics that's often true, but as programmers there are plenty of interesting questions we can't hope to answer in many real-world situa
by hansvm 4y ago
In domains like applied physics that's often true, but as programmers there are plenty of interesting questions we can't hope to answer in many real-world situations because of uncomputability:
- Probability that a bit flip will introduce a bug
- Number of reasonable ways to solve a problem in a given language for some measure of reasonableness (e.g., as a heuristic when examining whether two similar programs are similar out of necessity or if there might have been influence from one to the other or via some joint hidden variable)
- (generally, most statistics over a space of programs)
- Optimal super-optimization with jumps allowed
- Minimal boilerplate complexity to describe an algorithm in a language
- (generally, most questions about optimizing some target over a space of programs)
- ...We don't care about all of them, but a vast array of questions about classes of programs are simply not answerable in any finite period of time.
You might be able to answer the above for sufficiently small and well-behaved inputs (e.g., in restricted languages whose constraints enable certain sorts of static analyses), but in general you cannot, and it happens often enough to definitely be a problem for real-world programs.