Np (Complexity)

In computational complexity theory, NP (nondeterministic polynomial time) is a class of problems for which a solution can be verified in polynomial time by a deterministic Turing machine. NP includes all problems that can be solved in polynomial time, but it is not known whether all problems in NP can be solved in polynomial time.

Np (Complexity)

Areas of application

  • Cryptography
  • Computer science education
  • Database systems
  • Algorithm design
  • Optimization techniques
  • Quantum computing
  • Software testing

Example

Example: The traveling salesman problem is an NP-complete problem, which means that given a solution, it can be verified in polynomial time whether the solution is correct or not. Other examples of NP problems include the knapsack problem, the Boolean satisfiability problem (SAT), and the decision problem for first-order logic.