11

Many complexity classes have "complete" problems. Do complete problems exist for the complexity class of problems that can be solved in $O(1)$ time?

A complication is that this class depends on the model of computation; a problem can be solvable in $O(1)$ time in one reasonable model of computation but not another, given that "reasonable" typically means polynomial-time equivalence with a Turing machine. However, it could still be worked out for specific reasonable models.

I think it makes the most sense to look at constant-time many-one reductions. However, I'm also open to looking at other sensible reductions if there is literature on them.

Does anything like this exist, or has it been studied, for any model of computation?

Mike Battaglia
  • 1,071
  • 6
  • 19

2 Answers2

4

Since reading the input is necessary for almost all problems, we need at least $\Omega(n)$ time for nearly all problems, where $n$ is the size of the input. Therefore, you may think of the class of linear time problems, which is already defined.

However, we still do not know any $O(n)$-complete or $O(n^2)$-complete problem. The field of fine-grained complexity has some new results in this area, but the classes are problem-based (for example, APSP is equivalent to Radius, Negative Triangle, ...).

Mohemnist
  • 253
  • 1
  • 3
4

I think that for $O(1)$ problems, all languages are complete under "constant-time reductions" except $L = \Sigma^*$ and $L = \emptyset$

Suppose that $L, L' \in O(1)$ and $L \neq 0, L \neq \Sigma^*$

Let $x_Y \in L, x_N \notin L$

This is a constant-time reduction from $L'$ to $L$:

  • given $x$ solve $L'$ in $O(1)$ time
  • if $x \in L'$ then output $x_Y$, otherwise output $x_N$

So $L$ is complete for $O(1)$ (... lazy reduction, lazy result :-)).

Vor
  • 12,743
  • 1
  • 31
  • 62