Reduction: Any problem in NP → SAT

All problems in NP can be reduced to a generalization of SAT which we call CIRCUIT SAT

In circuit SAT we are given a circuit, a DAG whose vertices are gates of five different types

One of the sinks of the DAG is designated as the output gate

Given an assignment of values to the unknown inputs, we can evaluate the gates of the true circuit in topological order, using the rules of Boolean logic.

Then CIRCUIT SAT is the search problem:

But also: CIRCUIT SAT can be reduced to SAT

Below the circuits are Conjugate AND clauses that enforces above circuits

So now ALL search problems reduce to CIRCUIT SAT:

Suppose AA is a problem in NPNP