上下文无关文法正则表达式 如何定义上下文无关文法
其实上下文无关文法正则表达式的问题并不复杂,但是又很多的朋友都不太了解如何定义上下文无关文法,因此呢,今天小编就来为大家分享上下文无关文法正则表达式的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
一、如何定义上下文无关文法
1、在两种符号置换的意义下(终结符和非终结符分别替换),许多文法之间有着相似性。把一组彼此相似的文法抽象成一个更高级的形式体系,就叫作文法形式。迄今,文法形式的研究主要集中在上下文无关文法上。
2、文法形式的具体定义是:给定无限的终结符表Σ∞和无限的非终结符表V∞。任取Σ∞和V∞的非空子集Σ和V,按构造普通文法的方法定义一个四元组G=(Σ,V,S,P)。在G确定以后,任取映射函数ψ,把Σ中每一元素a映为Σ∞中一有限子集ψ(a),把V中每一元素A映为V∞中一个有限子集ψ(A),且当A厵B时有ψ(A)∩ψ(B)=φ。ψ就是所需的置换。通过它得到一个具体文法ψ(G)=【ψ(Σ),ψ(V),ψ(S),ψ(P)】,其中ψ(P)是把P中所有产生式中的符号作ψ置换后得到的一组新产生式,ψ(Σ),ψ(V)和ψ(S)分别是ψ(P)中出现的终结符集,非终结符集和出发符号。这样的G称为文法形式,ψ称为G的一个解释,ψ(G)是G的一个解释文法,被认为是相似于G。令ψ遍历各种可能的解释,得到的ψ(G)集合称为G的文法性语言族,由此生成的语言集合(ψ(G))称为G的文法性语言族。例如,文法形式{S→aS,S→a}的文法性语言族是正则语言集;{S→SS,S→a}的文法性语言族是上下文无关语言集。
3、若文法形式G作为普通文法时生成的语言(G)是无限集,则称G为非平凡的。此时文法性语言族(G)是一个满主半AFL,反之不然。如满主半AFL({ab│n≥1}),不是一个文法性语言族。
4、以G1·G2表文法性语言族G1和G2的乘积,1∩2表两者之并,它们仍是文法性语言族。当吇G1G2时,必有G吇G1或G吇G2成立,则称G是素的。正则语言集和线性语言集都是素文法性语言族。任一文法性语言族G必可唯一地分解为它的素因子乘积和:G=(11…1n1)∪…∪(m1…mnm)。其中每个Gij都是素因子。这个分解在乘积运算∪可交换的意义下是唯一的。从文法生成语言,可有多种推导公式。例如文法{S→AB,A→a,B→b}可有两种推导:S崊AB崊aB崊ab及S崊AB崊Ab崊ab。若每次都取最左边的非终结符进行推导,如上例中的前一种方式那样,则称为左推导。如果有两种不同的左推导推出同一结果,则称此文法是二义性的,反之是无二义文法。对有些二义性文法,可找到一个等价的无二义文法,生成同一个语言。不具有无二义文法的语言称为本质二义性语言。例如,{S→A,S→a,A→a}是二义性文法。
二、对任意一个上下文无关文法,求其非终结符的Follow集
#号是分析过程中引入的界符用来表示开始和结束的边界用对于一个文法G(S)来说求公理S的FOLLOW集的时候,由于没有一个产生式的右部包含S所以我们规定S的FOLLOW集是{#}就是一个句型的结束符#句型#
上下文无关文法正则表达式的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于如何定义上下文无关文法、上下文无关文法正则表达式的信息别忘了在本站进行查找哦。
——————————————小炎智能写作工具可以帮您快速高效的创作原创优质内容,提高网站收录量和各大自媒体原创并获得推荐量,点击右上角即可注册使用
相关新闻推荐
- 上海身份证证号正则表达式(文档身份证号码怎么自动调整格式) 2023-11-29
- 上下文无关文法正则表达式 如何定义上下文无关文法 2023-11-29
- 三相电源相电压正则表达式 正则表达式符号解释 2023-11-29
- 三相电压正则表达式?三相三线制电压表达式 2023-11-29
- 三相交流电的正则表达式,正则表达式 2023-11-29
- 三目运算符正则表达式 c语言中的三目运算符的表达式可以赋值吗 2023-11-29