Skip to content

复杂度类 L

Complexity class L · Deterministic logspace

可在确定性对数空间内判定的语言类。

条目类型
定义

形式陈述

复杂度类 L 由可被确定性图灵机使用 O(logn) 工作空间判定的语言组成。输入带只读、工作带可读写、输出或接受状态不计入工作空间;机器仍可使用多项式时间,因为只有多项式多个不同配置,若判定器重复配置就会循环。常数因子和合理机器模型不改变该类。

直觉

L 只允许 O(logn) 个工作位,却可反复读取只读输入,因此它不是“只能看对数个输入字符”。对数空间足以保存常数个顶点编号、输入位置、计数器或指针和有限状态,但不能把整个输入复制到内存,也无法显式存储长度为 n 的访问数组;算法必须反复扫描输入并复用极少状态。由于可用配置数是多项式级,确定性对数空间停机计算可限制在多项式步内。

例子与边界

判断一个字符串是否为回文可用两个 O(logn) 位索引反复读取输入,因此在 L 中。无向 st 可达性也属于 L,但其证明远非简单 DFS,因为显式访问集合需线性空间。定义中的对数空间通常要求 n2,以 max(1,logn) 处理小输入。

无向图 s-t 可达性属于 L(Reingold 定理);更基础的例子是比较两个二进制数或扫描输入计算模固定常数的余数,只需对数甚至常数工作空间。深度优先搜索若保存整个递归栈和 visited 集通常使用线性空间,不能直接作为 L 算法。

输出带通常只写不读且不计入工作空间,否则算法可把无限记忆藏在输出中。输入头位置是否计入配置、机器是否必须停机等细节需采用标准模型,但合理变体通常只造成常数因子差异。

推论与应用

LNLP。对数空间归约能够流式生成输出,因而比多项式时间归约更精细;它常用于描述解析、图遍历和电路求值中的低内存计算。

空间复杂度 的可复用性使 L 能做比同等“存储位数”看起来更多的计算。它包含于 NLP,并与 logspace-uniform NC 电路、流式算法和归约计算紧密相连。

参考资料
  • Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009,Ch. 4, deterministic space complexity and logspace。
  • Michael Sipser, Introduction to the Theory of Computation, 3rd ed., Cengage, 2013,Ch. 8, space complexity and class L。
关系图谱8 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

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