收藏 分享(赏)

143 基本概念.ppt

上传人:jinchen 文档编号:6923444 上传时间:2019-04-27 格式:PPT 页数:71 大小:563.50KB
下载 相关 举报
143 基本概念.ppt_第1页
第1页 / 共71页
143 基本概念.ppt_第2页
第2页 / 共71页
143 基本概念.ppt_第3页
第3页 / 共71页
143 基本概念.ppt_第4页
第4页 / 共71页
143 基本概念.ppt_第5页
第5页 / 共71页
点击查看更多>>
资源描述

1、1.4.3 基本概念,对语言研究的三个方面 表示(representation) 无穷语言的表示。 有穷描述(finite description) 研究的语言要么是有穷的,要么是可数无穷的,这里主要研究可数无穷语言的有穷描述。 结构(structure)语言的结构特征。,1.4.3 基本概念,字母表(alphabet) 字母表是一个非空有穷集合,字母表中的元素称为该字母表的一个字母(letter)。又叫做符号(symbol)、或者字符(character)。 非空性。 有穷性。 例如:a,b,c,d a,b,c,z0,1,1.4.3 基本概念,字符的两个特性 整体性(monolith),也叫

2、不可分性。 可辨认性(distinguishable),也叫可区分性。 例(续)a,a,b,baa,ab,bb ,,1.4.3 基本概念,字母表的乘积(product) 12=ab|a1,b2 例如: 0,10,1=00,01,10,11 0,1a,b,c,d=0a,0b,0c,0d,1a,1b,1c,1d a,b,c,d0,1=a0,a1,b0,b1,c0,c1,d0,d1 aa,ab,bb0,1= aa0,aa1,ab0,ab1,bb0,bb1,1.4.3 基本概念,字母表的n次幂 0= n=n-1 是一个空句子。思考:和 是相等的吗?,辨析与思考,与 是一个句子。 。这是因为不是一个空集

3、,它是含有一个空句子的集合。 |=1 |=0 A=A A= 对于加法来说, 是什么?对于乘法呢?对于关系R呢?P16定义1-17 R0 =(a, a) | a S,1.4.3 基本概念,的正闭包 +=234的克林闭包*=0+=023,1.4.3 基本概念,例如: 0,1+=0,1,00,01,10,11,000,001,010,011,100, 0,1*=,0,1,00,01,10,11,000,001,010,011,100, a,b,c,d+=a,b,c,d,aa,ab,ac,ad,ba,bb,bc,bd,aaa,aab,aac,aad,aba,abb,abc, a,b,c,d*=,a,b

4、,c,d,aa,ab,ac,ad,ba,bb,bc,bd,aaa,aab,aac,aad,aba,abb,abc,1.4.3 基本概念,结论:+=x|x是中的至少一个字符连接而成的字符串。*=x|x是中的若干个,包括0个字符,连接而成的一个字符串。,1.4.3 基本概念,句子(sentence) 是一个字母表,x*,x叫做上的一个句子。 句子相等两个句子被称为相等的,如果它们对应位置上的字符都对应相等。 句子的别称字(word)、(字符、符号)行(line)、(字符、符号)串(string),1.4.3 基本概念,出现(apperance) x,y*,a,句子xay中的a叫做a在该句子中的一个

5、出现。 当x=时,a的这个出现为字符串xay的首字符 如果a的这个出现是字符串xay的第n个字符,则y的首字符的这个出现是字符串xay的第n+1个字符。 当y=时,a的这个出现是字符串xay的尾字符 例:abaabb。,1.4.3 基本概念,句子的长度(length) x*,句子x中字符出现的总个数叫做该句子的长度,记作|x|。 长度为0的字符串叫空句子,记作。 例如: |abaabb|=6 |bbaa|=4|=0|bbabaabbbaa|=11,1.4.3 基本概念,并置(concatenation) x,y*,x,y的并置是由串x直接相接 串y所组成的。记作xy。并置又叫做连结。 串x的n

6、次幂x0= xn=xn-1x,1.4.3 基本概念,例如: 对x=001,y=1101x0=y0=x4=001001001001y4=1101110111011101 对x=0101,y=110110x2=01010101y2=110110110110x4=0101010101010101y4=110110110110110110110110,1.4.3 基本概念,*上的并置运算性质 结合律:(xy)z=x(yz)。 左消去律:如果xy=xz,则y=z。 右消去律:如果yx=zx,则y=z。 唯一分解性:存在唯一确定的a1,a2,an,使得x= a1a2an。 单位元素:x=x=x。,1.4.

7、3 基本概念,前缀与后缀 设x,y,z,w,v*,且x=yz,w=yv (1) y是x的前缀(prefix)。 (2)如果z,则y是x的真前缀(proper prefix)。 (3) z是x的后缀(suffix); (4) 如果y,则z是x的真后缀(proper suffix)。 (5) y是x和w的公共前缀(common Prefix)。,1.4.3 基本概念,公共前缀与后缀 (6)如果x和w的任何公共前缀都是y的前缀,则y是x和w的最大公共前缀。 (7) 如果x=zy,w=vy,则y是x和w的公共后缀(common suffix )。 (8)如果x和w的任何公共后缀都是y的后缀,则y是x和

8、w的最大公共后缀。,1.4.3 基本概念,例 字母表=a,b上的句子abaabb的前缀、后缀、真前缀和真后缀如下:前缀:,a,ab,aba,abaa,abaab,abaabb真前缀:,a,ab,aba,abaa,abaab后缀:,b,bb,abb,aabb,baabb,abaabb真后缀:,b,bb,abb,aabb,baabb,1.4.3 基本概念,结论 x的任意前缀y有唯一的一个后缀z与之对应, 使得x=yz;反之亦然。 x的任意真前缀y有唯一的一个真后缀z与之对应,使得x=yz;反之亦然。 |w|w是x的后缀|=|w|w是x的前缀|。 |w|w是x的真后缀|=|w|w是x的真前缀|。 w

9、|w是x的前缀=w|w是x的真前缀x,|w|w是x的前缀|=|w|w是x的真前缀|+1。,1.4.3 基本概念,结论 w|w是x的后缀=w|w是x的真后缀x,|w|w是x的后缀|=|w|w是x的真后缀|+1。 对于任意字符串w,w是自身的前缀,但不是自身的真前缀;w是自身的后缀,但不是自身的真后缀。 对于任意字符串w,是w的前缀,且是w的真前缀;是w的后缀,且是w的真后缀。,1.4.3 基本概念,约定 用小写字母表中较为靠前的字母a,b,c,表示字母表中的字母。 用小写字母表中较为靠后的字母x,y,z,表示字母表上的句子。 用xT表示x的倒序。例如,如果x=abc,则xT=cba。,1.4.3

10、 基本概念,子串(substring) w,x,y,z*,且w=xyz,则称y是w的子串。 公共子串(common substring) t,u,v,w,x,y,z*,且t=uyv,w=xyz,则称y是t和w的公共子串(common substring)。 如果y1,y2,yn是t和w的公共子串,且max|y1|,|y2|,|yn|=|yj|,则称yj是t和w的 最大公共子串。 两个串的最大公共子串并不一定是唯一的。,1.4.3 基本概念,语言(language) L*,L称为字母表上的一个语言(language),xL,x叫做L的一个句子。 例:0,1上的不同语言 00,11 ,0,10,1

11、,00,11 , 0,1,00,11,01,10 00,11*,01,10*,00,01,10,11*,00,1*1,0,1*1110,1*,1.4.3 基本概念,语言的乘积(product) L11*,L22*,语言L1与L2的乘积是一个语言,该语言定义为: L1L2=xy| xL1,yL2 是字母表12上的语言。,1.4.3 基本概念,例 L1=0,1。 L2=00,01,10,11。 L3=0,1,00,01,10,11,000,=+ 。 L4=,0,1,00,01,10,11,000,=* 。 L5=0n|n1。 L6=0n1n|n1。 L7=1n|n1。 L8=0n1m|n,m1。

12、L9=0n1n0n|n1。 L10=0n1m0k|n,m,k1。 L11=x|x+且x中0和1的个数相同。,1.4.3 基本概念,上述几个语言的部分特点及相互关系 上述所有语言都是L4的子集(子语言); L1,L2是有穷语言;其他为无穷语言;其中L1是上的所有长度为1的句子组成的语言,L2是上的所有长度为2的句子组成的语言; L3,L4分别是的正闭包和克林闭包; L5L7L6,但L5L7= L8; 同样L9L10, 但是我们有:L6L5L7,L9L10。,1.4.3 基本概念,L6=0n1n|n1中的句子中的0和1的个数是相同的,并且所有的0在所有的1的前面, L11=x|x+且x中0和1的个

13、数相同中的句子中虽然保持着0的个数和1的个数相等,但它并没要求所有的0在所有的1的前面。 例如,0101,1100L11,但是0101 L6,1100L6。 而对xL6,有xL11。 所以,L6 L11。,1.4.3 基本概念,幂 L*,L的n次幂是一个语言,该语言定义为 当n=0是,Ln=。 当n1时,Ln= Ln-1L 。 正闭包 L+=LL2L3L4 克林闭包 L*= L0LL2L3L4,1.5 小结,(1) 集合:集合的表示、集合之间的关系、集合的基本运算。 (2) 关系:主要介绍了二元关系相关的内容。包括等价关系、等价分类、关系合成、关系闭包。 (3) 递归定义与归纳证明。,1.5

14、小结,(4) 图:无向图、有向图、树的基本概念。 (5) 语言与形式语言:自然语言的描述,形式语言和自动机理论的出现,形式语言和自动机理论对计算机科学与技术学科人才能力培养的作用。 (6) 基本概念:字母表、字母、句子、字母表上的语言、语言的基本运算。,练习(见习题),21(1)(3)(5) 22(需要知道个数,不需要写完) 28(1)(2)(6) 29 32(3)(6)(8),第2章 文法,2.1 启示 2.2 形式定义 2.3 文法的构造 2.4 文法的Chomsky体系 2.5 空语句,第2章 文法,主要内容文法的直观意义与形式定义,推导、文法产生的语言、句子、句型;乔姆斯基体系,左线性

15、文法、右线性文法,文法的推导与归约;空语句。 重点文法、推导、归约、模型的等价性证明。 难点形式化的概念,文法的构造。,文法的引入,对任何语言L,有一个字母表,使得L* 。 L的具体组成结构是什么样的? 一个给定的字符串是否为一个给定语言的句子?如果不是,它在结构的什么地方出了错?进一步地,这个错误是什么样的错?如何更正?。 这些问题对有穷语言来说,比较容易解决。 这些问题对无穷语言来说,不太容易解决。 语言的有穷描述。,2.1 启示,一些例子: 成都是美丽的城市。 集合是数学的基础。 中国进入WTO。 句子结构:尖括号表示必须出现。,构造句子,根据句子结构,可以构造如下合法句子: 集合进入W

16、TO。 且合法句子总数为? | 其中,符号“|”表示集合的基数。,关于语义,“集合进入WTO。”符合语法,但它没有适当含义,这是语义问题,不在本书研究范畴之内。,规则,“a可以是b ”表示为“a b” 也可读作“a定义为b ” 是进入美丽的城市WTO,句子图解,“集合是数学的基础。”图解。,练习,“形式语言是很抽象的。”图解。,讨论,自然语言中,句子的分解到此结束了吗?,Stanford parser (自然语言分析工具),启发,表示语言四要素 最终定义的结构,如 一系列“符号”,即语法变量,如 规则,即产生式,如 终极符号,如“集合”,“数学的基础”,2.2 形式定义,定义2-1 文法(gr

17、ammar)G是一个四元组: G = (V, T, P, S) V变量(variable)的非空有穷集。一个语法变量表示了一个语法范畴。 T终极符(terminal)的非空有穷集。VT= 。 P产生式(production)的非空有穷集。P中元素具有形式 。 其中 (VT)+,且中至少有V中的一个元素出现。 (VT)* 。 , 依次称为产生式 的左部和右部。 SSV,文法G的开始符号(start symbol) 。,例2-1,(1) (A, 0, 1, A01, A 0A1, A 1A0, A) (2) (A, 0, 1, A0, A 0A, A) (3) (A, B, 0, 1, A01,

18、A 0A1 , A 1A0 , B BA , B 0, A),讨论,例2-1(6) (S, a, b, S 00S, S 11S, S 00, S 11, S) 是文法吗?为什么?,不是。产生式右部0, 1等符号既不为语法变量也不为终极符。即不满足定义中 (VT)* 。 更改:可将a, b依次改为0, 1 。,约定,对一组有相同左部的产生式 1, 2, , n, 可以简记为 b1 | b2 | | bn A, B, C, 表示语法变量 a, b, c, 表示终极符号 X, Y, Z, 表示语法变量或终极符号 x, y, z, 表示终极符号组成的行 , , , 表示语法变量或终极符号组成的行,例

19、 2-3 四元组是否满足文法的要求。,(A,B,C,E,a,b,c,SABC|abc,De|a,FBc,AA,E abc|,S)4种修改 (1) (A,B,C,E,S,D,F,a,b,c,e,SABC|abc,De|a,FBc,AA,E abc|,S)。 (2) (A,B,C,E,S ,a,b,c,SABC|abc,AA, E abc|,S)。 (3) (A,B,C,E,a,b,c, AA,E abc|,A)。 (4) (A,B,C,E,a,b,c, AA,E abc|,E)。,推导与归约,定义2-2 设G = (V, T, P, S)是一个文法,如果 P, , (VT)*, 则称 在 G中直

20、接推导出 ,记作 。 读作 在文法G中直接推导出 。 直接推导可简称为推导(derivation)或派生。 与之相对应,也可称 直接归约成 。 直接归约可简称为归约(reduction)。,推导的意义,推导符号实质上是对产生式符号“”(从某种意义上)的扩展,以逐步获得最终的字符串。,推导的分类,直接推导 是(VT)*上的二元关系。 它具有反自反性,反对称性。 n步推导 ,简记为 ,或 表示在G中经过n步推导出 多步推导 ,简记为 ,或 表示在G中经过至少1步推导出 任意步推导 ,简记为 ,或 表示在G中经过若干步推导出,说明,以上结论建立在如下假设基础上: 没有形如“A A” 的产生式,或形如

21、“A BC , BC A” 的产生式组 。,附:浅谈语法范畴,一个语法变量A表示了一个语法范畴。即以该变量为开始符号所产生的集合,记为L(A) 。 特别地,变量S的语法范畴 L(S) = L(G) 。,例2-5,设G = (S, A, B, 0, 1, S A| AB, A 0| 0A, B 1| 11, S) S A S AB A 00 = 0m B 1 B 11 L(S) = 0m | m 1 0m 1| m 1 0m 11| m 1= 0m | m 1, 1, 11,例2-6,设G = (A, 0, 1, A 01, A 0A1, A) A 0nA1n A 0n1n L(A) = 0n1

22、n | n 1,几种常用产生式,对x, y +, 为获得xnyn | n 1,可使用产生式组 D xy| xDy实现; 为获得xn | n 0,可使用产生式组 D | xD实现; 为获得xnyn | n 0,可使用产生式组 D | xDy实现。,语言,定义2-3 设文法G = (V, T, P, S),则称 L(G) = w| w T*且S w为文法G产生的语言。 对于 w L(G),w称为G 产生的句子(sentence)。 参见P33定义1-43语言(language) L*,L称为字母表上的一个语言, xL,x叫做L的一个句子。 定义2-4 设文法G = (V, T, P, S),对于

23、(VT)* ,如果S ,则称是G产生的一个句型(sentential form)。,句子与句型,句子w是从S开始,在G中可以推导出来的终极符号行,它不含语法变量。 句型是从S开始,在G中可以推导出来的符号行,它可能含有语法变量。 联系与区别:句子一定是句型,但句型不一定是句子。,例2-7,给定文法G = (S, A, B, C, D, a, b, c, d, #, S ABCD| abc#, A aaA, AB aabbB, BC bbccC, cC cccC, CD ccd#, CD d#, CD #d, S),求句型aaaaaabbbbcccc#d和aaaaaaaaAbbccccd#的推导

24、。,例2-7(续),G = (S, A, B, C, D, a, b, c, d, #, S ABCD| abc#, A aaA, AB aabbB, BC bbccC, cC cccC, CD ccd#, CD d#, CD #d, S) 句型 aaaaaabbbbcccc#d S ABCD 需要增加4个连续的a aaABCD 需要增加2个连续的a aaaaABCD 需要aabb aaaaaabbBCD 需要bbcc aaaaaabbbbccCD 需要增加cc aaaaaabbbbccccCD 需要#d aaaaaabbbbcccc#d,讨论,由C cC可得cC ccC 由cC ccC 可得

25、C cC吗?,不可以。 因为cC ccC可能是由cC ccC得到的, 而cC ccC成立并不意味着C cC成立。 另外, C c也不意味着产生式C c的存在,因为它可以由产生式组C cC, C 得到。 总之,规则一般作为条件,而不是结论存在。,例2-7(续),G = (S, A, B, C, D, a, b, c, d, #, S ABCD| abc#, A aaA, AB aabbB, BC bbccC, cC cccC, CD ccd#, CD d#, CD #d, S) 句型aaaaaaaaAbbccccd# S ABCD 需要增加8个连续的a aaABCD 需要增加6个连续的a aaa

26、aABCD 需要增加4个连续的a aaaaaaABCD 需要增加2个连续的a aaaaaaaaABCD 需要bbcc aaaaaaaaAbbccCD 需要ccd# aaaaaaaaAbbccccd# 需要d#,讨论,推导过程是唯一的吗?,不一定。如:例2-7中第一个句型推导过程唯一,但第二个推导过程不唯一(变量A及其左边前面的推导与其右边的推导互不影响)。,构造产生标识符的文法,例 2-8 标识符是以字母开头的字母数字串 G=(,0,1,9,A,B,C,Z,a,b,c,z,P, ) P= | , | , A|B|C|D|E|F|G|H|I|J|K|L|M|N|O |P|Q|R|S|T|U|V|

27、W|X|Y|Z , a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z , 0|1|2|3|4|5|6|7|8|9 ,思考,如果用L表示=,用b表示, a表示, d表示,则可得到? G=(L,b,a,d,Lb|a|Lb|La|Ld,L),构造产生标识符的文法(续),G=(,0,1,2,9,A,B,C,Z,a,b,c,z,P, ) P= , A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z , a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y

28、|z ,,构造产生标识符的文法(续),|0|1|2|3|4|5, 6|7|8|9 , A|B|C|D|E|F, G|H|I|J|K , L|M|N|O|P|Q, R|S|T|U|V , W|X|Y|Z|a|b, c|d|e|f|g , h|i|j|k|l|m, n|o|p|q|r , s|t|u|v|w|x y|z ,思考,如果用L表示=,用H表示=,用T表示=,用b表示, a表示,d表示,则可得到? G=(L,H,T,b,a,d,LHT,H b|a,T |bT|aT|dT,L),构造产生标识符的文法(续),对于标识符 id8n23,在文法G中的推导: 3 3 23 23 n23 n23 8n23 8n23 d8n23 d8n23 id8n23,构造产生标识符的文法(续),对于标识符id8n23,在文法G中的推导: 标识符 iidid8id8n id8n2id823id8n23,作业(见习题) ,4. 5.,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报