形式语言与自动机语言及文法.ppt
《形式语言与自动机语言及文法.ppt》由会员分享,可在线阅读,更多相关《形式语言与自动机语言及文法.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、形式语言与自动机课件语言及文法现在学习的是第1页,共33页第一节第一节 语言的定义与运算语言的定义与运算一、一、语言的一些术语:语言的一些术语:n 字母表:字母表:字符的有限集合,记为字符的有限集合,记为T。n字符串:字符串:由字母表由字母表T中的字符构成的序列称中的字符构成的序列称字母表字母表T上的字符串(句子)。上的字符串(句子)。n 常记为常记为u,v,w,x,y,z;n 常用常用a,b,c,d 标识单个字符。标识单个字符。现在学习的是第2页,共33页字 母 表(Alphabet)n 概念 形式符号的集合n n 记号 常用 T、表示n n 举例n 英文字母表英文字母表 a,b,z,A,B
2、,Z n 英文标点符号表英文标点符号表 ,;:.?!“”()n 汉字表汉字表 ,自自,动动,机机,n 化学元素表化学元素表 H,He,Li,n T=a,n,y,任任,意意 现在学习的是第3页,共33页字 符 串(string)n 概念 字母表 T 上的一个字符串(简称串),或称为n 字(word),为 T 中字符构成的一个有限序列。空串(empty string),用 表示,不包含任何 字符。n 举例 设 T=a,b,则,a,ba,bbaba 等都是串n n 字符串 w 的长度,记为 w,是包含在 w 中字符的个数n 举例 =0,bbaba=5 ai 表示含有表示含有i个个a的字符串的字符串现
3、在学习的是第4页,共33页n 连接(concatenation)n设 x,y为串,且 x a1a2 am,y b1b2 bn,n则 x 与 y 的连接n x y a1a2 am b1b2 bnn 连接运算的性质 n (x y)z x(y z)n x x x n x y x+y n 关 于 字 符 串 的 运 算现在学习的是第5页,共33页n 其它 如 取头字符,取尾部,子串匹配 等n 设设1,2,3是字母表是字母表T上的字符串,称上的字符串,称1是字符串是字符串12的前缀,的前缀,2是字符串是字符串12的后缀,且的后缀,且2是字符是字符串串123的子串。的子串。n 空串是任何字符串的前缀,后缀
4、及子串。空串是任何字符串的前缀,后缀及子串。n 例例:abc的前缀的前缀 a ab abc.后缀后缀 c bc abc.子串子串 a b c ab bc abc ,即一个字符串可以看作是多个字符串的连接。即一个字符串可以看作是多个字符串的连接。n 关 于 字 符 串 的 运 算现在学习的是第6页,共33页n 字符串的逆用 表示。是字符串的倒置。=b1b2bn =bnbn-1b2b1n 空串的逆还是现在学习的是第7页,共33页字 母 表 的 幂 运 算n 幂运算 设 T 为字母表,n 为任意自然数,n 定义(1)T0=n (2)设 x Tn-1,a T,则a x Tnn (3)Tn 中的元素只能
5、由(1)和(2)生成n n 闭包 T*=T0 T1 T2 n n 闭包 T+=T1 T2 T3 n n T*=T+,T+=T*现在学习的是第8页,共33页闭包的物理意义n T的星号闭包T*:字母表T上的所有字符串和空串的集合。n T的正闭包T+:字母表T上的所有字符串构成的集合。T*=T+n举例 设 T=0,1,则n T0=,T1=0,1,n T2=00,01,10,11,n T*=,0,1,00,01,10,11,n T+=0,1,00,01,10,11,现在学习的是第9页,共33页语 言(Languages)n 概念 设 T 为字母表,则任何集合 L T*是字母表T上的一个语言(langu
6、age)n n 举例n n 英文单词集英文单词集 ,English,words,n C 语言程序集语言程序集 字母表?字母表?n 汉语成语集汉语成语集 ,马到成功马到成功,n 化学分子式集化学分子式集 ,H2O,NaCl,n any,任意任意 现在学习的是第10页,共33页语 言(Languages)n举例:设T=a,b 则则 L1 =anbn|n1 L3=bk|k 是质数是质数 L2 =只有一个空句子的语言只有一个空句子的语言 L4=空语言空语言 均为字母表均为字母表T上的语言。上的语言。n由语言的定义知语言是集合,对于集合的运算可应用于对于语言的计算。如并,交,补,差。现在学习的是第11页
7、,共33页语言的基本运算n 语言的积:两个语言L1 和L2的积L1 L2是由L1和L2中的字符串连接所构成的字符串的集合。即L1中所有字符串分别与L2中的字符串连接得到的集合。设T=a,b,L1和 L2是T上的语言。L1=ab,ba L2=aa,bb则 L1 L2=abaa,abbb,baaa,babb L2 L1=aaab,aaba,bbab,bbban L1 L2 L2 L1 语言的积不可交换。现在学习的是第12页,共33页语言的基本运算n 语言的幂:语言的幂可归纳定义如下语言的幂可归纳定义如下:L0=Ln=L Ln-1=Ln-1 L n 1上例中,上例中,L12=abab,abba,ba
8、ab,baba L22=aaaa,aabb,bbaa,bbbb 现在学习的是第13页,共33页第二节 文法n定义:所谓文法是用来定义语言的一个数学模型:所谓文法是用来定义语言的一个数学模型n表示语言的方法:n若语言若语言L是有限集合,可用是有限集合,可用列举法n若若L是无限集合(集合中的每个元素有限长度),是无限集合(集合中的每个元素有限长度),用其他方法。用其他方法。n方法一:文法产生系统,由定义的文法规则产生方法一:文法产生系统,由定义的文法规则产生出语言的每个句子出语言的每个句子n方法二:机器识别系统:当一个字符串能被一个语方法二:机器识别系统:当一个字符串能被一个语言的识别系统接受,则
9、这个字符串是该语言的一个言的识别系统接受,则这个字符串是该语言的一个句子,否则不属于该语言。句子,否则不属于该语言。现在学习的是第14页,共33页元语言元语言n定义定义:描述语言的语言描述语言的语言例如:各种各样的程序设计语言例如:各种各样的程序设计语言n当人们要解释或讨论程序设计语言本身时,又需要当人们要解释或讨论程序设计语言本身时,又需要一种语言,被讨论的语言叫做对象语言,即某种程一种语言,被讨论的语言叫做对象语言,即某种程序设计语言,讨论对象语言的语言称为元语言序设计语言,讨论对象语言的语言称为元语言。现在学习的是第15页,共33页BNF(巴科斯范式)巴科斯范式)BNF范式通常被作为讨论
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 形式语言 自动机 语言 文法
限制150内