Build an NFA on input that chooses one of the clauses nondeterministically and reads input length , accepting if clause is not satisfied and rejecting otherwise.
accepts all inputs with a length greater than or equal to . also has states, indicating that it can work in polynomial time.
Because the clause is not satisfied if accepts a, is a nonsatisfying assignment .
As a result,N accepts all of's unsatisfactory assignments.
Let's say that minimising NFAs takes polynomial time. Construct an NFA that accepts unsatisfactory assignments. Also, if and only if is not satisfiable, N accepts any binary string.
In the case of new N' put the new minimization algorithm to the test. If includes precisely one state and accepts all binary strings, reject ; otherwise, accept .
As a result, 3SAT has a polynomial time algorithm, and so P = NP.