TOPICS
Search

Counting Complexity


Counting complexity studies the resources needed to count solutions rather than merely decide whether a solution exists. The class #P consists of functions counting the accepting computation paths of polynomial-time nondeterministic Turing machines (Valiant 1979). The class #EXP permits nondeterministic computation time 2^(p(N)), where p is a polynomial in input length N. The subclass #E permits time 2^(O(N)).

A counting problem is #EXP-complete under polynomial-time metric reductions when it belongs to #EXP and every function in that class can be computed by a polynomial-time transformation of the input, one evaluation of the counting function, and polynomial-time postprocessing of the input and answer. The output is written in binary, and the postprocessing cost is measured in the lengths of its inputs.

Chen and Xie (2026) give a fixed finite family of connected polyominoes for which counting translation-only tilings of an n×n square, with n supplied in binary, is #EXP-complete under these reductions. Its counting function belongs to #E. The fixed tile set and binary encoding are essential parts of the statement.


See also

Counting Hierarchy, Turing Machine

Explore with Wolfram|Alpha

References

Chen, Q. and Xie, B. "Counting Square Tilings with a Fixed Set of Polyominoes Is #EXP-Complete." 30 Oct 2026. https://arxiv.org/abs/2610.42063v1.Valiant, L. G. "The Complexity of Enumeration and Reliability Problems." SIAM J. Comput. 8, 410-421, 1979. https://doi.org/10.1137/0208032.

Cite this as:

Weisstein, Eric W. "Counting Complexity." From MathWorld--A Wolfram Resource. https://mathworld.wolfram.com/CountingComplexity.html

Subject classifications