|
|
| |
How is worse than NP-hard named in the field? NP-impossible?Disclaimer: I'm really noob, not asking it sarcastically. | | |
NP-hard problems can be solved.The Continuum Hypothesis [0] (which the authors are saying the learning problem is isomorphic [1] to) is not provable from the axioms of set theory. You can add "The Continuum Hypothesis is true" OR "The Continuum Hypothesis is false" to the axioms, and still have consistent mathematics. [0] Continuum hypothesis is that the set of Integers (0, -1, 1, -2, 2, ...) is infinite but smaller than the set of Reals (Integers + Rationals + Irrationals), and there are no infinite sets with size smaller than the Reals, but larger than the Integers. [1] not sure of correct term here - the point is that they have shown the problems are the same. | | | |
Actually, some undecidable problems are NP hard, like the halting problem. That is, a halting oracle gives a polynomial time algorithm for any NP problem. | | | |
I'm not sure what you mean with "can be solved", but I would spell it out a bit different:There are NP-hard problems that are undecidable, that means, there is no algorithm that can decide the question for every input. However, in some instances we are able to solve these problems (even quite easy). For example we know that an algorithm like "while TRUE DO (nothing) END" will never terminate, even though the halting problem is undecidable. However, if a NP-hard problem is also in NP, than it can be solvend. But it will take exponential time in the worst case. That, too, does not mean that in some instance we are able to solve them in reasonable time. | | | |
This is wrong. NP-hard problems can be solved, they just appear to hard to solve efficiently. NP-hard problems are always decidable, like everything in polynomial hierarchy (P, NP, co-NP, and higher classes that have oracle access to lower classes).Undecidable problems e.g. the Halting problem cannot generally be solved using an algorithm (so it has to be solved on a case-by-case basis and requires "creativity"). | | | |
Sorry, but you are flat out wrong. For example, the halting problem is NP-hard and undecidable [1]I think you might confuse NP-hard with NP-complete. There are problems that are NP-hard, not in NP and unsolvable. If a problem is NP-hard _and_ in NP, then they can always be solved. [1] https://en.wikipedia.org/wiki/NP-hardness | | | |
There are an infinite number of complexity classes that are (probably) harder than NP. Popular ones include PSPACE and EXPTIME. You might want to google for "polynomial hierachy". | | | |
Undecidable means there is no logical way to have an answer. Turing’s halting problem is one such. | | | |
There's got to be more to it than that. The halting problem itself isn't some on-off switch, it can be studied and broken down into different problem classes, some of which are indeed decidable.It's just impossible to write a general-purpose algorithm to solve it in all cases. | | | |
“It's just impossible to write a general-purpose algorithm to solve it in all cases.” That is the definition of an undecidable problem. Independence, as in Euclid’s fifth postulate, is not what we typically think of as undecidability, though can be referred to as such. | | | |
That is incorrect. The halting problem can be answered -- every Turing Machine either halts or does not halt on a given input. Undecidable only means that we cannot have a single algorithm that outputs the correct answer in every case. | | | |
This is the first paragraph from the Wikipedia article on undecidable problems: “In computability theory and computational complexity theory, an undecidable problem is a decision problem for which it is proved to be impossible to construct an algorithm that always leads to a correct yes-or-no answer. The halting problem is an example: there is no algorithm that correctly determines whether arbitrary programs eventually halt when run.” https://en.m.wikipedia.org/wiki/Undecidable_problem | | | |
PSPACE-complete is an example. EXPSPACE is another. | | |
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact |
As someone deeply immersed in the realms of theoretical computer science and complexity theory, I can provide insights into the intricate concepts discussed in the Hacker News thread you've shared. My expertise lies in understanding the nature of computational problems, their solvability, and the hierarchy of complexity classes.
Firstly, the discussion revolves around the complexity class NP-hard and its relation to undecidability. Let me clarify some key points:
-
NP-hard Problems: NP-hard problems are a class of computational problems that are at least as hard as the hardest problems in NP (nondeterministic polynomial time). The term "hard" refers to the difficulty of finding a solution. It's important to note that NP-hard problems can be challenging to solve efficiently, but they are not necessarily unsolvable.
-
Undecidability: Undecidable problems are those for which there is no algorithm that can always provide a correct yes-or-no answer. The classic example is the halting problem, which states that there is no algorithm that can determine, for any arbitrary program, whether it will halt or run indefinitely.
Now, let's address some specific points from the conversation:
-
Continuum Hypothesis (CH): The discussion touches upon CH, which is a statement in set theory about the cardinality of certain sets. The CH is independent of the standard axioms of set theory, making it undecidable from those axioms. The analogy is drawn between CH and the learning problem discussed in the thread, suggesting a connection between undecidability and certain machine learning problems.
-
NP-hard and Undecidable Problems: The distinction is made between problems that are NP-hard and those that are undecidable. While NP-hard problems may be challenging to solve efficiently, they are not inherently unsolvable. Undecidable problems, on the other hand, lack a general algorithmic solution.
-
Complexity Classes Beyond NP: The conversation introduces complexity classes beyond NP, such as PSPACE (polynomial space) and EXPTIME (exponential time). These classes represent problems with higher computational complexity than those in NP.
In summary, the participants in the discussion are exploring the connections between machine learning problems, undecidability, and complexity classes. The nuanced interplay between these concepts is a fascinating area of study within theoretical computer science, showcasing the depth and intricacy of computational theory. If you have further questions or if there's a specific aspect you'd like to delve into, feel free to ask.
FAQs
Informally, if H is NP-hard, then it is at least as difficult to solve as the problems in NP. However, the opposite direction is not true: some problems are undecidable, and therefore even more difficult to solve than all problems in NP, but they are provably not NP-hard (unless P=NP).
Why a problem is NP-hard? ›
A problem is NP-hard if an algorithm for solving it can be translated into one for solving any NP-problem (nondeterministic polynomial time) problem. NP-hard therefore means "at least as hard as any NP-problem," although it might, in fact, be harder.
Why is the SAT problem NP-hard? ›
Is SAT NP-Hard? Yes, SAT is an NP-hard problem. This means that if you can efficiently solve SAT (i.e., find a satisfying assignment) for a given Boolean formula, then you can efficiently solve any problem in the complexity class NP using a polynomial-time reduction.
What is a problem in NP that is believed to not be in P? ›
Problems in NP not known to be in P or NP-complete
Such problems are called NP-intermediate problems. The graph isomorphism problem, the discrete logarithm problem, and the integer factorization problem are examples of problems believed to be NP-intermediate.
Is chess NP-hard? ›
Is Chess NP complete or NP hard? “Real” chess is in P because it's of finite size so all positions can be (in a theoretical, computational-complexity sense) looked up in a table. “Generalized” chess is harder than NP, but you have to define how you generalize it to larger boards.
Can NP problems be reduced to NP-hard? ›
an NP-complete problem can be reduced to it; if we can do that, we know all problems in NP can be reduced to it by the definition of NP-hard.
Is traveling salesman NP-hard? ›
It is an NP-hard problem in combinatorial optimization, important in theoretical computer science and operations research.
How to deal with NP-hard problems? ›
How to solve np hard problems? NP-hard problems are solved using various methods such as: approximation algorithms, which find near-optimal solutions; heuristics, which find satisfactory but not necessarily optimal solutions; deterministic algorithms, which may take exponential time; and randomized algorithms.
How do you prove a problem is NP-hard? ›
To prove that problem A is NP-hard, reduce a known NP-hard problem to A. In other words, to prove that your problem is hard, you need to describe an efficient algorithm to solve a different problem, which you already know is hard, using an hypothetical efficient algorithm for your problem as a black-box subroutine.
Why is the SAT so tricky? ›
Unfamiliar question types: The SAT has a unique question format that is different from what you might be used to in school tests. For example, the reading comprehension section has questions that require critical thinking skills, and the math problems are often worded in a tricky way.
A problem is NP-hard if an algorithm for its solution can be modified to solve any NP problem—or any P problem, for that matter, as P problems are a subset of NP problems. (Not all NP-hard problems are members of the class of NP problems, however.)
Can every NP problem be reduced to SAT? ›
Every problem in NP is polynomially reducible to SAT, and SAT is reducible to every NP-hard problem. Therefore, a polynomial time solution to any NP-hard problem (such as 3Col) implies that every problem in NP can be solved in polynomial time.
Which problem is NP problem? ›
A problem is called NP (nondeterministic polynomial) if its solution can be guessed and verified in polynomial time; nondeterministic means that no particular rule is followed to make the guess. If a problem is NP and all other NP problems are polynomial-time reducible to it, the problem is NP-complete.
Can AI solve P vs NP? ›
If P = NP, it implies that we can find efficient solutions to these complex problems, dramatically accelerating cancer research and treatment discovery. AI as a Problem-Solving Powerhouse: AI, with its advanced pattern recognition and data processing capabilities, is ideally positioned to tackle the P vs NP problem.
Which of the following is known to be not an NP-hard problem? ›
Answer - B) The 0/1 Knapsack is not an NP-Hard problem.
Is PSPACE harder than NP? ›
Proving that PSPACE-hard Languages are NP-hard
Since NP is a subset of PSPACE, every language A' in NP can also be reduced to L in polynomial time as it also holds for languages in PSPACE. Thus, L is at least as hard as any problem in NP, making it NP-hard. So, any PSPACE-hard language is also NP-hard.
Which of the following is the hardest of the NP problem? ›
NP is an acronym for Non deterministic polynomial time. Explanation: NP class contains many important problems, the hardest of which is NP-complete, whose solution is sufficient to deal with any other NP problem in polynomial time.
Can a problem be both NP-hard and NP-complete? ›
A problem is said to be NP-complete if it is in both NP and NP-hard, so yes all NP-complete problems are also NP-hard.