In computational complexity theory, the exponential hierarchy is a hierarchy of complexity classes that is an exponential time analogue of the polynomial hierarchy. As elsewhere in complexity theory, “exponential” is used in two different meanings (linear exponential bounds for a constant c, and full exponential bounds ), leading to two versions of the exponential hierarchy.[1][2] This hierarchy is sometimes also referred to as the weak exponential hierarchy, to differentiate it from the strong exponential hierarchy.[2][3]
The complexity class EH is the union of the classes for all k, where (i.e., languages computable in nondeterministic time for some constant c with a oracle) and . One also defines
and
An equivalent definition is that a language L is in if and only if it can be written in the form
where is a predicate computable in time (which implicitly bounds the length of yi). Also equivalently, EH is the class of languages computable on an alternating Turing machine in time for some c with constantly many alternations.
EXPH is the union of the classes , where (languages computable in nondeterministic time for some constant c with a oracle), , and again:
A language L is in if and only if it can be written as
where is computable in time for some c, which again implicitly bounds the length of yi. Equivalently, EXPH is the class of languages computable in time on an alternating Turing machine with constantly many alternations.