版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第3章有窮自動(dòng)機(jī)編譯原理陳炬樺
有窮自動(dòng)機(jī)的形式定義
定義3.1
一個(gè)確定型有窮自動(dòng)機(jī)DFA是一個(gè)五元組
DFA=(Q,Σ,t,q0,F)
Q:非空有窮狀態(tài)集;
Σ:有窮輸入字母表;
t:是一個(gè)單值映射t(q,a)q’
q0:開(kāi)始狀態(tài),q0∈QF:非空終止?fàn)顟B(tài)集
DFA狀態(tài)轉(zhuǎn)換(左表)圖
abq0q1q3q1q0q2q2q3q1q3q2q0有窮自動(dòng)機(jī)的擴(kuò)充的映射
定義3.2DFA=(Q,Σ,t,q0,F)擴(kuò)充的映射
t:定義為①t(q,ε)=q②t(q,aα)=t(t(q,a),α)
定義3.3DFA=(Q,Σ,t,q0,F),如果t(q0,α)=q∈F,稱α為DFA接收。定義3.4
兩個(gè)有窮自動(dòng)機(jī)A1和A2,如果L(A1)=L(A2),則稱自動(dòng)機(jī)A1與A2等價(jià)。
非確定型有窮自動(dòng)機(jī)NDFA定義3.5
一個(gè)非確定型有窮自動(dòng)機(jī)NDFA是一個(gè)五元組
NDFA=(Q,Σ,t,Q0,F)t:是一個(gè)多值映射
Q0:開(kāi)始狀態(tài)集,Q0Q例3.6NDFA
NDFA到DFA的轉(zhuǎn)換
空移環(huán)路的尋找和消除
NDFA到DFA的轉(zhuǎn)換
消除空移
如果B是終止?fàn)顟B(tài),置A為終止?fàn)顟B(tài);
如果A是開(kāi)始狀態(tài),置B為開(kāi)始狀態(tài);確定化——子集法
設(shè)NDFAA=(Q,Σ,t,Q0,F)設(shè)一個(gè)非確定型有窮自動(dòng)機(jī),它的語(yǔ)言為L(zhǎng)(A),可以構(gòu)造一個(gè)與它等價(jià)的確定型有窮自動(dòng)機(jī)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狀態(tài)子集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的化簡(jiǎn)
<1>終止?fàn)顟B(tài)與非終止?fàn)顟B(tài)可區(qū)分的,分成子集<2>對(duì)所有子集對(duì)所有輸入符號(hào)判斷,如果可區(qū)分則分解子集<3>如果<2>有分解子集,轉(zhuǎn)<2>,否則結(jié)束。從化簡(jiǎn)的DFA到程序設(shè)計(jì)
DFA的化簡(jiǎn)舉例xy0,2②×0|21,3,4,5①×1|3,4,5B1D3,4,5A0C2正規(guī)文法與有窮自動(dòng)機(jī)
從正規(guī)文法到FA
G={VN,VT,P,S}FA=(Q,Σ,t,q0,F)
q0={S}Σ=VT在FA增加一個(gè)終止?fàn)顟B(tài)Z,F(xiàn)={Z},Q=VN∪FA→aB=>t(A,a)=B;A→a=>t(A,a)=Z正規(guī)文法與有窮自動(dòng)機(jī)舉例
從正規(guī)文法到FA例3.14G19[S]:
S→aS|aA|bBA→bA|cCB→aB|dDC→cC|cD→dD|d正規(guī)文法與有窮自動(dòng)機(jī)
從FA到正規(guī)文法
FA=(Q,Σ,t,q0,F)G=(VN,VT,P,S)
VN=QVT=ΣS=q0t(A,a)=B=>A→aB,如果A∈F,A→ε正規(guī)文法與有窮自動(dòng)機(jī)舉例
從FA到正規(guī)文法
例3.15
G20[S]:
S→xA|yBA→yA|yC|xBB→xC|yC|yA|εC→ε
正規(guī)表達(dá)式的定義
定義3.12字母表Σ上的正規(guī)表達(dá)式和正規(guī)集遞歸定義如下
符號(hào)正規(guī)表達(dá)式正規(guī)集regular
seta∈Σa{a}εε{ε}
φ{(diào)Φ}
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)*正規(guī)表達(dá)式到NDFA的轉(zhuǎn)換
正規(guī)表達(dá)式到NDFA的轉(zhuǎn)換舉例NDFA到正規(guī)表達(dá)式的轉(zhuǎn)換
NDFA到正規(guī)表達(dá)式的轉(zhuǎn)換[(x!yy)(y|xy)*(y|x(x|y)]|[(y|xy*x)(yy*x)*(yy*y|x|y)]正規(guī)文法到正規(guī)表達(dá)式
規(guī)則:U→αV,V→β轉(zhuǎn)換為U→αβU→αU|β轉(zhuǎn)換為U→α*βU→α|β
轉(zhuǎn)換為
U→α|β
正規(guī)文法到正規(guī)表達(dá)式舉例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舉例
①構(gòu)造該正則式所對(duì)應(yīng)的NFA(畫(huà)出轉(zhuǎn)換圖)設(shè)字母表∑:{a,b},給出∑上的一個(gè)正則式aa*bb*(ab*)*b。①構(gòu)造該正則式所對(duì)應(yīng)的NFA(畫(huà)出轉(zhuǎn)換圖)②將所求的NFA確定化(畫(huà)出DFA的轉(zhuǎn)換圖)③將所求的DFA最小化(畫(huà)出極小化后的轉(zhuǎn)換圖);
②將所求的NFA確定化(畫(huà)出DFA的轉(zhuǎn)換圖)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舉例
①構(gòu)造該正則式所對(duì)應(yīng)的NFA(畫(huà)出轉(zhuǎn)換圖)設(shè)字母表∑:{0,1},給出∑上的一個(gè)正則式
1(01)*(10|1)*0*。①構(gòu)造該正則式所對(duì)應(yīng)的NFA(畫(huà)出轉(zhuǎn)換圖);②將所求的NFA確定化(畫(huà)出DFA的轉(zhuǎn)換圖);③將所求的DFA最小化(畫(huà)出極小化后的轉(zhuǎn)換圖);
②確定化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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度互聯(lián)網(wǎng)廣告行業(yè)勞動(dòng)合同范本及廣告內(nèi)容審核責(zé)任協(xié)議3篇
- 脫丙烷課程設(shè)計(jì)
- 船舶原理課程設(shè)計(jì)散貨船
- 美術(shù)生創(chuàng)新思維課程設(shè)計(jì)
- 線上花束插花課程設(shè)計(jì)
- 茶園生產(chǎn) 課程設(shè)計(jì)
- 線上課程設(shè)計(jì)公司
- 《精神分析技巧》課件
- 2024年美術(shù)教案設(shè)計(jì)(7篇)
- 穿銷單元課程設(shè)計(jì)
- DZ/T 0462.4-2023 礦產(chǎn)資源“三率”指標(biāo)要求 第4部分:銅等12種有色金屬礦產(chǎn)(正式版)
- 熱帶園林樹(shù)木學(xué)智慧樹(shù)知到期末考試答案章節(jié)答案2024年海南大學(xué)
- 《無(wú)機(jī)及分析化學(xué)》期末考試試卷附答案
- 2024年藥品集中采購(gòu)合同范本(二篇)
- 微生物學(xué)(魯東大學(xué))智慧樹(shù)知到期末考試答案章節(jié)答案2024年魯東大學(xué)
- 玻璃制造過(guò)程綠色節(jié)能技術(shù)創(chuàng)新
- 廣東省深圳市龍華區(qū)2023-2024學(xué)年中考適應(yīng)性考試物理試題含解析
- MOOC 國(guó)際私法-暨南大學(xué) 中國(guó)大學(xué)慕課答案
- 部隊(duì)行車安全教育
- 椎管內(nèi)腫瘤切除術(shù)的手術(shù)后護(hù)理
- 低溫共燒陶瓷(LTCC)全球市場(chǎng)、份額、市場(chǎng)規(guī)模、趨勢(shì)、行業(yè)分析報(bào)告2024-2030年
評(píng)論
0/150
提交評(píng)論