Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There are some such algorithms. You don't encounter them as often because we are biased towards encountering algorithms that can be implemented efficiently or at least can be approximated efficiently (i.e., a great many "NP-complete" problems admit of usable approximation algorithms with varying degrees of usability).

Plus, in perhaps a bit deeper philosophical sense, we are ourselves biased towards expressing problems that have relatively simple complexities as their solution. While there are some simple problem that have complicated optimal solutions, certainly, I'd say that in general the vast bulk of problems for which the optimal solution has Ackermann's complexity are problems that we can't really express or manipulate, either. We focus a lot on our ability to create and express solutions because problems in the real world tend to force themselves upon us since long since before computer science was even a thing, but our ability to express problems is limited too!



> There are some such algorithms. You don't encounter them as often because we are biased towards encountering algorithms that can be implemented efficiently

Oh, but inverse Ackerman is very slow, and exp(a^(-1)(n)) is very slow as well. Same with the iterated logarithm.

The later pops up in recursive algorithms that partition in parts of size log n. I don't think that's a very weird thing to do.


Moreover, most hard problems are simply proven hard because they incorporate a hard problem.

Eg. Many proofs that say "this problem is NP-Hard" just prove that "you would have to solve xyz NP-Hard problem to solve this"


NP-Hardness proofs don't say "you would have to solve xyz NP-Hard problem to solve this", they say "if you could solve the problem you're interested in, you could use the solution to solve all other NP-complete problems". It's not that they incorporate a hard problem -- rather, you show that your problem is hard enough that it can be used to solve other hard problems.


I'm not clear what you mean -- how else would you prove a problem NP-hard in general? That's usually the most sensible way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: