Deterministic and non-deterministic Turing machines differ in terms of their computation histories. In order to understand this difference, it is essential to have a solid understanding of Turing machines and their computational capabilities.
A Turing machine is a theoretical model of computation that consists of an input tape, a read/write head, a set of states, and a transition function. It can be thought of as an abstract representation of a computer. The input tape contains the input string, and the read/write head scans the tape, reading and writing symbols as it goes. The machine's behavior is determined by its state and the symbol currently under the read/write head.
Deterministic Turing machines (DTMs) are machines that always have a unique next move for any given state and input symbol. In other words, the transition function of a DTM is a well-defined mapping from the current state and input symbol to the next state, symbol to be written, and head movement direction. This deterministic nature ensures that the computation history of a DTM is uniquely determined by the initial configuration of the machine.
On the other hand, non-deterministic Turing machines (NTMs) have the ability to have multiple possible next moves for a given state and input symbol. The transition function of an NTM is not a single mapping but rather a set of possible mappings. This non-determinism allows an NTM to explore multiple computation paths simultaneously. In other words, an NTM can be in multiple states at the same time and can make non-deterministic choices at each step of the computation. The computation history of an NTM can be thought of as a tree, where each branch represents a possible computation path.
To determine whether a given input string is accepted by an NTM, we consider all possible computation paths and check if at least one of them leads to an accepting state. If there exists such a path, the NTM accepts the input string. This non-deterministic nature of NTMs gives them a more powerful computational capability compared to DTMs.
It is worth noting that the concept of non-determinism in Turing machines is purely theoretical and does not have a direct counterpart in physical computers. However, it is a useful concept in computational complexity theory as it helps in understanding the limits of computation and the classification of computational problems.
To illustrate the difference between deterministic and non-deterministic Turing machines, let's consider an example. Suppose we have a Turing machine that needs to determine whether a given number is prime. A DTM would follow a deterministic algorithm, such as checking divisibility by all numbers up to the square root of the given number. The computation history of the DTM would be a linear sequence of steps, with a unique next move at each step.
On the other hand, an NTM could explore multiple computation paths simultaneously. It could make non-deterministic choices, such as guessing a potential divisor, and check if it leads to a factor of the given number. The computation history of the NTM would be a tree-like structure, with branches representing different choices and possible outcomes.
Deterministic and non-deterministic Turing machines differ in terms of their computation histories. Deterministic machines have a unique next move for any given state and input symbol, resulting in a linear computation history. Non-deterministic machines, on the other hand, can have multiple possible next moves, leading to a tree-like computation history. This non-determinism gives NTMs a more powerful computational capability compared to DTMs.
Other recent questions and answers regarding Decidability:
- Can a tape be limited to the size of the input (which is equivalent to the head of the turing machine being limited to move beyond the input of the TM tape)?
- What does it mean for different variations of Turing Machines to be equivalent in computing capability?
- Can a turing recognizable language form a subset of decidable language?
- Is the halting problem of a Turing machine decidable?
- If we have two TMs that describe a decidable language is the equivalence question still undecidable?
- How does the acceptance problem for linear bounded automata differ from that of Turing machines?
- Give an example of a problem that can be decided by a linear bounded automaton.
- Explain the concept of decidability in the context of linear bounded automata.
- How does the size of the tape in linear bounded automata affect the number of distinct configurations?
- What is the main difference between linear bounded automata and Turing machines?
View more questions and answers in Decidability

