Skip to content

非确定性空间复杂性类

Nondeterministic space class · NSPACE

由非确定性图灵机在给定空间界内判定的语言集合。

条目类型
定义

形式陈述

对函数 s:NNNSPACE(s(n)) 包含能由非确定性图灵机 NO(s(n)) 工作空间内判定的语言。具体地,对每个输入 x

  • 每条计算分支都在工作格预算内并最终停机;
  • x 属于语言,当且仅当至少一条分支接受;
  • x 不属于语言时,所有分支都拒绝。

空间按空间复杂度逐分支计量,再取最大值。分支数量、所有分支累计使用的格子数和运行总步数都不进入 s(n)

s(n)logn 时,一个 O(s(n)) 空间机器在固定长度 n 的输入上至多有

ns(n)O(1)2O(s(n))=2O(s(n))

个配置。输入头位置贡献 n,有限状态、工作头位置和工作带内容贡献其余因子。若一条接受路径重复配置,删去两次出现之间的回路仍是接受路径,所以最短接受路径短于配置数。对空间可构造的标准预算,可以用 O(s(n)) 位计数器给每条分支加时钟;clocked decider 约定因而与配置图可达性视角相容。

直觉

非确定空间把计算看成有限配置图上的路径搜索。机器不保存整棵分支树,只在一条候选路径上维护当前配置;成员输入只需某条路径到达接受配置。即使图有指数多个节点,一份配置仍只有 O(s(n)) 位,这为后续用空间换时间的确定性模拟留下了余地。

确定性空间类相比,计费单位没有变化,变化的是配置图的出度和接受量词。确定机器每个配置至多一个后继,非确定机器则可以选择后继,但不存在“把所有分支内存加总”的共享机器。

例子与边界

有向可达性的对数空间算法

设图的顶点为 {s,a,b,t},边为

sa,at,sb,bb.

机器保存当前顶点和一个不超过 |V|1 的步数计数器,非确定地选择一条出边。分支 sat 接受;分支 sbb 在计数器到达 3 后拒绝。一般 n 顶点图中,若存在路径就存在不重复顶点、长度至多 n1 的路径,当前位置与计数器各需 O(logn) 位;检查所猜边时只需扫描只读输入。因此有向 STCON 属于 NL。

分支与停机边界

一条分支使用 10 个格、另一条使用 20 个格时,本次输入的空间是 20,不是 30。分支可能运行指数步而不增加工作区域;NSPACE 不是并行内存或时间复杂度。

若只给 recognizer,允许非成员输入上某些分支永不停止,就不能直接把它当作 NSPACE 判定机。必须先在 s(n)logn、预算可构造等标准条件下利用配置去环和时钟,让每条分支停机,再调用本页的类与闭包结论。

推论与应用

确定机器是非确定机器的特例,故

DSPACE(s(n))NSPACE(s(n)).

常用并集类为

NL=NSPACE(logn),NPSPACE=k1NSPACE(nk).

Savitch 定理以平方空间确定化配置可达性,推出 NPSPACE=PSPACE。模拟时间可以很大,不能据此推出 P=NP。

Immerman–Szelepcsényi 定理证明 s(n)logn 时 NSPACE 对补封闭;它使用更精细的计数式可达性方法,并非定义的直接改写。

参考资料
  • Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009, §§4.1–4.2.
  • Michael Sipser, Introduction to the Theory of Computation, 3rd ed., Cengage, 2013, §8.1.
关系图谱9 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

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