P = NP
The honourable George Pólya had a great strategy for dealing with tough problems, which was to solve an auxiliary problem first. A simpler surrogate can inch you closer to solving the grander problem.
That’s one way to view the boolean satisfiability problem (SAT) in relation to P versus NP. SAT asks
Given a logical formula made of variables, ANDs, ORs and NOTs, is there some assignment of true or false values that make the whole formula true?
By the Cook–Levin theorem, SAT is NP-complete. So if SAT can be solved in polynomial time, then every problem in NP can be solved in polynomial time. In that case, P = NP.
Suppose the formula is written in conjunctive normal form (CNF)
where each is a literal, meaning either a variable or its negation .
To turn this into a polynomial system, represent Boolean values by , and encode each literal numerically as
A clause is false exactly when all of its literals are false. So clause j is satisfied exactly when
So a SAT instance is satisfiable if and only if this polynomial system has a solution. Therefore SAT reduces in polynomial time to deciding whether a Boolean polynomial system has a solution.
Hence, if that polynomial feasibility problem were in P, then SAT would also be in P. Since SAT is NP-complete, this would imply
P = NP.