Mathematical Logic And Computation Codexery

NP-completeness

Hardest problems in NP, central to P versus NP.

NP-completeness

NP-completeness is a concept in computational complexity theory that defines the hardest problems in the class NP—problems for which a proposed solution can be verified quickly, but for which no known algorithm can find a solution quickly. These problems are central to the P versus NP question, one of the fundamental unsolved problems in computer science.

field
Computational complexity theory
known_for
Defining the hardest problems in NP, with no known polynomial-time solution
class
NP-C or NPC
key_property
Every problem in NP can be reduced to an NP-complete problem in polynomial time

Lore & Background

NP-complete problems are decision problems where each input has a collection of short (polynomial-size) candidate solutions, and the output is 'yes' if at least one solution is valid. The validity of each solution can be verified quickly (in polynomial time), and a brute-force search can find a valid solution by trying all possibilities. Problems meeting these criteria belong to the class NP, which stands for 'nondeterministic polynomial-time,' referencing nondeterministic Turing machines that formalize brute-force search.

Reader's Guide

The significance of NP-completeness lies in its role as a cornerstone of the P versus NP problem. If any NP-complete problem could be solved quickly (in polynomial time), then all problems in NP could be solved quickly, implying P equals NP. Conversely, if P does not equal NP, then NP-complete problems are inherently hard. Despite no known fast algorithms, NP-complete problems are frequently encountered in practice and are addressed using heuristic methods, approximation algorithms, restriction, and parameterization. The Cook–Levin theorem first established the existence of NP-complete problems via the Boolean satisfiability problem, and Richard Karp later proved many others. Thousands of problems have since been shown NP-complete through reductions. The concept also distinguishes NP-hard problems (which are at least as hard as NP-complete but may not be in NP) and NP-intermediate problems (suspected to be neither in P nor NP-complete, existing only if P≠NP).

Did You Know?

More in Mathematical Logic And Computation 1-21

Spotted an error? Know more?

This is a living reference — every entry is fact-audited, and reader corrections feed straight into our audit queue. Suggest an edit · See this site's audit record

Comments

Loading…
Open in the interactive codex →