DTIME

Uses your system voice; voice and rate in settings.

Snapshot

≈ 4 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

In computational complexity theory, DTIME (or TIME) is the computational resource of computation time for a deterministic Turing machine. It represents the amount of time (or number of computation steps) that a "normal" physical computer would take to solve a certain computational problem using a certain algorithm. It is one of the most well-studied complexity resources, because it corresponds so closely to an important real-world resource (the amount of time it takes a computer to solve a problem). The resource DTIME is used to define complexity classes, sets of all of the decision problems that can be solved using a certain amount of computation time. If problem instances of input size n can be solved in , the problem is in the complexity class (or ). There is no restriction on the amount of memory space used, but there may be restrictions on some other complexity resources (like alternation).

In computational complexity theory, DTIME (or TIME) is the computational resource of computation time for a deterministic Turing machine. It represents the amount of time (or number of computation steps) that a "normal" physical computer would take to solve a certain computational problem using a certain algorithm. It is one of the most well-studied complexity resources, because it corresponds so closely to an important real-world resource (the amount of time it takes a computer to solve a problem). The resource DTIME is used to define complexity classes, sets of all of the decision problems that can be solved using a certain amount of computation time. If problem instances of input size n can be solved in , the problem is in the complexity class (or ). There is no restriction on the amount of memory space used, but there may be restrictions on some other complexity resources (like alternation). \mathsf{P} = \bigcup_{k\in\mathbb{N}} \mathsf{DTIME}(n^k) P is the smallest robust class that includes linear-time problems \mathsf{DTIME}\left(n\right) (AMS 2004, Lecture 2.2, pg. 20). P is one of the largest complexity classes considered "computationally feasible". A much larger class using deterministic time is EXPTIME, which contains all of the problems solvable using a deterministic machine in exponential time. Formally, we have \mathsf{EXPTIME} = \bigcup_{k \in \mathbb{N} } \mathsf{DTIME} \left( 2^{ n^k } \right) . Larger complexity classes can be defined similarly. Because of the time hierarchy theorem, these classes form a strict hierarchy; we know that \mathsf{P} \subsetneq \mathsf{EXPTIME} , and on up. ==Machine model== For robust classes, such as P, the exact machine model used to define DTIME can vary without affecting the power of the resource. The computational complexity literature often defines DTIME based on multitape Turing machines, particularly when discussing very small time classes. A multitape deterministic Turing machine can never provide more than a quadratic time speedup over a singletape machine. Due to the linear speedup theorem for Turing machines, multiplicative constants in the time bound do not affect the extent of DTIME classes; a constant multiplicative speedup can always be obtained by increasing the number of states in the finite state control and the size of the tape alphabet. In the statement of Papadimitriou, for a language , Let L \in \mathsf{DTIME}(f(n)) . Then, for any \epsilon > 0 , L \in \mathsf{DTIME}(f'(n)) , where f'(n) = \epsilon f(n) + n + 2 . ==Generalizations== Using a model other than a deterministic Turing machine, there are various generalizations and restrictions of DTIME. For example, if we use a nondeterministic Turing machine, we have the resource NTIME. The relationship between the expressive powers of DTIME and other computational resources are very poorly understood. One of the few known results is \mathsf{DTIME}(O(n)) \neq \mathsf{NTIME}(O(n)) for multitape machines. This was extended to \mathsf{DTIME}(O(n\sqrt{\log^*n})) \neq \mathsf{NTIME}(O(n\sqrt{\log^*n})) by Santhanam, where \log^*n is the iterated logarithm. If we use an alternating Turing machine, we have the resource ATIME. ==Notes== ==References==

Text derived from https://en.wikipedia.org/w/index.php?oldid=1368702964 under CC BY-SA 4.0; modifications have been made.