non-deterministic Turing machine
A non-deterministic Turing machine (NDTM) is a theoretical model of computation that extends the concept of a standard Turing machine. Unlike a deterministic Turing machine, which has a single possible action for each state and input symbol, an NDTM can have multiple possible actions. This means that for a given state and input, the machine can "choose" from several transitions, allowing it to explore many computational paths simultaneously.
NDTMs are primarily used in theoretical computer science to study the complexity of problems. They are particularly important in the context of complexity classes, such as NP, where problems can be solved quickly by guessing a solution and verifying it efficiently. This non-deterministic behavior helps researchers understand the limits of computation and the nature of algorithmic problems.