关于P vs NP问题的探究
一、引言
今天我们来说一个计算机领域里的一个超级难题,P 是否等于 NP。早在 2000 年 5 月的时候,Clay Institute 将这个问题列为了数学里的七大千禧问题之一,如果有人能证明出 P = NP 或 P ≠ NP,就会获得该机构整整 100 万美元的奖金。并且一旦证明出 P = NP 将会改变现有人类所有的知识体系。本文将浅析对P vs NP问题。
二、P vs NP四大问题
在分析P vs NP问题之前,我们更应该理解其中几大问题的定义与区别。
1、P问题
P问题是指能够使用确定性图灵机在多项式时间内解决的所有决策问题。简单的来说,确定性图灵机在运行程序时,每次只能进行一次选择,不能同时运行。若进行到最后不能达到目的,就只能返回到这一步,再尝试其他的选择。
2、NP问题
NP是一组决策问题,对于这些问题实例来说,如果答案为“是”,那么表示该实例使用确定图灵机可在多项式时间内验证成功,其中 NP 表示不确定的多项式时间(non-deterministic polynomial time)。
3、NPC问题
在计算复杂度理论中,满足以下情况的问题是NP-complete问题:
1)该问题是NP问题;