Defining the Class NP
What does it actually mean for a problem to be "verifiable fast"? This post builds the formal definition of NP from the ground up, using the Rubik's Cube, Sudoku, and the strange but satisfying idea of a certificate.
What does it actually mean for a problem to be "verifiable fast"? This post builds the formal definition of NP from the ground up, using the Rubik's Cube, Sudoku, and the strange but satisfying idea of a certificate.
What does it actually mean for a problem to be "solvable fast"? This post builds the formal definition of the complexity class P from the ground up — using sorting, binary search, and the contrast between polynomial and exponential growth.
We have built every piece separately. Now we put them together and ask the question that has haunted mathematics and computer science for over fifty years.