P versus NP problem | Complexity Theory & Algorithmic Solutions (2024)

mathematics

verifiedCite

While every effort has been made to follow citation style rules, there may be some discrepancies.Please refer to the appropriate style manual or other sources if you have any questions.

Select Citation Style

Print

verifiedCite

While every effort has been made to follow citation style rules, there may be some discrepancies.Please refer to the appropriate style manual or other sources if you have any questions.

Select Citation Style

Feedback

Thank you for your feedback

Our editors will review what you’ve submitted and determine whether to revise the article.

Also known as: polynomial versus nondeterministic polynomial problem

Written by

William L. Hosch William L. Hosch was an editor at Encyclopædia Britannica.

William L. Hosch

Fact-checked by

The Editors of Encyclopaedia Britannica Encyclopaedia Britannica's editors oversee subject areas in which they have extensive knowledge, whether from years of experience gained by working on that content or via study for an advanced degree. They write new content and verify and edit content received from contributors.

The Editors of Encyclopaedia Britannica

Last Updated: Article History

In full:
polynomial versus nondeterministic polynomial problem
Related Topics:
computational complexity
Millennium Problem

See all related content →

P versus NP problem, in computational complexity (a subfield of theoretical computer science and mathematics), the question of whether all so-called NP problems are actually P problems. A P problem is one that can be solved in “polynomial time,” which means that an algorithm exists for its solution such that the number of steps in the algorithm is bounded by a polynomial function of n, where n corresponds to the length of the input for the problem. Thus, P problems are said to be easy, or tractable. A problem is called NP if its solution can be guessed and verified in polynomial time, and nondeterministic means that no particular rule is followed to make the guess.

Linear programming problems are NP, as the number of steps in the simplex method, invented in 1947 by American mathematician George Dantzig, grows exponentially with the size of the input. However, in 1979 Russian mathematician Leonid Khachian discovered a polynomial time algorithm—i.e., the number of computational steps grows as a power of the number of variables, rather than exponentially—thereby showing that linear programming problems are actually P. This discovery allowed the solution of formerly intractable problems.

Britannica QuizNumbers and Mathematics

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.) A problem that is both NP and NP-hard is said to be NP-complete. Thus, finding an efficient algorithm for any NP-complete problem implies that an efficient algorithm can be found for all NP problems, since a solution for any problem belonging to this class can be recast into a solution for any other member of the class. In 1971 American computer scientist Stephen Cook proved that the satisfiability problem (a problem of assigning values to variables in a formula in Boolean algebra such that the statement is true) is NP-complete, which was the first problem shown to be NP-complete and opened the way to showing other problems that are members of the class of NP-complete problems. A famous example of an NP-complete problem is the traveling salesman problem, which has wide applications in the optimization of transportation schedules. It is not known whether any polynomial time algorithms will ever be found for NP-complete problems, and determining whether these problems are tractable or intractable remains one of the most important questions in theoretical computer science. Such a discovery would prove that P=NP=NP-complete and revolutionize many fields in computer science and mathematics.

For example, modern cryptography relies on the assumption that factoring the product of two large prime numbers is not P. Note that verifying the product of two prime numbers is easy (polynomial time), but computing the two prime factors is hard. The discovery of an efficient algorithm for factoring large numbers would break most modern encryption schemes.

In 2000 American mathematician Stephen Smale devised an influential list of 18 important mathematical problems for solving in the 21st century. The third problem on his list was the P versus NP problem. Also in 2000 it was designated a Millennium Problem, one of seven mathematical problems selected by the Clay Mathematics Institute of Cambridge, Massachusetts, U.S., for a special award. The solution for each Millennium Problem is worth $1 million.

William L. Hosch

P versus NP problem | Complexity Theory & Algorithmic Solutions (2024)
Top Articles
Latest Posts
Article information

Author: Rev. Porsche Oberbrunner

Last Updated:

Views: 5396

Rating: 4.2 / 5 (53 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Rev. Porsche Oberbrunner

Birthday: 1994-06-25

Address: Suite 153 582 Lubowitz Walks, Port Alfredoborough, IN 72879-2838

Phone: +128413562823324

Job: IT Strategist

Hobby: Video gaming, Basketball, Web surfing, Book restoration, Jogging, Shooting, Fishing

Introduction: My name is Rev. Porsche Oberbrunner, I am a zany, graceful, talented, witty, determined, shiny, enchanting person who loves writing and wants to share my knowledge and understanding with you.