- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
上下文无关语言
Context-free Languages
中山大学杨超
yangch8@mail.sysu.edu.cn
一、上下文无关的语法
Context-free Grammars
● 下面我们用语法来定义串和语言。
一个语法( 文法) 是由一系列的替换规则构成。
如有一个语法由下面三个规则构成
A → 0A
A → B
B → #
● 这个语法中,A,B 是变量( 非终结符) ,其中A
是开始变量。0,1,# 是字母( 终结符).
● 刚才的例子也可以简记为:
A → 0A1 | B
B → #
● 日常语言的句子也可以用类似的替换规则构成:
句子 → 主语 谓语
主语 → 名词 | 复合名词
复合名词 → 冠词 名词
谓语 → 动词
名词 → dog
冠词 → a | the
动词 → bark | bite
● 一个语法由四部分要素构成:
(1) 有限个变量的集合 V
(2) 有限个字母的集合( 字母表)
(3) 有限个规则的集合 R
(4) 一个开始变量 S ∈ V
G = V , , R , S
● 假设u,v 和w 是由变量和字母构成的串,
A → w 是一条规则。
● 那么 uAv 由这条规则可以生成( 派生) 出
uwv ,我们记作
uAv ⇒ uwv
● 更一般地,若
u ⇒ u ⇒ u ⇒ ... ⇒ u ⇒ v
1 2 k
∗
● 我们记为 u ⇒ v
∗ ∗
● 由语法G 定义的语言 L ={w ∈ |S ⇒ w }
● 例:语法 G ={S }, {a , b }, R , S
其中R 是 S aSb |SS |
● 例:G = V , , R , S
V={ EXPR, TERM, FACTOR }
={a , , × , , }
● R: EXPR → EXPR+TERM | TERM
TERM → TERM x FACTOR |FACTOR
FACTOR → ( EXPR )
文档评论(0)