Skip to content

定义Definition

复杂性类 NC

施工中 · 内容逐步修订

Nick's Class · NC

由多项式规模、多对数深度的有界扇入电路族判定的语言类,并区分一致与非一致版本。

形式陈述 ​

先固定门基为二元 AND/OR 与一元 NOT。对每个固定整数 k≥1,非一致 NCk 由大小 nO(1)、深度 O(logk⁡n) 的电路族判定;资源界对充分大的 n 成立,有限个小长度单独处理。每个长度上的电路必须对该长度的所有输入正确,大小与深度中的常数不能随 n 改变。非一致 NC 是这些固定层级的并 ⋃k≥1NCk。

若再要求由对数空间生成器从 1n 输出电路,就得到 logspace-uniform NCk 及其并 logspace-uniform NC;也可另行指定更强的一致性。本页以下与机器复杂度类比较时均选这个对数空间一致版本。此时 NC⊆P,是否相等未知,并有 NC1⊆L⊆NL⊆NC2。非一致版本仍保留上述深度层级,却不能把这些机器类包含关系照搬过去。多项式大小限制总门数,多对数深度限制并行依赖轮次。

直觉

NC 把“可显著并行化”形式化为多项式数量处理单元在 polylog 时间内完成:大量局部操作同时进行,只留下多对数轮依赖;电路规模限制总工作,深度限制渐近关键路径。它不是“使用多核就快一点”。单纯拥有多项式时间算法不保证属于 NC,因为算法可能存在本质串行依赖;反过来,指数数量门即使深度常数也不算有效并行。通常还加入一致性,确保电路族可由小空间程序生成。

例子与边界

两个 n 位整数相加可用并行前缀电路在 O(log⁡n) 深度、O(n) 或近线性规模完成。二进制编码整数矩阵的乘法可并行计算各整数乘积与求和,许多树归约也属于 uniform NC。这里按全部输入位数计资源,并输出精确结果的有限位串;矩阵乘积的输出位长至多增加输入位长与矩阵维数的对数项,不把无限精度运算当作一门。一般电路值问题是 P 完全问题,被视为难以有 NC 算法的代表,但这并不是 P≠NC 的无条件证明。

这些例子沿用前述一致性与有界扇入约定:去掉一致性,电路可能携带不可计算建议;允许无界 AND/OR 扇入,则得到相应 AC 类。深度 O(logk⁡n) 中 k 必须是固定常数,不能随输入增长。GPU 上跑得快也不等于属于 NC:通信、缓存、内存带宽和有限处理器数量影响现实加速,而 NC 讨论随输入长度增长的理论规模与深度。

推论与应用

NC 提供并行可解性的理论基准,支撑 PRAM 算法、电路设计和 P 完全性分析,并把总工作量与并行时间同时纳入分类。

定义依赖 布尔电路、规模与深度 以及 电路族一致性。其层级 NC1,NC2,… 按对数深度指数细分,并通过 并行复杂度包含链 与 L、NL、P 对照。

参考资料
  • Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009,Chs. 1–8。
  • Stasys Jukna, Boolean Function Complexity: Advances and Frontiers, Springer, 2012,Chs. 1–6。
关系图谱9 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
分类位置

上位 / 更一般

暂未标注直接上位概念。

下位 / 直接特例