2型文法:
1、2型文法也称上下文无关文法
2、如果文法G(N,Σ,P,S)的规则集P中所有规则均满足:A->α,其中,A∈N,α∈(N∪Σ)*,则称G为上下文无关文法
3、规则右端的格式没有约束,即规则左部的非终结符可以被改写成任何形式
下推自动机:
注:以下来自《统计自然语言处理》一书,下推自动机的实例维基百科有(多看几遍就能理解)
下推自动机(PDA)可以看成是一个带有附加下推存储器的有限自动机,下推存储器是一个堆栈。原理图如下:
不确定的下推自动机可以表达成一个七元组:M=(Σ,Q,Γ,δ,q0,Z0,F)
Σ是输入符号的有穷集合;Q是状态的有限集合;Γ为下推存储器符号的有穷集合;q0∈Q是初始状态;
Z0∈Γ为最初出现在下推存储器顶端的开始符号;F⊆Q是终止状态(接受状态)集合;
映射关系δ:δ(q,a,Z)={(q1,r1),(q2,r2),…,(qm,rm)} (3-5)
其中,q1,q2,…,qm∈Q,a∈Σ,Z∈Γ,r1,r2,…,rm∈Γ*。
1、式3-5的含义是:当下推自动机处于状态q,接收输入符号a时,自动机将进入到qi(i=1,2,…,m)状态,
并以ri来代替下推存储器(栈)顶端符号Z,同时将输入头指向下一个字符。当Z被ri取代时,ri的符号
按照从左到右的顺序依次从下向上推入到存储器。
2、特殊情况下,δ(q,ε,r)={(q1,r1),(q2,r2),…,(qm,rm)} 时,意味者下推自动机处于状态q时没有接收
任何输入符号,因此,输入头位置不移动,只用于处理下推存储器内部的操作,自动机进入到qi(i=
i=1,2,…,m)状态,并以ri来代替下推存储器(栈)顶端符号Z。
补充一点:
如果把下推自动机扩展,允许一个有限状态自动机存取两个栈,将会得到一个能力更强的自动机,与图灵机等价。