形式语言与自动机-第2章-语言与文法.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* College of Computer Science Technology, BUPT 1型文法 也称上下文有关文法(CSG:Context-sensitive Grammar) 生成式的形式为α→β, 其中 |α| ≤ |β| ,β∈(N∪T)+, α∈(N∪T)* N+ (N∪T)* 对应的语言:上下文有关语言(CSL:Context-sensitive Language) 若不考虑ε,与线性有界自动机(LBA, Linear Bounded Automaton)等价。 College of Computer Science Technology, BUPT 1型文法 语言限定约束: 左部的长度小于右部 不含A-ε 实际程序语言中上下文有关的部分: 过程调用时形参与实参的一致性检查等。 * College of Computer Science Technology, BUPT 2型文法 也称上下文无关文法(CFG:Context-free Grammar) A→ β, A∈N, 且 β∈(N∪T)* 对应的语言:上下文无关语言 (CFL: Context-free Language)。 对应的自动机:下推自动机(PDA: Pushdown Automaton)。 College of Computer Science Technology, BUPT 语言限定约束: 左部是单个非终结符。 CFL对实际语言结构的抽象: 表示句子的语法结构,如:表达式,嵌套结构{}。 目前的程序设计语言主要采用CFL描述语法结构。 * College of Computer Science Technology, BUPT 3型文法 也称正则文法 右线性文法(Right-linear Grammar) A→ωB 或 A→ω A、B∈N, ω∈T*。 左线性文法(Left-linear Grammar): A→Bω 或 A→ω A、B∈N, ω∈T*。 对应的语言:正则语言 对应的自动机:有限自动机(Finite Automaton)。 * College of Computer Science Technology, BUPT 例1: G = ({A,B,C}, {a,b,d}, P, A) P: A→AB;AB→CAAB;A→d;B→a;C→b 是1型文法。 A=d A=AB =dB =da A=AB =ABB =dBB =daB =daa A=AB =CAAB =bAAB =bdAB =bdCAAB =bdbAAB =bdbdAB=bdbddB =bdbdda * College of Computer Science Technology, BUPT 例2: G = ({A,B,C}, {a,b,c}, P, A) P: A→abc A→aBbc Bb→bB Bc→Cbcc bC→Cb aC→aaB aC→aa 是1型文法。 其定义的 L = {anbncn | n≥1} A =abc A =aBbc =abBc =abCbcc =aCbbcc =aabbcc =aaBbbcc * College of Computer Science Technology, BUPT 例3: G = ({S,B,C}, {a,b}, P, S) P: S→aC;S→bB;B→aS;B→bBB B→a; C→bS;C→aCC;C→b 是2型文法 S =aC =ab S = aC =aaCC S =aC =abS =abaC =ababS =ababaC =ababab S =bB =bbBB =bbaSB=bbaaCB =bbaabB =bbaaba * College of Computer Science Technology, BUPT 例4: G = ({A,B,C}, {a,b,c}, P, A) P: A→Ba; A→c; B→Cb; C→c 左线性文法 L = {c, cba} 正则语言 注意:已知语言求文法,文法不是唯一的,即可以有不同的表达方法。 * College of Computer Science Technology, BUPT 四类文法之间的关系 只是对生成式形式加以限制 0型 无限制 1型 不允许A→ε形式 2型 (A→ε 可作为特例) 3型 属于2型 不含A→ε的2型、3型属于1型,1型、2型、3型均属于0型。 * College of Computer Science Technology

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档