←back to thread

108 points BerislavLopac | 1 comments | | HN request time: 0.204s | source
Show context
bob1029 ◴[] No.43714776[source]
> Most "definitely harder than NP" problems require a nontrivial background in theoretical computer science or mathematics to understand.

One of the simplest examples of this is automatic program synthesis.

Searching for the optimal (e.g., shortest) program that satisfies a given set of inputs/outputs (function) is an undecidable (worse than exponential time) problem similar to the halting problem. The exponent in this case would have been the size of the instruction set, but we still don't know how many cycles we need (i.e., is it even practical to run?).

In applications like genetic programming, we deal with the halting problem by specifying a maximum # of cycles that the program interpreter will run for each time. The ability of the synthesized programs to halt in a bounded time becomes part of selection pressure. Candidates that return poor or no results within the constraints are quickly eliminated. This can be further compounded by making the candidates evolve their own resource limits as part of their genome.

Put differently, we can approximately solve the halting problem for some smaller problems with clever search techniques. I don't think talking about these things in absolute terms is very useful. Everything depends on the problem and the customer's expectations.

replies(2): >>43714848 #>>43719848 #
1. frontfor ◴[] No.43714848[source]
> I don't think talking about these things in absolute terms is very useful. Everything depends on the problem and the customer's expectations.

Agreed. In the real world, approximate solutions to hard problems are often good enough.

For instance, the TSP might be a hard problem, but solving it exactly is pointless since the distances between nodes might be subject to measurement uncertainty anyway, and actual travel times might not be fixed as they might fall under a distribution.

Having said that, it’s still worth studying the theoretical aspects of these problems.