用属性解释类型 2 语法
类型2文法是上下文无关文法(CFG)。
所有作品都采用以下形式-
A→x—其中A是非终结符,x是非终结符和终结符的字符串,
上下文无关文法等价于下推自动机(PDA)和上下文无关语言。
示例 -下推自动机(PDA)
特性
如果产生式规则的形式为A→α,则称A文法G=(V,T,P,S)是上下文无关的。
转换允许A→ε[即,α→ε]其中,A是非终结符,α是任何终结符或非终结符。
在这里,转换规则的左侧仅包含一个非终结符。
类型2语法是大多数编程语言(例如XML)的语法基础。特性
CFG在以下情况下关闭-
联盟
级联
Kleene闭合
它不是在互补、替代、逆转下封闭的。
示例
考虑生产,P⇒{S→aSa,S→bSb,S→ε}
Since S → aSa → aaSaa [as S → aSa] → aabSbaa [as S → bSb] → aabbaa [as S → ε]
因此,S可能生成S={ε,aa,bb,abba,aabbaa,abaaba,...}
因此,语言定义为L(G)={wwR|wε{a,b}*}
可以使用使用堆栈内存来存储符号的下推自动机来处理CFG。