图灵机的扩展
看懂多带、非确定、通用机扩展如何等价于标准图灵机,以及计算能力的真正边界
按 空格/→ 演示下一步
全部页面点击任意一页,跳回舞台从这页播放
图灵机的扩展
看懂多带、非确定、通用机扩展如何等价于标准图灵机,以及计算能力的真正边界
图灵机的形式化定义
上一页讲了扩展版图灵机能干什么——但「能干什么」得有严谨边界,边界靠形式化定义。一个图灵机就是七元组 M=(Q,Σ,Γ,δ,q₀,B,F),每个符号都对应一个不可含糊的部件。
Q=当前在做什么;Γ=可写的字符;B=空白行;δ=操作手册;q₀=开账那天;F=写完结清的那行
图灵机的基本结构
从左往右读一圈:读符号→控制器查表→写/移/换状态同拍发生→进入下一轮。
图灵机的计算过程
图灵机的计算本质是一连串格局的演变,每一步都是一次原子转移。
单带图灵机的局限
前面看到的图灵机读、写、左右移头——看起来挺自由。但只用一条带时,你会撞上几堵墙:有些任务做着做着就被迫回到起点。
巷子只容一人侧身过,货搬到中间想回头核对,得原路折返;通道多就不必来回跑
多道图灵机的结构
从左往右看:物理单带被逻辑切层,每层记一种符号,读头整列扫描。
多带图灵机的定义
上页的多道图灵机用一条带子分成多道实现并行读取,但所有内容仍挤在同一条带子上。若要真正独立地存放不同数据——就需要多带。
每本笔记记一门课,每本一支笔在并行书写
多带图灵机的等价性
多带图灵机让 k 条带子和 k 个读写头各自独立工作——这让它写起来更顺手,可这「顺手」是真本事,还是只是书写方式更舒服?这一页给出回答:识别语言的能力完全等价,但效率要打折扣。
一人模拟就得把几本账并到一册,靠书签来回定位各本当前页
标准转移函数的形式
前几页我们看到多带、多道扩展让 δ 越来越复杂。要读懂那些扩展,先回到最基础的版本——单带标准图灵机的每一步行动,全部压在一个五元组里。这一页我们把它拆开看。
当前楼层+按键→目标楼层+显示更新+轿厢方向
静止图灵机
标准图灵机读一格后,读写头必须左移或右移——没有「原地不动」的选项。但如果我们想反复观察当前格,就得给机器多一种动作。
标准机读一页就得翻下一页;Stay 像书签,让读写头停在当前格反复看
扩展移动的影响
上一节我们允许读头原地不动,这看起来像是放宽了约束。但让磁头停下来真的会增强机器吗?本节给出回答。
语法糖让代码写起来更顺手,但不会让程序能算出新东西
受限图灵机的思想
前面我们给图灵机加了多带、多头、扩展移动——能力没本质增加。本页反过来:能不能把图灵机削得更简单——比如禁止左移、限定半带、不能写——能力居然还一样?受限模型要回答的正是这个问题。
工具越少,越能看清哪些工具是真正不可替代的
线性有界自动机LBA
上页说可以限制图灵机来构造更弱的模型。最直觉的限制方式是限定磁带长度——给一个常数 k,磁带最多只能用到输入长度乘以 k 那么长。这一类受限图灵机,叫线性有界自动机 LBA。
输入多长,可用空间就是它的常数倍,不能向两侧多伸一格
LBA的工作方式
从带⊢⊣哨兵的输入带开始,读写头每步:读符号→查δ→判方向→检查是否撞边界。撞到即拒绝停机。
图灵机与LBA的对比
结构相似却常被混淆:空间边界与语言层级才是真正的分水岭
- 读写带可无限延伸,无空间限制
- 识别递归可枚举语言 r.e.
- 停机问题不可判定
- 通用计算模型的原型
- 带长限制为输入的线性倍数
- 识别上下文有关语言 CSL
- 停机问题同样不可判定
- 受限但贴近实际计算场景
其他受限图灵机
前面我们限制了磁带的形态,多带多道都仍是图灵等价。那再激进一点——直接限制读写头,或把磁带整个换成简陋的计数器,还撑得住吗?
每一档就是一个计数器:上推一珠=+1,下推一珠=-1,档上无珠=判0;几档就是几个独立计数器
自动机层次结构
中央图灵机为基准;虚线指等价变体,实线逐级受限即能力包含。
有限自动机与图灵机
正则语言 vs 递归可枚举语言——自动机能力阶梯的最低与最高。
- 无纸带,仅靠有限状态记忆
- 读头只读、只能单向移动
- 只能识别正则语言
- 无法计数,也不能处理嵌套
- 无限长纸带,可读可写任意符号
- 读头可左右自由移动
- 能识别递归可枚举语言
- 图灵完备,可模拟任何算法
下推自动机与图灵机
下推自动机和图灵机都来自自动机家族,但一个靠栈、一个靠磁带,能处理的语言天差地别。
- 存储只有栈,先进后出
- 识别上下文无关语言
- 非确定比确定能力更强
- 等价于上下文无关文法
- 存储是无限磁带,可来回扫
- 识别递归可枚举语言
- 确定与非确定能力等价
- 等价于无限制0型文法
Church-Turing论题
图灵机作为计算模型的通用性论题
核心概念自测
图灵机经过多带、多道、允许静止等扩展后,与标准图灵机相比:
深入思考
先自己琢磨,再翻答案对照思路——别急着对照。
参考答案提示:模拟多带需把多条带和磁头位置编码到单带不同区域,代价通常是多项式级。「等价」只关乎能力,不关乎速度——能力等价不等于性能等价。
参考答案提示:空间受限让 LBA 只识别上下文有关语言;更关键的是,它的空性问题至今未决——受限带来的不是简单变弱,而是判定上更微妙。
参考答案提示:先问「它解决了哪个图灵机算不了的问题?」。要么是描述不清(偷偷依赖物理过程),要么是把「算得快」与「能算」混为一谈。