版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上下文无关文法
下推自动机第八讲上下文无关文法
下推自动机
从下推自动机构造等价的上下文无关文法
从上下文无关文法构造等价的下推自动机
例:利用下推栈实现自上而下语法分析的过程
语法分析基本问题:对任意上下文无关文法G=(V
,T
,P,S)和任意
w
T*,是否有w
L(G)?若成立,则给出分析树;否则,进行报错处理。从上下文无关文法构造等价的下推自动机
利用下推栈进行自顶向下的分析过程举例E
EOE
(E)
v
dO
+
v
(v+d)EEOEEOvEOE
EE)(E)E)OEE)OvE)OE)+E))d)从上下文无关文法构造等价的下推自动机
一种构造方法
设
CFG
G=(V,
T,P
,S)
,构造一个空栈接受方式的
PDA
E=({q},T,V
T,,q,S)
,
转移函数
定义如下:
(1)
对每一
A
V,(q,
,A)={(q,)
"A
”
P};
(2)
对每一
a
T,(q,a,a)={(q,
)}.从上下文无关文法构造等价的下推自动机
举例对右边产生式所代表的
CFG,依上述方法构造PDA
为E
EOE
(E)
v
dO
+
其中
定义为(q,
,E)={(q,EOE),(q,(E)),(q,v),(q,d)},{(q,+),(q,
)},(q,
,O)={(q,
)},(q,v,v)={(q,
)}(q,d,d)=(q,+,+)=(q,
,
)=({q},{v,d,+,
,‘(‘,‘)‘},{E,O,v,d,+,
,‘(‘,‘)‘},,q,E),从上下文无关文法构造等价的下推自动机(q,‘(‘,‘(‘)=(q,‘)‘,‘)‘)={(q,
)}(注:这里加单引号以示与元符号中的括号进行区分)
结论
依上述构造方法,从CFG
G=(V,
T,P
,S)构造一个空栈接受方式的PDA
E=({q},T,V
T,,q,S),
则有N(E)=L(G).
证明思路
欲证,对任何w
T*,w
L(G)
w
N(E).
先证明如下结论,
if
A
w,
then
(q,w,A)├*(q,
,
).
lm归纳于A
w的步数n.
lm基础n=1,A
w必为产生式,(q,w,A)├(q,w,w)├*(q,
,
).归纳设第一步使用产生式A
X1X2…Xm
,必有w=w1w2…wm
,
(q,w,A)├(q,w,X1X2…Xm
)├*(q,w2…wm,X2…Xm)├*(q,w3…wm,X3…Xm)├*…├*(q,
,
).所以有如下结论,
if
S
w,
then
(q,w,S)├*(q,
,
).
lm即,
w
L(G)
w
N(E).
从上下文无关文法构造等价的下推自动机
证明思路
欲证,对任何w
T*,w
L(G)
w
N(E).归纳于(q,w,A)├*(q,
,
)的步数n.归纳n>1,设第一步使用产生式A
X1X2…Xm
,可以将w分为w=w1w2…wm
,满足(q,wi,Xi)├*(q,
,
),即,
w
N(E)
w
L(G).
从上下文无关文法构造等价的下推自动机基础n=1,必有w=
,且A
为G
的产生式,所以A
w.
lm无论Xi为终结符,还是非终结符,都有Xi
wi.
lm所以有如下结论,对任何w
T*,
if
(q,w,S)├*(q,
,
),
thenS
w.
lm因此,A
X1X2…Xm
w1w2…wm
=w
lm
先证明如下结论:
if
(q,w,A)├*(q,
,
),
thenA
w.
lm
一种构造方法
设PDA
E=(Q,
,
,
,q0,Z0),构造CFG
G=(V,
,P
,S)
,其中
V={S}
{[pXq]
p,qQX
}
产生式集合P
定义如下:
(1)
对每一p
Q,G
包含产生式
S
[q0Z0p];
(2)
若(q,X1X2…Xk)
(p,a,X),
则G
包含产生式
[pXpk]
a[qX1p1][p1X2p2]…[pk-1Xkpk].
其中,a
或a=,
(参见右图,其中p0=q)
从下推自动机构造等价的上下文无关文法
举例
对于右下图的PDA,构造CFG
G=(V,{0,1},P,S),其中
V={S}
{[pYq]
p,q
{q0,q1,q2}
Y
{Z0,X}
}
产生式集合P
定义如下:
(1)
S
[q0Z0q0];S
[q0Z0q1];S
[q0Z0q2];
(2)
[q0Z0qj]
0[q0Xqi][qiZ0qj],i,j=0,1,2;((q0,XZ0)
(q0,0,Z0))
(3)
[q0Xqj]
0[q0Xqi][qiXqj],i,j=0,1,2;((q0,XX)
(q0,0,X))
(4)
[q0Xq1]
1;((q1,
)
(q0,1,X))
(5)
[q1Xq1]
1;((q1,
)
(q1,1,X))
(6)
[q1Z0q2]
;((q2,
)
(q1,,Z0))注意:对于(4),(5),(6),前一页的[qXpk]中,k=0,
p0分别为q1,q1,q2.从下推自动机构造等价的上下文无关文法
结论
依上述构造方法,从PDA
E=(Q,
,
,
,q0,Z0)
构造一个CFG
G=(V,
,P
,S),则有N(E)=L(G).
证明思路
欲证,对任何w
*,w
N(E)
w
L(G).
即证明:存在p
Q.(q0,w,Z0)├*(p,
,
)
iff
S
w.
先证明对q,p
Q,
X
,
(q,w,X)├*(p,
,
)
iff
[qXp]
w.
这样,
if
(q0,w,Z0)├*(p,
,
)
,
then
[q0Z0p]
w.
因为G
中包含产生式S
[q0Z0p],
所以S
w.
反之,若S
w,由G的构造过程,
存在p,满足[q0Z0p]
w,从而有(q0,w,Z0)├*(p,
,
)
从下推自动机构造等价的上下文无关文法
归纳于(q,w,X)├*(p,
,
)的步数n.归纳n>1,设第一步推导为(q,w,X)├(p0,x,X1X2…Xk
),其中
w=ax,a或为
或为单个符号,且(p0,X1X2…Xk
)
(q,a,X).
证明思路(续前)
现证明对q,p
Q,
(q,w,X)├*(p,
,
)
iff
[qXp]
w.
由G的构造,[qXp]
a[p0X1p1][p1X2p2]…[pk-1Xkp]为产生式.可以将x分为x=x1x2…xk
,存在p1,p2,…,pk-1,满足
(pi-1,xi,Xi)├*(pi,
,
),1
i<k;(pk-1,xk,Xk)├*(p,
,
),基础n=1,必有w或为
或为单个符号,且(p,
)
(q,w,X).
由G的构造,[qXp]
w为一个产生式,所以[qXp]
w.
由归纳假设,[pi-1Xipi]
xi,1
i<k;[pk-1Xkp]
xk
.
所以,
[qXp]
ax1x2…xk=w.
从下推自动机构造等价的上下文无关文法归纳n>1,设第一步推导为[qXp]├a[p0X1p1][p1X2p2]…[pk-1Xkp].
证明思路(续前)
继续证明对q,p
Q,
(q,w,X)├*(p,
,
)
iff
[qXp]
w.
由G的构造,(p0,X1X2…
Xk)
(q,a,X).基础n=1,[qXp]
w必为一个产生式,由G的构造,w或为
或为单个符号,且(p,
)
(q,w,X).所以(q,w,X)├*(p,
,
).由归纳假设,
(pi-1,xi,Xi)├*(pi,
,
),1
i<k;(pk-1,xk,Xk)├*(p,
,
),所以,
(q,w,X)├(p0,x1x2…xk,X1X2…
X
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工干燥工岗前安全风险考核试卷含答案
- 稀土原辅材料预处理工岗位实操考核试卷含答案
- 网络内容创作团队负责人综合评估表
- 水解酵母分离工岗前适应考核试卷含答案
- 智慧农业灌溉系统远程监测系统升级方案
- 供热管网系统运行工安全宣贯竞赛考核试卷含答案
- 松脂工达标竞赛考核试卷含答案
- 理货员节能强化考核试卷含答案
- 塑料层压工岗位细节考核试卷含答案
- 制造工厂生产效率考核表
- 中石化秋招笔试考试题库
- 建材行业领域主要职业危害及防治
- 山中问答课件
- 2026届新高考英语冲刺热点复习With的复合结构
- 数字营销基础(第二版)课件 2.2数字营销技术
- 2025年注册环保工程师专业基础考试真题卷(附解析)
- 《医事法学》电子教案
- DB35T 2162-2023 基于分布式光纤传感的跨江燃气管道运行监测技术规范
- 师德师风专题讲座主题课件
- 2024年高中英语衡水体书法练字字帖
- 工业设计技术-Geomagic Design X 逆向设计实用教程 课件 项目5、6 遥控器建模、连杆建模
评论
0/150
提交评论