图灵机变体与算法定义解析
1. 图灵机变体概述
图灵机有多种替代定义,这些被称为图灵机模型的变体,如多带图灵机和非确定性图灵机等。尽管形式不同,但原始模型及其合理变体都具有相同的能力,即它们能识别相同类别的语言,这种对定义中某些变化的不变性被称为鲁棒性。有限自动机和下推自动机也有一定的鲁棒性,但图灵机的鲁棒性更为惊人。
为了说明图灵机模型的鲁棒性,我们先看一个简单的例子。在原始定义中,图灵机的转移函数要求磁头在每一步后向左或向右移动,不能保持不动。但如果允许图灵机有“保持不动”的能力,即转移函数形式变为 δ: Q×Γ−→Q×Γ×{L, R, S} ,这是否会让图灵机识别更多的语言,从而增强模型的能力呢?答案是否定的。因为我们可以将任何具有“保持不动”功能的图灵机转换为没有该功能的图灵机,方法是将每个“保持不动”的转移替换为两个转移:一个向右移动,另一个向左移动。这个小例子揭示了证明图灵机变体等价性的关键,即只要能证明一个模型可以模拟另一个模型,就说明它们是等价的。
2. 多带图灵机
多带图灵机类似于普通图灵机,但有多个磁带,每个磁带都有自己的读写磁头。初始时,输入出现在磁带 1 上,其他磁带为空。其转移函数允许同时对部分或所有磁带上的磁头进行读写和移动操作,形式为 δ: Q × Γk−→Q × Γk × {L, R, S}k ,其中 k 是磁带的数量。例如,δ(qi, a1, … , ak) = (qj, b1, … , bk, L, R, … , L) 表示当机器处于状态 qi ,磁头 1 到 k 分别读取符号 a1 到 ak 时,机器进入状态 qj ,在磁带上写入符号 b1 到 bk ,并按照指定的方向移动每个磁头。
虽然多带图灵机
超级会员免费看
订阅专栏 解锁全文
1056

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



