Cook formalizó el concepto de NP-completitud en un famoso artículo de 1971 titulado "The Complexity of Theorem Proving Procedures" ("La complejidad de los procedimientos de demostración de teoremas"), donde también formuló el problema de la relación entre las clases de complejidad P y NP.