0

Prove that every NP problem is solvable in $O(2^{n^{k}})$ where $k$ is constant.

My approach was that, let's look at the 3-SAT problem. We can solve it by bruteforce in $O(2^n)$, where $n$ is number of variables in 3-SAT. Also, we know that 3-SAT is NP-Complete, that means every NP problem is polinomially (let's say in $n^k$) reducable to the 3-SAT $\Rightarrow$ every NP problem is solvable in $O(2^{n^k})$. Am i right?

  • 1
    A 3SAT formula could contain more than $2^n$ clauses. Also (though that’s in your favor), a reduction running in time T doesn’t produce an instance with T variables. – Yuval Filmus Oct 21 '19 at 17:03
  • The basic idea does work, though; you just need to be more careful. – Yuval Filmus Oct 21 '19 at 17:03
  • Yeah, but reduction does produce polynomial number of variables. How can we fix the "more than $2^n$ clauses" problem? Each "guess" $x_1, x_2, ..., x_n$ we can check in $O(m), m$-number of clauses, so total complexity still holds $O(2^{n^{k'}})$ for some constant $k'$ even if $m=2^n$. – strncmp Oct 21 '19 at 17:33
  • Note also that $n$ (in your goal) is the size of the input. – Yuval Filmus Oct 21 '19 at 17:34
  • There could be an unlimited number of clauses. Perhaps $2^{2^n}$, where $n$ is the number of variables. – Yuval Filmus Oct 21 '19 at 17:35

0 Answers0