您的困惑似乎是因为问题有多种定义“解决方案”(或见证人)的方式。解决方案的类型不是问题定义的一部分。例如,对于图形着色,解决方案的明显类型是为每个顶点分配一种颜色(最多使用所需数量的颜色);然而,根据加莱–哈斯–罗伊–维特定理ñ P同样有效的另一种解决方案是将方向分配给每个边(创建至多需要数量的顶点的有向路径)。这两种类型的解决方案都可以在多项式时间内检查,但是可以通过不同的算法进行检查,并且它们还具有不同的组合性质。例如,对于典型的问题实例,顶点颜色分配的数量将与边缘方向的数量不同。关于加速NP型问题的指数算法的大量研究可以解释为找到相同问题的新解决方案系列,而该系列解决方案的检查可能性较小。
中的每个问题都有一个 “解决方案”,仅由空字符串组成。要验证这是一个解决方案,只需检查解决方案字符串是否为空,然后对问题实例运行多项式时间算法。使用这种类型的解决方案,每个yes实例都有一个有效的解决方案,每个no实例都有零,满足的定义并显示。如果那么相同的空字符串解决方案也将适用于每个问题,表明Ñ P ü P P ⊂ Ù P P = Ñ P Ñ P Ñ P = û PPñ Pü PP ⊂ ü PP = N Pñ PN P = U P。因此,在空字符串解决方案是唯一的这一事实与针对同一问题的某种其他类型的解决方案是非唯一的这一事实之间没有矛盾。