In
computational complexity theory
In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
, the
complexity class
In computational complexity theory, a complexity class is a set of computational problems of related resource-based complexity. The two most commonly analyzed resources are time and memory.
In general, a complexity class is defined in terms ...
EXPTIME (sometimes called EXP or DEXPTIME) is the
set of all
decision problems that are solvable by a
deterministic Turing machine
A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algor ...
in
exponential time, i.e., in
O(2
''p''(''n'')) time, where ''p''(''n'') is a polynomial function of ''n''.
EXPTIME is one intuitive class in an
exponential hierarchy of complexity classes with increasingly more complex oracles or quantifier alternations. For example, the class
2-EXPTIME In computational complexity theory, the complexity class 2-EXPTIME (sometimes called 2-EXP) is the set of all decision problems solvable by a deterministic Turing machine in O(22''p''(''n'')) time, where ''p''(''n'') is a polynomial function of ' ...
is defined similarly to EXPTIME but with a
doubly exponential time bound. This can be generalized to higher and higher time bounds.
EXPTIME can also be reformulated as the space class APSPACE, the set of all problems that can be solved by an
alternating Turing machine in polynomial space.
EXPTIME relates to the other basic time and space complexity classes in the following way:
P ⊆
NP ⊆
PSPACE ⊆ EXPTIME ⊆
NEXPTIME ⊆
EXPSPACE
In computational complexity theory, is the set of all decision problems solvable by a deterministic Turing machine in exponential space, i.e., in O(2^) space, where p(n) is a polynomial function of n. Some authors restrict p(n) to be a linear f ...
. Furthemore, by the
time hierarchy theorem and the
space hierarchy theorem, it is known that P ⊊ EXPTIME, NP ⊊ NEXPTIME and PSPACE ⊊ EXPSPACE.
Formal definition
In terms of
DTIME,
Relationships to other classes
It is known that
and also, by the
time hierarchy theorem and the
space hierarchy theorem, that
In the above expressions, the symbol ⊆ means "is a subset of", and the symbol ⊊ means "is a strict subset of".
so at least one of the first three inclusions and at least one of the last three inclusions must be proper, but it is not known which ones are. Most experts believe all the inclusions are proper. It is also known that if
P = NP, then EXPTIME
NEXPTIME, the class of problems solvable in exponential time by a
nondeterministic Turing machine. More precisely, EXPTIME ≠ NEXPTIME if and only if there exist
sparse languages in NP that are not in P.
EXPTIME can be reformulated as the space class APSPACE, the set of all problems that can be solved by an
alternating Turing machine in polynomial space. This is one way to see that PSPACE ⊆ EXPTIME, since an alternating Turing machine is at least as powerful as a deterministic Turing machine.
EXPTIME-complete
A decision problem is EXPTIME-complete if it is in EXPTIME and every problem in EXPTIME has a
polynomial-time many-one reduction to it. In other words, there is a polynomial-time
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
that transforms instances of one to instances of the other with the same answer. Problems that are EXPTIME-complete might be thought of as the hardest problems in EXPTIME. Notice that although it is unknown whether NP is equal to P, we do know that EXPTIME-complete problems are not in P; it has been proven that these problems cannot be solved in
polynomial time, by the
time hierarchy theorem.
In
computability theory, one of the basic undecidable problems is the
halting problem: deciding whether a
deterministic Turing machine
A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algor ...
(DTM) halts. One of the most fundamental EXPTIME-complete problems is a simpler version of this, which asks if a DTM halts in at most ''k'' steps. It is in EXPTIME because a trivial simulation requires O(''k'') time, and the input ''k'' is encoded using O(log ''k'') bits which causes exponential number of simulations. It is EXPTIME-complete because, roughly speaking, we can use it to determine if a machine solving an EXPTIME problem accepts in an exponential number of steps; it will not use more. The same problem with the number of steps written in unary is
P-complete.
Other examples of EXPTIME-complete problems include the problem of evaluating a position in
generalized chess
Chess is a board game for two players, called White and Black, each controlling an army of chess pieces in their color, with the objective to checkmate the opponent's king. It is sometimes called international chess or Western chess to dist ...
,
checkers,
or
Go (with Japanese ko rules). These games have a chance of being EXPTIME-complete because games can last for a number of moves that is exponential in the size of the board. In the Go example, the Japanese ko rule is sufficiently intractable to imply EXPTIME-completeness, but it is not known if the more tractable American or Chinese rules for the game are EXPTIME-complete.
By contrast, generalized games that can last for a number of moves that is polynomial in the size of the board are often
PSPACE-complete. The same is true of exponentially long games in which non-repetition is automatic.
Another set of important EXPTIME-complete problems relates to
succinct circuit
Concision (also called brevity, laconicism, or conciseness) is a writing principle of eliminating redundancy.UNT Writing Lab. "Concision, Clarity, and Cohesion." Accessed June 19, 2012Link./ref> For example, this:
* "It is a fact that most argum ...
s. Succinct circuits are simple machines used to describe some graphs in exponentially less space. They accept two vertex numbers as input and output whether there is an edge between them. For many natural
P-complete graph problems, where the graph is expressed in a natural representation such as an
adjacency matrix
In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph. The elements of the matrix indicate whether pairs of vertices are adjacent or not in the graph.
In the special case of a finite simple ...
, solving the same problem on a succinct circuit representation is EXPTIME-complete, because the input is exponentially smaller; but this requires nontrivial proof, since succinct circuits can only describe a subclass of graphs.
References
{{ComplexityClasses
Complexity classes