版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章有穷自动机编译原理陈炬桦
有穷自动机的形式定义
定义3.1
一个确定型有穷自动机DFA是一个五元组
DFA=(Q,Σ,t,q0,F)
Q:非空有穷状态集;
Σ:有穷输入字母表;
t:是一个单值映射t(q,a)q’
q0:开始状态,q0∈QF:非空终止状态集
DFA状态转换(左表)图
abq0q1q3q1q0q2q2q3q1q3q2q0有穷自动机的扩充的映射
定义3.2DFA=(Q,Σ,t,q0,F)扩充的映射
t:定义为①t(q,ε)=q②t(q,aα)=t(t(q,a),α)
定义3.3DFA=(Q,Σ,t,q0,F),如果t(q0,α)=q∈F,称α为DFA接收。定义3.4
两个有穷自动机A1和A2,如果L(A1)=L(A2),则称自动机A1与A2等价。
非确定型有穷自动机NDFA定义3.5
一个非确定型有穷自动机NDFA是一个五元组
NDFA=(Q,Σ,t,Q0,F)t:是一个多值映射
Q0:开始状态集,Q0Q例3.6NDFA
NDFA到DFA的转换
空移环路的寻找和消除
NDFA到DFA的转换
消除空移
如果B是终止状态,置A为终止状态;
如果A是开始状态,置B为开始状态;确定化——子集法
设NDFAA=(Q,Σ,t,Q0,F)设一个非确定型有穷自动机,它的语言为L(A),可以构造一个与它等价的确定型有穷自动机DFAA’=(Q,Σ,t,q0,F),L(A)=L(A’)
确定化——造表法
xy[q0][q1,q2][q0][q1,q2][q0,q3][q1,q2,q3][q0,q3][q1,q2,q3][q0,q3][q1,q2,q3][q0,q1,q3][q1,q2,q3][q0,q1,q3][q0,q1,q2,q3][q0,q1,q2,q3][q0,q1,q2,q3][q0,q1,q2,q3][q0,q1,q2,q3]NFA->DFAxy[q0]q0’[q1,q2]q1’[q0]q0’[q1,q2]q1’[q0,q3]q2’[q1,q2,q3]q3’[q0,q3]q2’[q1,q2,q3]q3’[q0,q3]q2’[q1,q2,q3]q3’[q0,q1,q3]q4’[q1,q2,q3]q3’[q0,q1,q3]q4’[q0,q1,q2,q3]q5’[q0,q1,q2,q3]q5’[q0,q1,q2,q3]q5’[q0,q1,q2,q3]q5’[q0,q1,q2,q3]q5’
用了q’别名去替换εNDFA的确定化
εNDFA=(Q,Σ∪{ε},t,Q0,F)定义3.8状态子集I的ε-闭包,
ε-closure(I)={q|t(I,ε)=q}定义3.9Ia=ε-closure(J),其中J=t(I,a)NFA-ε
->
NFAεNDFA的确定化举例
IxIy0[S]1[1,2,3]1[1,2,3]2[4]3[2,3,5]2[4]
4[6,7,8]3[2,3,5]5[4,6,7,8]3[2,3,5]4[6,7,8]6[7,8]5[4,6,7,8]6[7,8]4
[6,7,8]6[7,8]6[7,8]DFA的化简
<1>终止状态与非终止状态可区分的,分成子集<2>对所有子集对所有输入符号判断,如果可区分则分解子集<3>如果<2>有分解子集,转<2>,否则结束。从化简的DFA到程序设计
DFA的化简举例xy0,2②×0|21,3,4,5①×1|3,4,5B1D3,4,5A0C2正规文法与有穷自动机
从正规文法到FA
G={VN,VT,P,S}FA=(Q,Σ,t,q0,F)
q0={S}Σ=VT在FA增加一个终止状态Z,F={Z},Q=VN∪FA→aB=>t(A,a)=B;A→a=>t(A,a)=Z正规文法与有穷自动机举例
从正规文法到FA例3.14G19[S]:
S→aS|aA|bBA→bA|cCB→aB|dDC→cC|cD→dD|d正规文法与有穷自动机
从FA到正规文法
FA=(Q,Σ,t,q0,F)G=(VN,VT,P,S)
VN=QVT=ΣS=q0t(A,a)=B=>A→aB,如果A∈F,A→ε正规文法与有穷自动机举例
从FA到正规文法
例3.15
G20[S]:
S→xA|yBA→yA|yC|xBB→xC|yC|yA|εC→ε
正规表达式的定义
定义3.12字母表Σ上的正规表达式和正规集递归定义如下
符号正规表达式正规集regular
seta∈Σa{a}εε{ε}
φ{Φ}
e1与e2L(e1)与L(e2)
e1|e2L(e1|e2)=L(e1)∪L(e2)
e1.e2L(e1.e2)=L(e1)L(e2)
(e1)*L((e1)*)=L(e1)*正规表达式到NDFA的转换
正规表达式到NDFA的转换举例NDFA到正规表达式的转换
NDFA到正规表达式的转换[(x!yy)(y|xy)*(y|x(x|y)]|[(y|xy*x)(yy*x)*(yy*y|x|y)]正规文法到正规表达式
规则:U→αV,V→β转换为U→αβU→αU|β转换为U→α*βU→α|β
转换为
U→α|β
正规文法到正规表达式举例S→aS|aA|bBA→bA|cCB→aB|dDC→cC|cD→dD|dS→aS|(ab*cc*c|ba*dd*d)→a*ab*cc*c|a*ba*dd*dA→bA|cc*c→b*cc*cB→aB|dd*d→a*dd*dC→c*cD→d*d举例
①构造该正则式所对应的NFA(画出转换图)设字母表∑:{a,b},给出∑上的一个正则式aa*bb*(ab*)*b。①构造该正则式所对应的NFA(画出转换图)②将所求的NFA确定化(画出DFA的转换图)③将所求的DFA最小化(画出极小化后的转换图);
②将所求的NFA确定化(画出DFA的转换图)abq0[S]q1[1,2,3]
q1[1,2,3]q2[2,3]q3[4,5,6,7,10]q2[2,3]q2[2,3]q3[4,5,6,7,10]q3[4,5,6,7,10]q4[8,9,7,10]q5[5,6,710,Z]q4[8,9,7,10]q4[8,9,7,10]q6[9,7,10,Z]q5[5,6,710,Z]q4[8,9,7,10]q5[5,6,710,Z]q6[9,7,10,Z]q4[8,9,7,10]q6[9,7,10,Z]abA0123401234AAAAAXAABBB56A0B1212BBCCC3434CCDDD5656CCDD举例
①构造该正则式所对应的NFA(画出转换图)设字母表∑:{0,1},给出∑上的一个正则式
1(01)*(10|1)*0*。①构造该正则式所对应的NFA(画出转换图);②将所求的NFA确定化(画出DFA的转换图);③将所求的DFA最小化(画出极小化后的转换图);
②确定化01A[S]B[1,2,4,5,7,8,Z]B[1,2,4,5,7,8,Z]C[3,8,Z]D[5,6,7,8,Z]C[3,8,Z]E[8,Z]F[2,4,5,7,8,Z]D[5,6,7,8,Z]G[5,7,8,Z]D[5,6,7,8,Z]E[8,Z]E[8,Z]
F[2,4,5,7,8,Z]C[3,8,Z]D[5,6,7,8,Z]G[5,7,8,Z]E[8,Z]D[5,6,7,8,Z]③
最小化
01a[A]
b[B,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学一年级数学口算练习题大全
- 江西婺源茶业职业学院《高效焊接技术》2023-2024学年第一学期期末试卷
- 华北理工大学轻工学院《中学美术课程标准与教材分析》2023-2024学年第一学期期末试卷
- 湖北工程职业学院《放射性三废处理与处置》2023-2024学年第一学期期末试卷
- 周口文理职业学院《智能自动化与控制网络实训》2023-2024学年第一学期期末试卷
- 重庆理工大学《机器人工程数学(2)》2023-2024学年第一学期期末试卷
- 浙江水利水电学院《区块链技术及运用》2023-2024学年第一学期期末试卷
- 郑州信息工程职业学院《Office高级应用》2023-2024学年第一学期期末试卷
- 长江职业学院《动物分子与细胞生物学导论》2023-2024学年第一学期期末试卷
- 云南财经职业学院《国画基础(I)》2023-2024学年第一学期期末试卷
- 2025年度土地经营权流转合同补充条款范本
- 2025中国人民保险集团校园招聘高频重点提升(共500题)附带答案详解
- 0的认识和加、减法(说课稿)-2024-2025学年一年级上册数学人教版(2024)001
- 医院安全生产治本攻坚三年行动实施方案
- 工程项目合作备忘录范本
- 碳排放监测技术
- 江西省2023-2024学年高二上学期期末教学检测数学试题 附答案
- 仓储配送合同范本
- 《机器学习(含实验实践)》课程教学大纲(机械设计制造及其自动化专业)
- 劳务派遣招标文件范本
- 健康管理服务协议合同范例
评论
0/150
提交评论