Formal Languages and Automata Theory--第六章--课件.pptVIP

Formal Languages and Automata Theory--第六章--课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Formal Languages and Automata Theory--第六章--课件

* Formal Languages and Automata Theory 6 上下文无关文法与下推自动机    语言{ai bi|i0}是不能被有穷自动机所接受的。要接受这个语言,机 器需要记录某一a的有限次数,有限状态机的约束不允许自动机“记住”输入 串中a的个数。因此我们需要定义一个新型自动机,它由一个下推栈加上一 个有限自动机组成,称为下推自动机(PDA)。 6.1 下推自动机(1)  定义:下推自动机(pushdown automation)是一个七元组   (Q,?,?,?,q0,z,F),其中Q是一有穷状态集, ? 为一有穷字母表, ? 为一有一有穷下推集, q0为开始状态,z为下推字符,F?Q是终止状态集, ? 是从  Q?( ? ?{?}) ?( P?{?})到Q ?( P?{?})的转移函数。   一个PDA有两个字符集:输入字符串?它由输入字符串组成,有一个栈字符集P,它的元素存在栈中。A ?表示以A为栈顶元素的栈,空栈被表示为?。PDA的计算开始于状态q0 ,输入在输入带上且栈为空。    PDA的当前状态、输入符号和栈顶符号决定自动机的转换。转换函数?列出所有给定状态、符号和栈顶元素的所有可能的转换。      ? ( qi,a,A)={[qj,B],[qk,C]}表示当前状态为qi,输入符号为a,栈顶符号为A时的两种可能的转换。    6.1 下推自动机(2)      [qj,B] ?  ? ( qi,a,A)      new state current stack top new stack top current input symbol current state 表示 i)状态由qi换为qi ii)处理字符a,输入带向前移动  iii)栈顶A退栈  iv)B进栈。 6.1 下推自动机(3)  一个下推自动也可由状态转换图表示,弧上的符号表示输入符号和栈操作。转换函 [qj,B] ?  ? ( qi,a,A) 表示如下:        a A/B     qi      qj 符号/表示B代替A ? 可以出现在输入字符和栈顶位置,分别三种转换函数。 (1) [qi, ? ] ?  ? ( qi, ? ,A)   (输入位置是? ) ? A/ ?  A出栈      qi    6.1 下推自动机(4)    (2) [qi, A ] ?  ? ( qi, ? , ?)   (输入位置是? )        ? ? /A   (A压栈,不改变输入状态)      qi (3) [qj, ? ] ?  ? ( qi, a , ?) a ?/ ? (等价于有限自动机,转换由状态和输入符号决定)     qi        qj    一个PDA可表示为一个三元组[qi,?,?], qi是机器状态, ?为未处理的输入串,?为栈顶。     [qi,?,?] ├ [qj,v,?] 表示[qj,v,?]由[qi,?,?]经一步转换而得。 6.1 下推自动机(5)  例1:构造一个PDA接受语言{ai bi |i=0}   M: Q=[q0, q1] a ?/A b A/ ? b A/ ? ?={a,b} ?={A} F={q0, q1} ?(q0,a, ?)={[q0,A]} ?(q0,b, A)={[q1, ?]} ?(q1,b, A)={[q1, ?]} [q0,aabb, ?] ├ [q0,abb, A] ├ [q0,bb, AA] ├[q0,b, A] ├[q0, ?, ?]   q0 q1 6.1 下推自动机(6)  定义:设M= (Q,?,?,?,q0,F)为一PDA,字符串?被PDA接受,如果[q0, ?, ?] ├* [qi, ?, ?]

文档评论(0)

sd44055 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档