计算理论第4章 图灵机.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算理论第4章 图灵机

第4章 图灵机 许桂靖 杨 莹 Overview 图灵机(Turing Machine,TM),是计算机的一种简单的数学模型。 历史上,冯?诺曼计算机的产生就是由图灵机诱发的。 丘奇—图灵论题:一切合理的计算模型都等同于图灵机. 类型 文 法 结 构 产 生 式 形 式 限 制 条 件 Overview 0型语言 ———图灵机 1型语言(CSL) ———线性界限自动机 2型语言(CFL) ———下推自动机 3型语言(正规集)——有限自动机 Overview 图灵机所定义的语言类---递归可枚举集合 图灵机所计算的整数函数类---部分递归函数 以图灵机为模型,研究问题的可计算性,即确定该问题是可计算的、部分可计算的,还是不可计算的。 Overview 4.1 图灵机模型 4.2 图灵机的变化和组合 4.3 通用图灵机 4.4 图灵机可计算性 4.1 图灵机模型 4.1 图灵机模型 定义4-1 图灵机M = ( K, Σ, Γ, δ, q0, B,F), 其中 K是有穷的状态集合; Γ是所允许的带符号集合; B ∈Γ,是空白符; Σ ? Γ,B ∈ Σ,是输入字符集合; F ? K,是终止状态集合。 q0∈K, 是初始状态; 4.1 图灵机模型 δ:K×Γ?K×Γ×{L,R,S} 是图灵机的动作(状态转移)函数,这里 L表示读头左移一格; R表示读头右移一格; S表示读头不动; δ(q,a)=(p,b,z) 表示状态q下读头所读符号为a时,状态转移为p,读头符号变为b,同时读头变化为z. 4.1 图灵机模型 定义4-2 设当前带上字符串为x1x2 … xn,当前状态为q,读头正在读xi ,图灵机的瞬时描述ID 为 x1x2 … xi-1 q xi … xn 4.1 图灵机模型 定义4-3 设当前的瞬时描述 ID1= x1x2 … xi-1 q xi … xn 若有δ(q, x i) = (p, y, L),则图灵机瞬时描述变为 ID2 = x 1x 2 …x i-2p x i-1 y x i+1 … x n; 若有 δ(q, x i) = (p, y, R),则图灵机瞬时描述变为 ID2 = x1x2 … xi-1 y pxi+1 … xn。 4.1 图灵机模型 定义4-3 瞬时描述ID1经过一步变为瞬时描述ID2,称ID1与ID2具有一步变化关系,表示为 ID1├ID2 若ID1经过n步变为ID2(n≥0),即有 ID1├ID├… ├ ID2 称ID1与ID2具有多步变化关系,简记为 ID1 ├*ID2 4.1 图灵机模型 定义4-4 对于图灵机M = ( K, Σ, Γ, δ, q0, B, F),定义图灵机接受的语言集 L(M) 为 L(M)={w|w∈Σ*∧ ? u0? u? v ? q ? qf(u0∈Σ*∧u∈Σ*∧v∈Σ* ∧q∈K∧qf ∈F ∧q0w├*u0qB├*uqfv)} 4.1 图灵机模型 【例4-1】设计一个图灵机,使得 L(M) = {0 n1 n | n≥1}。 设计思路: 在带上每当将一个0变为X,就把一个1变为Y。当将所有的0变为X时,恰将所有的1变为Y,这个串就是合法的,最后将X、Y分别还原为0、1。 4.1 图灵机模型 4.1 图灵机模型 【例4-2】 设计一个图灵机,使之接受 L(M) = {wcw | w∈ {a,b}*} 设计思路:在c左侧,从左至右逐一字符,用状态记下它并标志该符号为已处理符号,移至c右侧对应位置后,判断是否是相同符号。若相同,再返回c左侧循环,直至所有符号比较完毕。最后将标志符号修改回原符号。在设计时,特别注意用状态存贮符号的方法,这是图灵机设计的重要方法之一。 4.1 图灵机模型 4.1 图灵机模型 【例4-3】设计一个图灵机,计算自然数n的以2为底的对数。 用一进制表示输入和输出值。an表示输入n, bm表示输出m. 设计思路:从左到右扫描带,把所碰到的a划掉一个,留一个,并将计数器加1。重复此过程,直至a不复存在。这里,用字符c表示划掉的字符。 4.1图灵机模型 4.1 图灵机模型 【例4-4】设计一个图灵机,计算二个自然数m、n的减法: 设计时,整数n用0n表示。开始时,带上符号为 0m10n,结束时,带上符号为0。每当在1的左边将一个0改变为B,就在1的右边将一个0改为1,若1的右边无0时,再将左边改为B的0恢复回来。 4.1 图灵机模型 4

文档评论(0)

rovend + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档