图灵机计算与扩展
1. 图灵机复制函数 COPY
1.1 复制函数定义
复制函数 copy(w) 的功能是输入一个单词 ( w \in \Sigma^ ),返回由空格分隔的两个 ( w ) 的副本,即 ( copy(w) = w \text{ BLANK } w )。为了设计实现该功能的图灵机,需要明确其前置条件和后置条件:
- 前置条件 :磁带状态为 ( (LM \text{ BLANK } w \text{ BLANK }) ),磁头位于 ( w ) 后的空格上。
- 后置条件 *:磁带状态变为 ( (LM \text{ BLANK } w \text{ BLANK } w \text{ BLANK }) ),磁头位于第二个 ( w ) 后的空格上。
1.2 设计思路
假设 ( w ) 由 ( n ) 个符号组成,即 ( w = a_0 \cdots a_{n - 1} )(( n \geq 0 ))。若 ( n = 0 ),则 ( w ) 为空单词(即一个空格)。设计目标是从 ( a_0 ) 开始,将每个 ( a_i ) 复制到右侧第二个空格处,空格用于分隔两个 ( w ) 的副本。具体步骤如下:
1. 图灵机先向左移动到第一个空格,再向右移动。此时,它可能读取到下一个待复制的元素或 ( w ) 后的空格。
2. 根据读取的元素进行分支:
- 若读取到空格 :表示磁带已包含由空格分隔的两个 ( w ) 的副本。此时,将磁头向右移动到第一个空格,再向左移动。接着,进行第二次分
超级会员免费看
订阅专栏 解锁全文
23

被折叠的 条评论
为什么被折叠?



