blanketglossary

NP-completeness

Definition

In computational complexity theory, NP-complete problems are the hardest of the problems to which solutions can be verified quickly. Somewhat more precisely, a problem is NP-complete when:It is a decision problem, meaning that for any input to the problem, the output is either "yes" or "no". Each input to the problem is associated with a collection of short solutions, which might or might not validly solve the input. The output is "yes" when at least one of these solutions is valid, and "no" when none of them are. The validity of each solution can be verified quickly, and a brute-force search algorithm can find a valid solution by trying all possible solutions. The problem can be used to simulate every other problem for which we can verify quickly that a solution is valid. Hence, if we could find valid solutions of some NP-complete problem quickly, we could quickly find valid solutions for every other problem in which a given solution can be easily verified.

Related concepts

2-EXPTIME2-satisfiability3-satisfiabilityAC0ACC0ALL (complexity)APXAbstract machineAlfred AhoAlgorithmAlmost completeApproximation algorithmArithmetical hierarchyArthur–Merlin protocolBPP (complexity)BQPBipartite graphBoolean hierarchyBoolean satisfiability problemBrute-force searchCC (complexity)Charles E. LeisersonChristos PapadimitriouClay Mathematics InstituteClifford SteinClique problemCo-NPCo-NP-completeCommun. ACMComplement (complexity)Complete (complexity)Complexity classComputational complexity theoryComputer programmerComputer scientistComputers and IntractabilityConcatenationCook–Levin theoremCycle graphDLOGTIMEDSPACEDTIMEDavid S. JohnsonDecision problemDeterministicDeterministic algorithmDominating set problemDominic WelshDon KnuthDonald KnuthELEMENTARYEXPSPACEEXPTIMEEuler diagramExponential hierarchyFL (complexity)FNP (complexity)FP (complexity)Gadget (computer science)Galley proofsGerhard J. WoegingerGraph coloring problemGraph isomorphismGraph isomorphism problemGraph theoryGrzegorczyk hierarchyHalting problemHamiltonian path problemHans L. BodlaenderHeuristic (computer science)IP (complexity)Independent set problemInformation-theoretic securityInteractive proof systemIntersectionIntroduction to AlgorithmsIsomorphicIsomorphismJeffrey UllmanJohn HopcroftKarp's 21 NP-complete problemsKenneth SteiglitzKleene starKnapsack problemL (complexity)Labours of HerculesLadner's theoremLance FortnowList of NP-complete problemsList of complexity classesList of open problems in computer scienceLogarithmic-space many-one reductionLogarithmic spaceManindra AgrawalMany-one reductionMarek KarpinskiMetaheuristicMichael GareyMichael SipserMillennium Prize ProblemsMinimum spanning treeNC (complexity)NEXPTIMENL-completeNL (complexity)NONELEMENTARYNP-IntermediateNP-hardNP-hardnessNP (complexity)NSPACENTIMENational Central UniversityNational Tsing Hua UniversityNondeterministic Turing machineOpen problemP-completePP (complexity)PR (complexity)PSPACEPSPACE-completeP (complexity)P = NP problemP versus NP problemParameterized complexityParity PPlanar graphPlanar separator theoremPolyLPolynomial-time reductionPolynomial hierarchyPolynomial timePresburger arithmeticProbabilistically checkable proofQMAQuasi-polynomial timeRE (complexity)RL (complexity)RP (complexity)R (complexity)Reduction (complexity)Regular languageRichard J. LiptonRichard KarpRobert TarjanRonald L. RivestSC (complexity)SIAM Journal on ComputingSIGACTSL (complexity)Scott AaronsonStanford UniversityStephen A. CookSteven RudichStrongly NP-completeSubgraph isomorphism problemSubset sum problemSudokuSuperpolynomialSymposium on Theory of ComputingTC0TC (complexity)TFNPTheoretical computer scienceThomas H. CormenToniann PitassiTravelling Salesman (2012 film)Travelling salesman problemTuring completenessTuring machineTuring reductionUP (complexity)Union (set theory)Universal Turing machineUniversity of LiverpoolValiant–Vazirani theoremVertex (graph theory)Vertex cover problemW. H. Freeman and CompanyZPP (complexity)♯P♯P-complete

19 concepts already in your glossary