This document discusses the complexity classes P, NP, and NP-Complete.
P is the class of problems solvable in polynomial time. NP is the class of problems verifiable in polynomial time. NP-Complete problems are the hardest problems in NP, such that any NP problem can be reduced to an NP-Complete problem in polynomial time. Some examples of problems in each class are given, such as fractional knapsack in P and NP, and SAT and the traveling salesman problem in NP-Complete. It is still an open question whether P equals NP.