1

I'm studing P and NP complexity classes. I like know, why is SAT not in P? Is it because I can not determine if any Boolean expression is satisfiable?

Raphael
  • 72,336
  • 29
  • 179
  • 389
juaninf
  • 503
  • 1
  • 5
  • 11

1 Answers1

5

It is possible to determine whether a boolean expression is satisfiable, the question is how quickly it can be done.

If there are $n$ variables, then we can try all $2^{n}$ possible truth assignments, and eventually we'll find if there is a satisfying one, but this is not polynomial time with respect to the size of the input.

There might be some polynomial time algorithm that does solve SAT, we don't know, however SAT is NP-complete, which gives strong evidence that there isn't a polynomial time algorithm. It all comes down to whether P=NP or not.

Luke Mathieson
  • 18,125
  • 4
  • 55
  • 86
  • I'm confusing, The SAT problem is finding a formula such that is satisfiable for all entries? Or is finding a set of assignments to the formula such that it is satisfiable? Or is finding several formulas that are satisfiable for all entries? – juaninf Nov 08 '13 at 01:12
  • 1
    In the SAT problem, you are given a boolean formula, and you want to know if there's at least one way to satisfy it. So your second definition. – Luke Mathieson Nov 08 '13 at 04:10