所有上下文相关的语言都是可以决定的吗?


12

我正在浏览上下文相关语言Wikipedia定义,发现了这一点:

每种语言类别都是其正上方类别的适当子集。每个类别中的任何自动机和任何语法都在其正上方的类别中具有等效的自动机或语法。

我可以看到线性有界自动机在文章的排序器的正下方。如果是这种情况,那么这意味着LBA上的每个计算都将在某个时刻停止(因为每个LBA都是决策者)。但是我觉得可能有一些计算可以同时在LBA上运行而永不停止。例如,我们可以在LBA上编写一个计算

  1. 阅读磁带上的第一个符号并向右移动;
  2. 阅读下一个符号,然后向左移动。

这种(无用的)计算(显然是LB计算)将无限期地左右摆动,并且永不停止,因此不能作为决策者。我在哪里想错了?


1
确定CSL与是否存在非终止LBA无关:仅需存在一个LBA。
拉斐尔

Answers:


9

首先,所有上下文相关的语言都是可以确定的,因为它们可以被LBA接受(如您所说),并且Turing机器比LBA更强大。

但是,您在询问其他问题。会有LBA循环吗?答案是肯定的。您举了一个例子。但是,您可以将每个LBA修改为接受相同语言但绝不循环的图灵机。要观察到这一点,请观察您可以在上模拟并跟踪LBA到目前为止获得的所有配置。如果有一个配置出现两次,则表明检测到一个周期。在这种情况下,您将停止拒绝。这里重要的是LBA在线性空间上使用,因此其配置的数量是有界的。中号'中号中号MMMM


如果仍然有人不理解该答案,建议您参考本演示文稿的幻灯片3-4,以获取更多说明。
bongubj 2012年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.