“有向图 可达性给出 NL 的标准完全问题,并自然处于 P 中。Immerman–Szelepcsényi 定理 给出 $\mathrm{NL}=\mathrm{coNL}$,可视为“不可达也…”
形式陈述 ​
复杂度类 P 是确定性多项式时间语言的集合:
因此
取所有固定次数的多项式,而非预先选定某个
直觉
P 是复杂度理论的粗粒度“可高效判定”基线。它表达存在一个最坏情况下的确定性多项式算法,不评价这个算法的常数、次数、缓存行为或现实输入分布。
这个基线的价值来自闭合性和模型稳健性,而不是“多项式总是实用”的经验判断。若任务的输出不是一个是/否位,就应先明确其判定版本或另用函数复杂度类,不能仅凭口语上的“容易求解”把它放进 P。
例子与边界
显式图上的连通性 ​
对无向图的邻接表编码,判定给定顶点
伪多项式算法没有自动证明 P 成员性 ​
0–1 背包的常见动态规划按容量建立
保证的边界 ​
启发式在常见实例上快速、随机算法以高概率快速、或某个实现的平均时间良好,都不是 P 定义要求的确定性最坏界。整数改用一元编码可能让原本伪多项式的算法变成输入长度的多项式,但那已经是不同的编码语言。P 也不应与按多数接受概率定义的 PP 混淆。
推论与应用
P 对补、并和交封闭:运行原判定器后交换接受与拒绝即可判定补语言;顺序运行两个判定器并组合结果,只会相加多项式时间。每台确定性机器也可视为不分支的非确定性机器,因此
这项包含是否严格,仍是未解决的 P 与 NP 问题。时间为多项式必然只访问多项式个工作格,所以还有
在已知精确算法仍不实用时,近似比、参数化问题和Meet-in-the-Middle分别改变解质量、复杂度参数或指数搜索结构。这些是三种不同的算法承诺,不能由“属于 P”或“尚无 P 算法”替代。
NP把基线从确定性求解改为多项式时间验证,形成后续归约与完全性理论的入口。
参考资料
- Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009, §2.1.
- Michael Sipser, Introduction to the Theory of Computation, 3rd ed., Cengage, 2013, §7.2.