在斯蒂芬·库克(Stephen Cook)关于P与NP问题的论文中,[1]他陈述了以下内容[2]:
可行性论文:自然问题具有多项式时间算法,但算法可行。
我的问题是,“一个自然问题” 到底是什么意思(或者一般说来,是什么意思)?谈论自然问题似乎很普通,但是我还没有找到定义。我似乎丢失了一些东西。这是我正在考虑的几个可能的答案:
第一个可能的答案
库克在他的论文中说,必须解释“自然”。他说:“通常,我们不认为具有参数的类是自然的,例如可嵌入k类表面上的图集,k > 1。” [3]现在,首先,这似乎是在说什么。 “自然”不是什么,而是什么;但是,如果每个问题都是自然问题还是非自然问题,并且这充分描述了所有非自然问题,那么就足以定义自然问题。(但是限定词“一般”表明这不是对不自然的问题的充分和必要的描述。)
我认为“带参数的类”是指固定参数的可处理性,我们所说的是指可能的输入受到限制从而迫使可行性的问题。因此,如果我们确定背包的重量,我们可以使用多项式时间算法来解决背包问题[4](但通常在多项式时间中没有解决方案)。鉴于此,我认为“自然”意味着问题不受限制(“人为”限制?),从而迫使多项式时间算法脱离了在多项式时间内无法解决的问题。
我不确定这是否是理解库克“自然”概念的正确方法,原因是我不确定“自然”的限定在这里做什么。如果您放弃“自然”,那么您将得到“问题具有可行的算法,前提是它具有多项式时间算法。” 但这似乎是完全合理的:背包问题没有可行的算法,因为它没有多项式时间算法。具有固定参数可伸缩性的背包具有可行的算法,因为它具有多项式时间算法。两种说法似乎都符合可行算法存在问题的概念。
我认为这可能是理解库克含义的最佳指南,因为库克实际上是在转身并对其进行定义。我还认为,这个自然概念是由StackExchange问题所捕获的。[5]
但是还有另一个。
第二个可能的答案
威廉·加斯阿奇(William Gasarch)在他的论文“将问题分类为复杂性类别” [6]中说,他将进行“从字面上讨论什么是自然问题” [7]。在本文结尾处,[8]有对话形式的交流,一位发言者说:
“是什么使问题变得自然?一方面,我并不是出于没有进入P的目的而构造问题。因此,这不是愚蠢的问题。然后它上升到自然的程度了吗?”
因此,在我看来,Gasarch所说的是,如果我们遇到的问题不是故意构造的,那么我们可以说它不在P中,那是自然的。因此,通过一些创造性的解释,Gasarch似乎在说至少与库克一致的观点:一方面,Gasarch说没有以不在P中的唯一目标来构建这个问题是不自然的。另一方面,库克说,如果没有参数,问题自然而然。但是仅仅一致性并不能产生定义。
第三个可能的答案
在Wikipedia上有关“适度问题”的条目[9]上,提出了雅克·哈达玛(Jacques Hadamard)关于适度问题的概念的定义,然后指出,适度问题“可能被视为'自然'问题”。因为存在着以这些问题为模型的物理过程。” 因此,只有且仅当它对物理过程建模时,问题才是自然的吗?
根据Wikipedia的说法,Hadamard的资格是(i)存在一个解决方案,(ii)该解决方案是唯一的,并且(iii)该解决方案的行为随初始条件而不断变化。这似乎与其他两个定义不同。我的感觉是,“自然”的使用方式不是完全相同的(特别是如果我们同意这样的解释,即当且仅当它模拟物理过程时才是自然的问题),但我想将其包括在内,因为我遇到了在我对这个问题的研究中,并有一些联系点。
所以我的问题是:什么是自然问题?这些答案中的任何一个或它们的某种组合是否正确?我还有其他答案吗?谢谢。
- 《问题陈述》,2006年,在线发表在Clay Mathematics上;标题:“ P与NP问题”,http://www.claymath.org/sites/default/files/pvsnp.pdf
- p。3
- p。4
- https://zh.wikipedia.org/wiki/背包的问题#0.2F1_背包的问题
- P中最难知道的自然问题?我认为,自然的问题遵循此描述,但并不将k限制为最大。
- https://www.cs.umd.edu/~gasarch/papers/classcomp.pdf
- p。2。
- p。47-8,第25节
- https://zh.wikipedia.org/wiki/摆好姿势的问题