Alle Beslutningsproblem som er løselige i polynomisk tid.
Problemer i denne klassen omfatter rundt alle problemene vi har gått gjennom i pensum.
Fordi alle problemer som kan løses i polynomisk tid, kan også verifiseres i polynomisk tid.
Vi kan definere kompleksitetsklassen ved Formelle språk
Viktig å merke seg
Dette er veldig tricky tldr; vi kan ha uendelig loops, og derfor er det viktig at alle strenger enten aksepteres eller avvises for at et språk skal være bestemt av en algoritme.
Lang forklaring
En algoritmes aksepterte språk, , er mengden av alle strenger som algoritmen aksepterer. Men, det betyr ikke nødvendigvis at en streng som ikke er i () avvises. Grunnen til dette er at det kan forekomme uendelige loops, som gjør at ikke bestemmes.
Derfor sier vi at et språk er bestemt av en algoritme dersom alle strenger i aksepteres, og alle strenger som ikke er i avvises.