构建一个非确定性图灵机
constructing a non deterministic turing machine
画出决定语言的两带非确定性图灵机M的图
L={w∈Σ* | w=uuu ∈Σ* }
如果我能得到帮助来解释如何构建 NDTM(语言上)的步骤,我相信我可以画出图表,但我无法给出答案..
谢谢
通过 u*u*u
(在编辑历史中查看),我假设您想要的是 u^3 形式的所有单词的语言(u 重复三次),其中 u 是字母表中的任何字符串.
我们的 NDTM 需要至少以一种方式接受语言中的字符串,并且绝不能接受任何非语言中的字符串。特别是,关键是 NDTM 可以拒绝语言中的字符串,只要通过 NDTM 的某些路径确实接受语言中的每个字符串。
鉴于此,我们的第一步可以猜测 u
的长度。 NDTM 可以通过从状态 q0
非确定性过渡到 q1
然后在任意点 q2
来标记三个磁带符号(例如,通过写入带下划线的符号版本)。然后,我们可以重置磁带头并使用确定性 TM 来回答问题:我们在第一步中猜测的拆分结果是否为 u^3
?
形式的字符串
这是确定性的,因为我们知道零件的轮廓。我们可以检查前两部分(比如,通过前后弹跳并标记我们已经处理过的符号),然后检查后两部分(使用相同的技术,但应用于第二和第三部分)。
我们已将问题简化为检查字符串是否为我们知道拆分的 w|w
形式。这种确定性 TM 更容易提出。当我们把它放在猜测如何拆分初始输入的 NDTM 之后时,我们得到一个 NDTM,它可以(并且对于一个猜测,确实)接受 u^3
形式的任何字符串,但不可能接受任何东西别的。这就是我们所追求的,我们已经完成了。
画出决定语言的两带非确定性图灵机M的图
L={w∈Σ* | w=uuu ∈Σ* }
如果我能得到帮助来解释如何构建 NDTM(语言上)的步骤,我相信我可以画出图表,但我无法给出答案..
谢谢
通过 u*u*u
(在编辑历史中查看),我假设您想要的是 u^3 形式的所有单词的语言(u 重复三次),其中 u 是字母表中的任何字符串.
我们的 NDTM 需要至少以一种方式接受语言中的字符串,并且绝不能接受任何非语言中的字符串。特别是,关键是 NDTM 可以拒绝语言中的字符串,只要通过 NDTM 的某些路径确实接受语言中的每个字符串。
鉴于此,我们的第一步可以猜测 u
的长度。 NDTM 可以通过从状态 q0
非确定性过渡到 q1
然后在任意点 q2
来标记三个磁带符号(例如,通过写入带下划线的符号版本)。然后,我们可以重置磁带头并使用确定性 TM 来回答问题:我们在第一步中猜测的拆分结果是否为 u^3
?
这是确定性的,因为我们知道零件的轮廓。我们可以检查前两部分(比如,通过前后弹跳并标记我们已经处理过的符号),然后检查后两部分(使用相同的技术,但应用于第二和第三部分)。
我们已将问题简化为检查字符串是否为我们知道拆分的 w|w
形式。这种确定性 TM 更容易提出。当我们把它放在猜测如何拆分初始输入的 NDTM 之后时,我们得到一个 NDTM,它可以(并且对于一个猜测,确实)接受 u^3
形式的任何字符串,但不可能接受任何东西别的。这就是我们所追求的,我们已经完成了。