课件:形式语言与自动机经典教学完整版.ppt

课件:形式语言与自动机经典教学完整版.ppt

* * 7.1 基本定义 确定的(deterministic)PDA ?(q,a,Z)∈Q×∑×Γ, |δ(q,a,Z)|+|δ(q,ε,Z)|≤1 PDA在每一个状态q和一个栈顶符号下的动作都是惟一的。 关键 对于?(q,Z)∈Q×Γ,M此时如果有非空移动,就不能有空移动。 每一种情况下的移动都是惟一的。 * * 7.1 基本定义 例 7-2 构造接受L={wwT|w∈{0,1}*}的PDA。 差异 δ(q0,0,A)={(q0,AA),(q1,ε)} 0是w中的0或者是wT的首字符0; δ(q0,1,B)={(q0,BB), (q1,ε)} 1是w中的1或者是wT的首字符1。 * * 7.2 PDA与CFG等价 对于任意PDA M1,存在PDA M2,使得L(M2)=N(M1); 对于任意PDA M1,存在PDA M2,使得N (M2)= L (M1)。 CFL可以用空栈接受语言的PDA接受。 PDA接受语言可以用CFG描述。 * * 7.2.1 PDA用空栈接受和用终止状态接受等价 定理 7-1 对于任意PDA M1,存在PDA M2,使得N (M2)= L (M1)。 证明要点: (1) 构造。 设PDA M1 = (Q,∑,Γ,δ1,q01,Z01,F) 取PDA M2 = (Q∪{q02,qe},∑,Γ∪{Z02},δ,q02,Z02,F) 其中Q∩{q02,qe}=Γ∩{Z02}=Φ。 * * 7.2.1 PDA用空栈接受和用终止状态接受等价 δ2(q02,ε,Z02)={(q01,Z01Z02)} ?(q,a,Z)∈Q×∑×Γ, δ2(q,a,Z)=δ1(q,a,Z); ?(q,Z)∈(Q-F)×Γ, δ2(q,ε,Z)=δ1(q,ε,Z); ?(q,Z)∈F×Γ δ2(q,ε,Z)=δ1(q,ε,Z)∪{(qe,ε)}; ?q∈F,δ2(q,ε,Z02)= {(qe,ε)}; ?Z∈Γ∪{Z02},δ2(qe,ε,Z)= {(qe,ε)} * * 7.2.1 PDA用空栈接受和用终止状态接受等价 (2) 证明N (M2)= L (M1)。 x∈L(M1) ? (q01,x,Z01)├M1*(q,ε,γ)且q∈F ?(q01,x,Z01Z02)├M1*(q,ε,γZ02)且q∈F ?(q01,x,Z01Z02)├M2*(q,ε,γZ02)且q∈F * * 7.2.1 PDA用空栈接受和用终止状态接受等价 ?(q01,x,Z01Z02)├M2*(q,ε,γZ02)├M2*(qe,ε,ε)且q∈F ?(q01,x,Z01 Z02)├M2*(qe,ε,ε) ?(q02,x,Z02)├M2(q01,x,Z01Z02)├M2*(qe,ε,ε) ?(q02,x,Z02)├M2*(qe,ε,ε) ?x∈N(M2) * * 7.2.1 PDA用空栈接受和用终止状态接受等价 定理 7-2 对于任意PDA M1,存在PDA M2,使得L (M2)= N (M1)。 证明要点: (1)构造。 设PDA M1 = (Q,∑,Γ,δ1,q01,Z01, Φ) * * 7.2.1 PDA用空栈接受和用终止状态接受等价 取PDA M2 = (Q∪{q02,qf},∑,Γ∪{Z02},δ,q02,Z02,{qf}) 其中Q∩{q02,qf}=Γ∩{Z02}=Φ。δ2的定义如下, δ2(q02,ε,Z02)={(q01,Z01Z02)} 对于?(q,a,Z)∈Q×(∑∪{ε})×Γ, δ2(q,a,Z)=δ1(q,a,Z)。 δ2(q,ε,Z02)= {(qf,ε)} * * 7.2.1 PDA用空栈接受和用终止状态接受等价 (2) 证明L (M2)= N (M1)。 x∈L(M2) ?(q02,x,Z02)├M2*(qf,ε,ε) ? (q02,x,Z02)├M2(q01,x,Z01Z02) ? (q02,x,Z02)├M2(q01,x,Z01Z02)├M2*(qf,ε,ε)。 ? (q01,x,Z01Z02)├M2*(q,ε,Z02)且(q,ε,Z02)├M2*(qf,ε,ε) ? (q01,x,Z01Z02)├M1*(q,ε,Z02)。 ? (q01,x,Z01)├M1*(q,ε,ε)。 ?x∈N(M1)。 * * 7.2.2 PDA与CFG等价 定理 7-3 对于任意CFL L,存在PDA M,使得N(M)=L。 证明要点:先考虑识别L- {ε}的PDA,然后再考虑对ε的处理问题。 * * 7.2.2 PDA与CFG等价 (1) 构造PDA。 设GNF G=(V,T,P,S),使得L(G)=L- {ε}。 取PDA M=({q},T,V

文档评论(0)

1亿VIP精品文档

相关文档