Saltar al contenido
The Lumenary
Universidad avanzadaComputationPlanificado

Computational complexity

Time and space complexity classes, P and NP, polynomial-time reductions, NP-completeness and the Cook–Levin theorem, and the status of the P versus NP problem.

math.comp.complexity-theory

La lección de este tema todavía no se ha escrito. El esquema siguiente forma parte del mapa del plan de estudios y no ha sido revisado.

Se basa en

Requisitos previos obligatorios, hasta el fondo: 25

Aprenderás a

  • Define P and NP and place standard problems in them.
  • Prove NP-completeness of problems such as 3-SAT, vertex cover or graph 3-colouring by reductions.
  • Explain what is known and unknown about P versus NP, and why cryptography relies on unproved hardness assumptions.

Definición

  • P is the class of decision problems solvable in polynomial time by a deterministic Turing machine.
  • NP is the class of decision problems whose yes-instances have certificates that can be verified in polynomial time.
  • A problem is NP-complete if it is in NP and every problem in NP reduces to it in polynomial time.

Teorema

  • Cook–Levin: Boolean satisfiability (SAT) is NP-complete.
  • P ⊆ NP ⊆ PSPACE ⊆ EXPTIME, and P ≠ EXPTIME by the time hierarchy theorem.
  • Whether P = NP is open; it is one of the Clay Mathematics Institute's Millennium Prize Problems.

Errores frecuentes

  • Thinking NP stands for 'not polynomial'; it stands for nondeterministic polynomial time.
  • Believing NP-complete problems cannot be solved in practice; many large instances are solved routinely.

Descubrimientos opcionales

Itinerarios de aprendizaje

Lecturas complementarias

  • Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach (2009)
  • Michael Sipser, Introduction to the Theory of Computation (1996)