文法G=(V,T,P,S)
G叫做0型文法(type 0 grammar),也叫做短语结构文法(phrase structure grammar, PSG)。
L(G)叫做0型语言。也可以叫做短语结构语言(PSL)、递归可枚举集(recursively enumerable ,r.e. )。 对应的其识别语言机器为图灵机(TM:turing machine)
G是0型文法。
如果对于"α®β∈P,均有|β|≥|α|成立,则称G为1型文法(type 1 grammar),或上下文有关文法(context sensitive grammar,CSG)。
L(G)叫做1型语言(type 1 language)或者上下文有关语言(context sensitive language ,CSL)。对应的其识别语言机器为线性有限状态机(LBA)
G是1型文法
如果对于"α®β∈P,均有|β|≥|α|,并且α∈V成立,则称G为2型文法(type 2 grammar),或上下文无关文法(context free grammar,CFG)。
L(G)叫做2型语言(type 2 language)或者上下文无关语言(context free language ,CFL)。对应的其识别语言机器为下推自动机(PDA :pushdown automaton)
G是2型文法
如果对于"α®β∈P,α®β均具有形式
A®w
A®wB
其中A,B∈V,w∈T+。则称G为3型文法(type 3 grammar),也可称为正则文法(regular grammar ,RG)或者正规文法。L(G)叫做3型语言(type 3 language),也可称为正则语言或者正规语言(regular language ,RL)。 对应的其识别语言机器为有穷状态自动机(FA :finite automatior)
如果用一张图形来表示,是否会更清楚一些呢,我们俩看看:
在正则表达式中还有6种等价描述模型的转换,看看他们自己的关系:
注:
⑴ 如果一个文法G是RG,则它也是CFG、CSG和短语结构文法。反之不一定成立。
⑵ 如果一个文法G是CFG,则它也是CSG和短语结构文法。反之不一定成立。
⑶ 如果一个文法G是CSG,则它也是短语结构文法。反之不一定成立。
相应地:
⑷ RL也是CFL、CSL和短语结构语言。反之不一定成立。
⑸ CFL也是CSL和短语结构语言。反之不一定成立。
⑹ CSL也是短语结构语言。反之不一定成立
⑺ 当文法G是CFG时,L(G)却可以是RL。
⑻ 当文法G是CSG时,L(G)可以是RL、CSL。
⑼ 当文法G是短语结构文法时,L(G)可以是RL、CSL和CSL。
现在我们用一张图来表示他们之间看似复杂的关系: