形式语言与自动机理论第六章(蒋宗礼)
形式语言与自动机理论Formal Languages and Automata Theory 蒋宗礼 课程目的和基本要求 课程性质 技术基础 基础知识要求 数学分析(或者高等数学),离散数学 主要特点 抽象和形式化 理论证明和构造性 基本模型的建立与性质 课程目的和基本要求 本专业人员4种基本的专业能力 计算思维能力 算法的设计与分析能力 程序设计和实现能力 计算机软硬件系统的认知、分析、设计与应用能力 计算思维能力 逻辑思维能力和抽象思维能力 构造模型对问题进行形式化描述 理解和处理形式模型 课程目的和基本要求 知识 掌握正则语言、下文无关语言的文法、识别模型及其基本性质、图灵机的基本知识。 能力 培养学生的形式化描述和抽象思维能力。 使学生了解和初步掌握“问题、形式化描述、自动化(计算机化)”这一最典型的计算机问题求解思路。 主要内容 语言的文法描述。 RL RG、 FA、RE、RL的性质 。 CFL CFG(CNF、GNF)、PDA、CFL的性质。 TM 基本TM、构造技术、TM的修改。 CSL CSG、LBA。 教材及主要参考书目 蒋宗礼,姜守旭. 形式语言与自动机理论. 北京:清华大学出版社,2003年 John E Hopcroft, Rajeev Motwani, Jeffrey D Ullman. Introduction to Automata Theory, Languages, and Computation (2nd Edition). Addison-Wesley Publishing Company, 2001 John E Hopcroft, Jeffrey D Ullman. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley Publishing Company, 1979 第6章 上下文无关语言 Gbra:S?S(S)|ε L(Gbra)不是RL,是CFL 第6章 上下文无关语言 主要内容 关于CFL的分析 派生和归约、派生树 CFG的化简 无用符、单一产生式、空产生式 CFG的范式 CNF GNF CFG的自嵌套特性 第6章 上下文无关语言 重点 CFG的化简。 CFG到GNF的转换。 难点 CFG到GNF的转换,特别是其中的用右递归替换左递归的问题。 6.1 上下文无关语言 文法G=(V,T,P,S)被称为是上下文无关的。 如果除了形如A?ε的产生式之外,对于?α?β∈P,均有|β|≥|α|,并且α∈V成立。 关键:对于?A∈V,如果A?β∈P,则无论A出现在句型的任何位置,我们都可以将A替换成β,而不考虑A的上下文。 6.1.1 上下文无关文法的派生树 算术表达式的文法 Gexp1:E?E+T|E-T|T T?T*F|T/F|F F?F↑P|P P?(E)|N(L)|id N?sin|cos|exp|abs|log|int L?L,E|E 6.1.1 上下文无关文法的派生树 算术表达式x+x/y↑2的不同派生 6.1.1 上下文无关文法的派生树 文法Gexp1句子x+x/y↑2的结构。 6.1.1 上下文无关文法的派生树 派生树(derivation tree) 一棵(有序)树(ordered tree) 树的每个顶点有一个标记X,且X∈V∪T∪{ε} 树根的标记为S; 如果非叶子顶点v标记为A,v的儿子从左到右依次为v1,v2,…,vn,并且它们分别标记为X1,X2,…,Xn,则A?X1X2…Xn∈P; 如果X是一个非叶子顶点的标记,则X∈V; 如果顶点v标记为ε,则v是该树的叶子,并且v是其父顶点的惟一儿子。 6.1.1 上下文无关文法的派生树 别称 生成树 分析树(parse tree) 语法树(syntax tree) 顺序 v1,v2是派生树T的两个不同顶点,如果存在顶点v,v至少有两个儿子,使得v1是v的较左儿子的后代,v2是v的较右儿子的后代,则称顶点v1在顶点v2的左边,顶点v2在顶点v1的右边。 6.1.1 上下文无关文法的派生树 结果(yield) 派生树T的所有叶子顶点从左到右依次标记为X1,X2,…,Xn,则称符号串X1X2…Xn是T的结果。 一个文法可以有多棵派生树,它们可以有不同的结果。 句型α的派生树:“G的结果为α的派生树”。 6.1.1 上下文无关文法的派生树 派生子树(subtree) 满足派生树定义中除了对跟结点的标记的要求以外各条的树叫派生子树(subtree)。 如果这个子树的根标记为A,则称之为A子树。 惟一差别是根结点可以标记非开始符
原创力文档

文档评论(0)