计算理论第4章-图灵机研究优秀PPT.ppt
《计算理论第4章-图灵机研究优秀PPT.ppt》由会员分享,可在线阅读,更多相关《计算理论第4章-图灵机研究优秀PPT.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第4章 图灵机许桂靖 杨 莹 2Overviewn图灵机(Turing Machine,TM),是计算机的一种简洁的数学模型。n历史上,冯诺曼计算机的产生就是由图灵机诱发的。n丘奇图灵论题:一切合理的计算模型都等同于图灵机.3类型类型 文文 法法 结结 构构 产产 生生 式式 形形 式式 限限 制制 条条 件件 0 短语结构文法短语结构文法 +,*Phrase Structure 上下文有关文法上下文有关文法 1A212|12|1A2|1 Context Sensitive 1,2*(CSG)A,+上下文无关文法上下文无关文法 A A,*2 Context Free (CFG)正正 右线性文
2、法右线性文法 AxB,Cy A,B,C 3 规规 文文 左线性文法左线性文法 ABx,Cy x,yT*法法4Overview 0型语言型语言 图灵机图灵机 1型语言型语言(CSL)线性界限自动机线性界限自动机 2型语言型语言(CFL)下推自动机下推自动机 3型语言型语言(正规集正规集)有限自动机有限自动机 5Overviewn图灵机所定义的语言类-递归可枚举集合n图灵机所计算的整数函数类-部分递归函数n以图灵机为模型,探讨问题的可计算性,即确定该问题是可计算的、部分可计算的,还是不行计算的。6Overview4.1 图灵机模型 4.2 图灵机的变更和组合 4.3 通用图灵机4.4图灵机可计算性
3、74.1 图灵机模型 84.1 图灵机模型图灵机模型定义定义4-1 图灵机M=(K,q0,B,F),其中 K是有穷的状态集合;是所允许的带符号集合;B,是空白符;,B ,是输入字符集合;F K,是终止状态集合。,是终止状态集合。q0K,是初始状态;是初始状态;94.1 图灵机模型图灵机模型:KKL,R,S是图灵机的动作(状态转移)函数,这里L表示读头左移一格;R表示读头右移一格;S表示读头不动;(q,a)=(p,b,z)表示状态q下读头所读符号为a时,状态转移为p,读头符号变为b,同时读头变更为z.104.1 图灵机模型图灵机模型定义定义4-2 设当前带上字符串为x1x2 xn,当前状态为q,
4、读头正在读xi,图灵机的瞬时描述ID 为x1x2 xi-1 q xi xn114.1 图灵机模型图灵机模型n定义定义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。124.1 图灵机模型图灵机模型n定义定义4-3n瞬时描述瞬时描述ID1经过一步变为瞬时描述经过一步变为瞬时描述ID2,称,称ID1与与ID2具有一步变更关系,表示具有一步变更关系,
5、表示为为 nID1ID2 n若若ID1经过经过n步变为步变为ID2(n0),即有,即有nID1ID ID2n称称ID1与与ID2具有多步变更关系,简记为具有多步变更关系,简记为n ID1*ID2134.1 图灵机模型图灵机模型n定义定义4-4 对于图灵机M=(K,q0,B,F),定义图灵机接受的语言集 L(M)为L(M)=w|w*u0 u v q qf(u0*u*v*qKqf F q0w*u0qB*uqfv)144.1 图灵机模型图灵机模型n【例【例4-1】设计一个图灵机,使得】设计一个图灵机,使得 nL(M)=0 n1 n|n1。n设计思路设计思路:在带上每当将一个在带上每当将一个0变为变为
6、X,就,就把一个把一个1变为变为Y。当将全部的。当将全部的0变为变为X时,恰时,恰将全部的将全部的1变为变为Y,这个串就是合法的,最,这个串就是合法的,最终将终将X、Y分别还原为分别还原为0、1。154.1 图灵机模型图灵机模型164.1 图灵机模型图灵机模型【例【例4-2】设计一个图灵机,使之接受设计一个图灵机,使之接受 L(M)=wcw|w a,b*设计思路:在设计思路:在c左侧,从左至右逐一字符,用状态登左侧,从左至右逐一字符,用状态登记它并标记该符号为已处理符号,移至记它并标记该符号为已处理符号,移至c右侧对应右侧对应位置后,推断是否是相同符号。若相同,再返回位置后,推断是否是相同符号
7、。若相同,再返回c左侧循环,直至全部符号比较完毕。最终将标记左侧循环,直至全部符号比较完毕。最终将标记符号修改回原符号。在设计时,特殊留意用状态符号修改回原符号。在设计时,特殊留意用状态存贮符号的方法,这是图灵机设计的重要方法之存贮符号的方法,这是图灵机设计的重要方法之一。一。174.1 图灵机模型图灵机模型184.1 图灵机模型图灵机模型【例【例4-3】设计一个图灵机,计算自然数】设计一个图灵机,计算自然数n的的以以2为底的对数。为底的对数。用一进制表示输入和输出值。用一进制表示输入和输出值。an表示输入表示输入n,bm表示输出表示输出m.设计思路:从左到右扫描带,把所遇到的设计思路:从左到
8、右扫描带,把所遇到的a划划掉一个,留一个,并将计数器加掉一个,留一个,并将计数器加1。重复此。重复此过程,直至过程,直至a不复存在。这里,用字符不复存在。这里,用字符c表表示划掉的字符。示划掉的字符。194.1图图灵灵机机模模型型204.1 图灵机模型图灵机模型【例【例4-4】设计一个图灵机,计算二个自然数】设计一个图灵机,计算二个自然数m、n的减法:的减法:设计时,整数设计时,整数n用用0n表示。起先时,带上符号为表示。起先时,带上符号为 0m10n,结束时,带上符号为,结束时,带上符号为0。每当在。每当在1的左边的左边将一个将一个0变更为变更为B,就在,就在1的右边将一个的右边将一个0改为
9、改为1,若若1的右边无的右边无0时,再将左边改为时,再将左边改为B的的0复原回来。复原回来。m-n 若若mnmnmn=0 否则否则214.1 图灵机模型图灵机模型R224.1 图灵机模型图灵机模型【例【例4-5】设计图灵机实现数字从一进制表示到设计图灵机实现数字从一进制表示到二进制表示的转换。二进制表示的转换。这个图灵机的设计可以仿例这个图灵机的设计可以仿例4-3,不同在于每次循,不同在于每次循环时,要保留除以环时,要保留除以2的余数作为当前二进制位的值。的余数作为当前二进制位的值。留意这里首先计算出的是二进制的低位值,所以留意这里首先计算出的是二进制的低位值,所以要将结果不断右移以插入新生成
10、的位,生成的结要将结果不断右移以插入新生成的位,生成的结果是低位在右端。初始时,整数果是低位在右端。初始时,整数n用用an表示,结束表示,结束时,带上是时,带上是0、1构成的二进制数。构成的二进制数。234.1 图灵机模型图灵机模型R244.2 图灵机的变更和组合图灵机的变更和组合n4.2.1 双向无穷带图灵机n4.2.2 多带图灵机n4.2.3 非确定图灵机n4.2.4 多头图灵机n4.2.5 多维图灵机n4.2.6 离线图灵机 n4.2.7 图灵机的组合n4.2.8 枚举器25双向无穷带图灵机定理定理4-1 L被一个具有双向无穷带的图灵机识别,被一个具有双向无穷带的图灵机识别,当且仅当它被
11、一个单向无限带的图灵机识别。当且仅当它被一个单向无限带的图灵机识别。证明:单向无限证明:单向无限TM模拟双向无限模拟双向无限TM,接受多道技,接受多道技术。术。264.2.2 多带图灵机274.2.2 多带图灵机n【例例4-6】设计一个二带图灵机,使得 T(M)=|0,1*。n这个问题的关键是比较字符串前后两个部分,为此,首先要对带上字符串计数:每二元素计数加1,按计数值将字符串分为前后两个部分,并将它们分别存放于不同带上,然后进行比较。284.2.2 多带图灵机294.2.2 多带图灵机【例【例4-7】设计二带图灵机,实现二进制到一进设计二带图灵机,实现二进制到一进制的转换。制的转换。设这个
12、图灵机为设这个图灵机为M7,其第一带用作输入带,其次带,其第一带用作输入带,其次带用作输出带。设计思路是从左到右扫描输入带上用作输出带。设计思路是从左到右扫描输入带上的二进制字符,并运用公式的二进制字符,并运用公式r*2+b生成输出带上生成输出带上一进制数,其中一进制数,其中r是当前输出带上的一进制数,是当前输出带上的一进制数,b是当前输入带上扫描的字符,这里的是当前输入带上扫描的字符,这里的r*2就是将原就是将原输出带上的一进制数输出带上的一进制数r复制一遍。例如:复制一遍。例如:1001的的一进制数计算过程。一进制数计算过程。304.2.2 多带图灵机314.2.2 多带图灵机定理定理4-
13、2 假如一个语言假如一个语言L被一个多带图灵机被一个多带图灵机接受,它就能被一个单带图灵机接受。接受,它就能被一个单带图灵机接受。324.2.3 非确定图灵机【例【例4-8】下面的图】下面的图灵机就是不确定图灵机就是不确定图灵机。无向图灵机。无向图G中,中,从从a动身合法路径动身合法路径判定的不确定型图判定的不确定型图灵机。灵机。334.2.3 非确定图灵机n非确定图灵机由一个有穷限制器、一条带和一个读头组成。对于一个给定的状态和被读头扫描的带符号,机器的下一个动作将有有穷个选择。n设一个非确定图灵机 M1=(K,q0,B,F),除转移函数外,其它同一般图灵机的定义。转移函数仍是从K到KL,R
14、,S上的映射,但它可能有多个映射的像,即存在qK,a,n(q,a)=(p1,b1,c1)n(q,a)=(p2,b2,c2)n n(q,a)=(pr,br,cr)344.2.3 非确定图灵机定理定理4-3 假如语言假如语言L被一个非确定图灵机被一个非确定图灵机M1接受,则接受,则L将被某个确定图灵机将被某个确定图灵机M2接受。接受。354.2.4 多头图灵机n一个k头图灵机有k个读头,一个限制器和一条带,读头由1到k编号,图灵机的一个动作由当前状态和被每个读头所扫描的符号。在一个动作中,每个读头独立地左移、右移或不动。n定理4-4 假如L被某个k个读头的图灵机接受,则它能被一个单头图灵机接受。3
15、64.2.5 多维图灵机多维图灵机具有通常的有限限制器,但带却多维图灵机具有通常的有限限制器,但带却由由k维单元阵列组成。这里,在全部维单元阵列组成。这里,在全部2k个方个方向上(向上(k个轴,每轴正、负两个方向),都个轴,每轴正、负两个方向),都是无限的,依据状态和扫视的符号,该装是无限的,依据状态和扫视的符号,该装置变更状态,打印一个新的符号,在置变更状态,打印一个新的符号,在2k个个方向上移动它的读头,起先时,输入沿着方向上移动它的读头,起先时,输入沿着一个轴排列,读头在输入的左端。一个轴排列,读头在输入的左端。374.2.6 离线图灵机定理定理4-5 假如假如L被一个二维图灵机被一个二
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算 理论 图灵机 研究 优秀 PPT
限制150内