A Mechanical Proof of the Cook-Levin Theorem
A Mechanical Proof of the Cook-Levin Theorem
复制标题
库克-莱文定理的机械证明
DOI:
--
复制
发表时间:
2004
期刊:
影响因子:
--
通讯作者:
J. Cowles
中科院分区:
文献类型:
--
作者:
Ruben Gamboa;J. Cowles
As is the case with many theorems in complexity theory, typical proofs of the celebrated Cook-Levin theorem showing the NP-completeness of satisfiability are based on a clever construction. The Cook-Levin theorem is proved by carefully translating a possible computation of a Turing machine into a boolean expression. As the boolean expression is built, it is obvious that it can be satisfied if and only if the computation corresponds to a valid and accepting computation of the Turing machine. The details of the argument that the translation works as advertised are usually glossed over; it is the translation itself that is discussed. In this paper, we present a formal proof of the correctness of the translation. The proof is verified with the theorem prover ACL2.