最新形式语言自动机——图灵机(一)PPT课件.ppt
《最新形式语言自动机——图灵机(一)PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新形式语言自动机——图灵机(一)PPT课件.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、形式语言自动机形式语言自动机图灵机图灵机(一一)主要内容主要内容nTM的基本定义nTM的格局nTM接受的语言nTM的构造技术nTM的变形;n重点:TM的定义、TM的构造。n难点:TM的构造。2School of Computer Science&Technology,BUPT任任给图灵机灵机M=(Q,T,q0,B,F),以及以及输入字符串入字符串w T*.试问:对于于w,M 是否停机是否停机?停机是指停机是指图灵机不存在灵机不存在下一个移下一个移动步(步(move).结论图灵机的停机灵机的停机问题是不可解的(即不可判定的)是不可解的(即不可判定的).结论任任给图灵机灵机M,很容易构造一个很容易
2、构造一个图灵机灵机M,使得使得L(M)=L(M ),并并满足:如果足:如果w L(M),则对于于w,M 接接受受w并一定停机并一定停机.如果没有特如果没有特别指出,指出,总是假定是假定图灵机到达灵机到达终态(接受(接受态)后一定停机后一定停机.但是但是,对不能接受的字符串,不能接受的字符串,图灵机可能永不停止灵机可能永不停止.(只(只要要M还在某个在某个输入上运行,我入上运行,我们无法知道是因无法知道是因为运行的运行的时间不不够长而没有被接受,而没有被接受,还是根本就不会停机)是根本就不会停机)图灵机的停机问题图灵机的停机问题 9School of Computer Science&Techn
3、ology,BUPT图灵机举例图灵机举例例例1 1:设语言言 L=anbnn=1,设计图灵机接受灵机接受L。思路:最初思路:最初带上上为aa abbbBBBn个个an个个b首先用首先用x替替换M最左最左边的的a,再右移至最左再右移至最左边的的b用用y替替换之,左移之,左移寻找最右的找最右的x,然后右移一然后右移一单元到最左的元到最左的a,重复循重复循环。如果如果(1 1)当在搜)当在搜寻b时,M找到了空白符找到了空白符B,则M停止,不接受停止,不接受该串。串。(此(此时,a的个数大于的个数大于b的个数)的个数)(2 2)当将当将b改改为y后,左后,左边再也找不到再也找不到a,此此时,若右若右边
4、再无再无b,接受;若仍有接受;若仍有b,则b的个数大于的个数大于a的个数,不接受。的个数,不接受。10School of Computer Science&Technology,BUPT例例1L=anbnn=1(q0,a)=(q1,x,R)(q0,y)=(q3,y,R)(q1,a)=(q1,a,R)(q1,y)=(q1,y,R)(q1,b)=(q2,y,L)(q2,a)=(q2,a,L)(q2,y)=(q2,y,L)(q2,x)=(q0,x,R)(q3,y)=(q3,y,R)(q3,B)=(q4,B,R)例:例:aabbaabb的接收格局序列的接收格局序列q q0 0aabb xqaabb x
5、q1 1abb xaqabb xaq1 1bb xqbb xq2 2ayb qayb q2 2xaybxqxaybxq0 0aybxxqaybxxq1 1ybyb xxyq xxyq1 1bxxqbxxq2 2yyxqyyxq2 2xyyxxqxyyxxq0 0yyxxyqyyxxyq3 3yxxyyqyxxyyq3 3BxxyyqBxxyyq4 4 11School of Computer Science&Technology,BUPT对于输入字符串对于输入字符串001122,该图灵机可以有如下推导该图灵机可以有如下推导步:步:q0001122MXq101122 MX0q11122MX0Yq
6、2122MX0Y1q222MX0Yq31Z2*Mq3X0Y1Z2MXq00Y1Z2*MXXYYZq22MXXYYq3ZZ*MXq3XYYZZMXXq0YYZZ*MXXYYq4ZZMXXYYZq5ZMXXYYZZq5BMXXYYZZBq6B例例2L=0n1n2n n 1.12School of Computer Science&Technology,BUPT 转移图与转移表转移图与转移表13School of Computer Science&Technology,BUPT作作为整数函数整数函数计算机的算机的图灵机灵机n预备知知识:图灵机除了作为语言接受器外,还可看作整数到整数的函数计算机。n传
7、统方法把整数表示成一方法把整数表示成一进制制整数i 0 用字符串0i 表示n如果一个函数有k个自变量,i1,i2,ik,那么这些整数开始时被放在带上,并用1把他们分隔开。形如0i1 1 0i2 1 0i3 1 0ikn如果图灵机停止(不论是否在一个接受状态上)且带上为 0m,则f(i1,i2,ik)=m f是被图灵机计算的k元函数n如果f(i1,i2,ik)对所有i1,i2,ik有定义,那么称f是一个全递归函数。全递归函数对应于递归语言,因为它总是被能停下来的图灵机所计算。n所有常用的整数算术函数都是全递归函数。14School of Computer Science&Technology,B
8、UPT例例3:设计图灵机求真减法灵机求真减法n思路:思路:1.用空白符B代替带上的最左端的02右移至紧跟1后的0,将其改为13左移找到B,将B之后的0改为B4重复上述过程如果如果(1)右移找0时,遇到B,意味着mnBBB 0 m-(n+1)1 111 n+1 n个将后面n+1个1变为B,将左侧最后一个B变0,形如BBB 0 0 m-(n+1)BBB n个 n+1个 这时,带上留下m-n个0,即结果为m-nn 初始带 0m 10n15School of Computer Science&Technology,BUPT求真减法(求真减法(续)(2)M左移找不到0,意味着n m,形如 BBB 1 1
9、11 00 m个 m个 n-m个 此时,用B替换所有剩余的1和016School of Computer Science&Technology,BUPT例例4:L=L=0 0 m m m=2 m=2n n,n,n 0 0 n设计思路:思路:对输入串入串w1.从左到右扫描带,隔一个消一个0;2若带上只剩唯一一个0,接受;3若带上不止一个0,且个数为奇数,拒绝;4让读写头返回带的最左端;5.转第一步。17School of Computer Science&Technology,BUPTStartq4q2q10/#,RqrejectX/X,RB/B,Rq3B/B,Racceptqq5#/#,RB/
10、B,LX/X,L0/0,L0/X,RX/X,RX/X,R0/X,R0/0,R识别 L=L=0 0 m m m=2 m=2n n,n,n 0 0 的的图灵机灵机18School of Computer Science&Technology,BUPT课堂练习课堂练习n设计一一个个状状态数数不不超超过3的的图灵灵机机,它它能能够接接受受语言言L=a(a+b)*,若若假假定定T=a,b,两两个个状状态的的图灵灵机机能能否接受否接受该语言?言?19School of Computer Science&Technology,BUPT5.2 图灵机的构造技术 在设计图灵机的过程中,写出函数很麻烦,为了构造复
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 形式语言 自动机 图灵机 PPT 课件
限制150内