P, NP, NP-Vollständigkeit und Reduktionen