Non-Deterministic Polynomial Time

What Does Non-Deterministic Polynomial Time Mean?

Non-deterministic polynomial time (NP) is actually a marker used to point to a set of problems and bounds of the capability of certain types of computing. NP refers to the set of problems that can be solved in polynomial time by a non-deterministic Turing machine.


Techopedia Explains Non-Deterministic Polynomial Time

Non-deterministic polynomial time is based on the phrase "polynomial time," which refers to whether an algorithm can perform within certain bounds relevant to speed. Polynomial time emerged as a way to talk about feasibility of algorithm work and development.

If a problem is in non-deterministic polynomial time, the non-deterministic Turing machine can first guess at the solution, and then run a verifiable algorithm that will confirm whether or not that guess was correct. Verifier-based definition or machine definition programs will in essence test the initial choices of the non-deterministic Turing machine to verify results.

All of this is highly theoretical computing structure. While machine learning has been making inroads in going beyond deterministic systems, the idea of verifying non-deterministic choices is still in its infancy. Look for more development on this frontier of computing.


Related Terms

Latest Computer Science Terms

Related Reading

Margaret Rouse

Margaret Rouse is an award-winning technical writer and teacher known for her ability to explain complex technical subjects to a non-technical, business audience. Over the past twenty years her explanations have appeared on TechTarget websites and she's been cited as an authority in articles by the New York Times, Time Magazine, USA Today, ZDNet, PC Magazine and Discovery Magazine.Margaret's idea of a fun day is helping IT and business professionals learn to speak each other’s highly specialized languages. If you have a suggestion for a new definition or how to improve a technical explanation, please email Margaret or contact her…