← 最新论文
💻 computer science

The complexity of downward closures of indexed languages

本文通过一种新颖的方法,利用基于半群的词摘要将索引文法转化为上下文无关文法,分别对非确定性和确定性自动机建立了三重和四重指数级上界,并给出了匹配的下界,从而解决了关于计算索引语言向下闭包复杂性的开放性问题。

原作者: Richard Mandel, Corto Mascle, Georg Zetzsche

发布于 2026-05-28
📖 1 分钟阅读☕ 轻松阅读

原作者: Richard Mandel, Corto Mascle, Georg Zetzsche

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象你拥有一个庞大且无限复杂的图书馆,里面收藏着无数故事。有些故事很短,有些长达数百万页,还有些遵循着极其复杂的规则,以至于普通计算机甚至无法读取它们。在计算机科学领域,这些故事被称为索引语言(Indexed Languages)。它们就像是标准“上下文无关语言”(Context-Free Languages,即支撑编程语言语法的语言)的超级增强版,但多出了一层复杂性:“栈的栈”。

把普通栈想象成一摞盘子。你可以加一个盘子,也可以拿走一个盘子。而索引语言则像是拥有了一摞“整塔的盘子”。你可以添加一整座塔,或者拿走一整座塔。这使得该系统极其强大,但也极难分析。

问题:“向下闭包”

本文的作者们关注一种简化这些庞大图书馆的具体方法。他们称之为向下闭包(Downward Closure)

想象你有一个非常长的句子:“那只敏捷的棕色狐狸跳过了那只懒惰的狗。”
这个句子的“向下闭包”是指通过删除字母(但保持顺序)所能构成的所有可能更短的句子的集合。

  • “狐狸跳”在闭包中。
  • “敏捷狗”在闭包中。
  • “狗敏捷”不在闭包中(因为顺序改变了)。

我们为什么关心这个?因为原始图书馆可能是无限的且无法处理的。但“向下闭包”(所有可能子故事的集合)始终是正则的(Regular)。用计算机术语来说,这意味着它可以由一个简单的有限机器(如基本流程图)来描述。这是一种将混乱、无限的一团糟转化为整洁、可管理的模式列表的方法。

核心问题: 我们已知可以将这些复杂的索引语言转化为简单的列表(向下闭包)。但我们不知道这个列表会有多大。它会像电话簿那么大吗?像整个互联网那么大?还是大到编写它所需的时间超过宇宙年龄?

发现:三重指数爆炸

作者曼德尔(Mandel)、马斯克莱(Mascle)和泽策施(Zetzsche)最终解开了这个谜团。他们证明,将一个索引语言转化为其简单的向下闭包,所得到的机器规模可能是**三重指数级(triply exponential)**的。

让我们用一个比喻来拆解“三重指数”的含义:

  1. 线性: 如果你有 10 个物品,你需要 10 个盒子。
  2. 指数级: 如果你有 10 个物品,你需要 2102^{10}(1,024)个盒子。
  3. 双重指数级: 如果你有 10 个物品,你需要 22102^{2^{10}}(超过一百万亿)个盒子。
  4. 三重指数级: 如果你有 10 个物品,你需要 222102^{2^{2^{10}}} 个盒子。这个数字如此巨大,几乎无法理解。这就像试图数清地球上每个海滩上的每一粒沙子,然后对地球上每个海滩上的每一粒沙子都重复这个过程……

作者们表明,对于索引语言而言,“向下闭包”机器的规模大致就是如此巨大。他们还证明,你无法做得更好;对于某些语言,机器必须这么大。

他们是如何做到的:“摘要”技巧

如何将一摞塔压缩成一个简单的列表,同时不丢失识别模式的能力?

作者们使用了来自数学分支**半群理论(Semigroup Theory)**的一个巧妙技巧。想象你在阅读一个很长的故事,但你只关心故事的“氛围”,而不是每一个字。

  • 如果一个故事反复出现特定的模式(就像歌曲中的副歌),你不需要每次都写下整个副歌。你只需写下“副歌”然后继续。
  • 作者们为这些栈创建了一个数学“摘要”。他们不再追踪栈中的每一个“盘子”或“塔”,而是用单个摘要符号替换长序列的相同模式。

他们证明,尽管这些栈是无限的,但可以用这些摘要来替换它们。一旦这样做,复杂的“索引文法”就变成了更简单的“上下文无关文法”(一种标准的计算机文法)。然后,他们利用现有方法将该简化文法转化为最终的向下闭包机器。

结果:新纪录

在这篇论文之前,人们知道这个问题是可解的,但不知道代价有多大。

  • 上界: 他们构建了一种生成机器的方法,这需要三重指数级的时间和空间。
  • 下界: 他们还构建了一个特定的、棘手的语言,该语言迫使任何机器至少达到三重指数级的规模。

这意味着他们找到了这个问题的确切“价格标签”。这不仅仅是“困难”,而是“三重指数级困难”。

他们还将此应用于另外两个问题:

  1. 比较: 如果你有两个复杂的语言,你能判断它们的“向下闭包”是否相同吗?答案是肯定的,但这是一个**co-3-NEXP 完全(co-3-NEXP-complete)**问题。用通俗的话说:这是一个极其难以解决的谜题,处于计算机在合理时间范围内理论上能够处理的边缘。
  2. 泵引阈值: 他们证明,在有限索引语言中,在开始重复模式之前能生成的最长单词的长度也是三重指数级的。

总结

将索引语言想象成一个巨大的、无限的迷宫。“向下闭包”就是穿过该迷宫所有可能捷径的地图。

  • 旧知识: 我们知道地图存在。
  • 新知识: 我们现在知道,对于最复杂的迷宫,地图是如此巨大,以至于计算机绘制它所需的时间超过了宇宙的年龄。
  • 方法: 作者们找到了一种通过总结重复部分来缩小迷宫规模的方法,使他们能够绘制地图并证明其必须有多大。

他们不仅仅是猜测;他们构建了地图,并证明了没有任何更小的地图可能奏效。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →