版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
12025/10/20SchoolofComputerScience,BUPT3.7正則表達式與有限自動機的關(guān)系結(jié)論:有限自動機、右(左)線性文法、正則表達式都定義了同一種語言--正則語言.
證明策略
-NFANFADFARERE(RegularExpression)---正則表達式22025/10/20SchoolofComputerScience,BUPT從DFA構(gòu)造等價的正則表達式(狀態(tài)消去法)思路:
(1)擴展自動機的概念,允許正則表達式作為轉(zhuǎn)移弧的標記。這樣,就有可能在消去某一中間狀態(tài)時,保證自動機能夠接受的字符串集合保持不變。
(2)在消去某一中間狀態(tài)時,與其相關(guān)的轉(zhuǎn)移弧也將同時消去,所造成的影響將通過修改從每一個前趨狀態(tài)到每一個后繼狀態(tài)的轉(zhuǎn)移弧標記來彌補。
以下分別介紹中間狀態(tài)的消去與正則表達式構(gòu)造過程。32025/10/20SchoolofComputerScience,BUPT從DFA構(gòu)造等價的正則表達式(中間狀態(tài)的消去)xy
r1r2xz
r1y
r2代之以:xy
r1+r2xyr2r1代之以:xy
r1*xz
y
r1代之以:42025/10/20SchoolofComputerScience,BUPT從DFA構(gòu)造等價的正則表達式(中間狀態(tài)的消去)
q1qkp1pmP1PmQkQ1R11R1mRkmRk1
R11+Q1S*P1R1m+Q1S*PmRkm+QkS*PmRk1+QkS*P1q1p1qkpm消去s52025/10/20SchoolofComputerScience,BUPT從DFA構(gòu)造等價的正則表達式(狀態(tài)消去法)步驟:
(1)對每一終態(tài)q,依次消去除q和初態(tài)q0之外的其它狀態(tài);(2)若q
q0,最終可得到一般形式如下左圖的狀態(tài)自動機,
該自動機對應(yīng)的正則表達式可表示為(R+SU*T)*SU*.(3)若q=q0,最終可得到如下右圖的自動機,它對應(yīng)的正則表達式可以表示為R*.(4)最終的正則表達式為每一終態(tài)對應(yīng)的正則表達式之和(并).62025/10/20SchoolofComputerScience,BUPT狀態(tài)消去法舉例對于終態(tài)C對于終態(tài)D等價的正則表達式(0+1)*1(0+1)+(0+1)*1(0+1)(0+1)72025/10/20SchoolofComputerScience,BUPT狀態(tài)消去法舉例01342567
a
b
aa
b
b
a
b
012567a+ba+b
aabb0257(a+b)*(a+b)*aa+bb07(a+b)*(aa+bb)(a+b)*82025/10/20SchoolofComputerScience,BUPT定理:
L是正則表達式R表示的語言,則存在一個
-NFA
E,滿足L(E)=L(R)=L.
證明:構(gòu)造性證明.可以通過結(jié)構(gòu)歸納法證明從R可以構(gòu)造出與其等價的,滿足如下條件的
-NFA:
(1)恰好一個終態(tài);
(2)沒有弧進入初態(tài);(3)沒有弧離開終態(tài);
從正則表達式構(gòu)造等價的
-NFA92025/10/20SchoolofComputerScience,BUPT基礎(chǔ):從正則表達式構(gòu)造等價的
-NFA(歸納構(gòu)造過程)1對于
,構(gòu)造為
3對于a
,構(gòu)造為a2對于
,構(gòu)造為102025/10/20SchoolofComputerScience,BUPT歸納:從正則表達式構(gòu)造等價的
-NFA(歸納構(gòu)造過程)1對于R+S,構(gòu)造為
112025/10/20SchoolofComputerScience,BUPT歸納:從正則表達式構(gòu)造等價的
-NFA(歸納構(gòu)造過程)2對于RS
,構(gòu)造為
3對于R*
,構(gòu)造為
122025/10/20SchoolofComputerScience,BUPT舉例:
設(shè)正則表達式1*0(0+1)*,構(gòu)造等價的
-NFA.從正則表達式構(gòu)造等價的
-NFA0+1
1*
132025/10/20SchoolofComputerScience,BUPT從正則表達式構(gòu)造等價的
-NFA(0+1)*
1*0(0+1)*
142025/10/20SchoolofComputerScience,BUPT3.8右線性語言與有限自動機
至此,我們已學(xué)到正則集有三種定義方式,且這三種方式等價:正則集是含有{ε},φ,{a}以及在并、連接和*運算下封閉的語言由正規(guī)表達式定義的集合是正則集。由右線性文法生成的語言是正則集。此外,還有第四種方式: 將正則集作為由有限自動機定義的集合。即正則集(右線性語言)<=>有限自動機152025/10/20SchoolofComputerScience,BUPT右線性文法=>有限自動機定理3.8.1:由任意右線性文法G定義的語言必然能被一個NFAM所接受。即L(G)=L(M)證明思路(構(gòu)造證明): 設(shè)右線性文法G=(N,T,P,S),構(gòu)造一個與G等價的有限自動機NFA
M=(Q,T,δ,q0,F(xiàn)),其中:Q=NU{H},H為一個新增加的狀態(tài),H
N,q0=S{H,S}當(dāng)S->ε屬于P。{H}否則
δ的定義為:當(dāng)A
aB
P,則B
δ(A,a)當(dāng)A
a
P,則H
δ(A,a)對于任意輸入,δ(H,a)=φ。F=162025/10/20SchoolofComputerScience,BUPT右線性文法=>有限自動機(例)例:設(shè)有右線性文法G=({S,B},{a,b},P,S),其中 P:S
aBB
aB|bS|a
試構(gòu)造與G等價的有限自動機M。解:設(shè)NFAM=(Q,T,,q0,F)Q={S,B,H}T={a,b}q0=SF={H}轉(zhuǎn)換函數(shù):對于產(chǎn)生式S
aB,有
(S,a)={B}對于產(chǎn)生式B
aB,有
(B,a)={B}對于產(chǎn)生式B
bS,有
(B,b)={S}對于產(chǎn)生式B
a,有
(B,a)={H}SBH開始aaab172025/10/20SchoolofComputerScience,BUPT右線性文法=>有限自動機(續(xù))求證
G與NFAM兩者定義了同一語言。
證明:
先證(1)文法G產(chǎn)生的語言L(G)能夠被NFAM所接收;再證(2)NFAM接受的語言L(M)可由文法G產(chǎn)生。182025/10/20SchoolofComputerScience,BUPT右線性文法=>有限自動機(續(xù))證明方法:通過兩者定義的語言中任意一個字符串來說明。(1)設(shè)ω=a1a2…an∈L(G),且n
1則有S=>a1A1=>a1a2A2=>… =>a1a2…an-1An-1=>a1a2…an-1an則由δ的定義,有A1
δ(S,a1),A2
δ(A1,a2),…,An-1
δ(An-2,an-1),H
δ(An-1,an),且H
δ(S,
)因為HF,所以
被NFAM所接受。又若ε∈L(G),則表明S
ε∈P,由NFAM的定義,有S∈F,即ε也被NFAM接受。所以,由文法G派生的任意字符串
L(M)。
#192025/10/20SchoolofComputerScience,BUPT右線性文法=>有限自動機(續(xù))(2)再證L(M)可由G產(chǎn)生設(shè)ω=a1a2…an
被NFAM接受,即
L(M),則必然存在狀態(tài)序列S,A1,A2,…An-1,H對M有轉(zhuǎn)換函數(shù)為 A1
δ(S,a1),A2
δ(A1,a2),…, An-1
δ(An-2,an-1),H
δ(An-1,an)則可規(guī)定G中含有產(chǎn)生式S
a1A1,A1
a2A2,……,An-1
an于是存在推導(dǎo)S=>a1A1=>a1a2A2=>…=>a1a2…an-1An-1=>a1a2…an-1an即a1a2…an
是文法G的一個句子。也即
L(G)。#202025/10/20SchoolofComputerScience,BUPT有限自動機=>右線性文法定理3.8.2:設(shè)有限自動機M接受的語言為L(M)則存在右線性文法G,它產(chǎn)生的語言L(G)=L(M)。證明思路:構(gòu)造一個右線性文法G,使它接受由NFAM定義的語言。構(gòu)造方法: 設(shè)M=(Q,T,δ,q0,F(xiàn)),構(gòu)造一個右線性文法G=(N,T,P,S),其中N=Q,S=q0P定義為:若δ(A,a)=B且B
F,則A
aB在P中若δ(A,a)=B且B∈F,則A
a和A
aB在P中
L(M)<=>L(G)的證明見書P65(自學(xué))。
212025/10/20SchoolofComputerScience,BUPT有限自動機=>右線性文法(例)例:設(shè)有DFAM=({q0,q1,q2,q3},{a,b},
,q0,{q3})
其中轉(zhuǎn)換函數(shù)如圖所示,
試構(gòu)造與之等價的右線性文法G。解:構(gòu)造右線性文法G=(N,T,P,S)N={q0,q1,q2,q3}T={a,b}S=q0產(chǎn)生式集合P
(q0,a)=q1,
q0
aq1
(q0,b)=q2,
q0
bq2
(q1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年云南大學(xué)附屬醫(yī)院開展校園招聘30人的備考題庫及參考答案詳解1套
- 小學(xué)數(shù)學(xué)作業(yè)中使用AI解題助手的注意力分配效果研究課題報告教學(xué)研究課題報告
- 河北省2026年度定向選調(diào)生招錄備考題庫完整參考答案詳解
- 中國地質(zhì)大學(xué)(北京)2026年度專職輔導(dǎo)員招聘10人備考題庫及參考答案詳解
- 2025年鼓東街道公開招聘專職網(wǎng)格員備考題庫(12月)及答案詳解一套
- 2025年廣東風(fēng)華高新科技股份有限公司校園招聘備考題庫附答案詳解
- 2025年西華大學(xué)先進飛行器與動力科研創(chuàng)新團隊科研助理崗位招聘備考題庫及答案詳解一套
- 2025年輕工所公開招聘備考題庫完整參考答案詳解
- 2025年天津醫(yī)科大學(xué)口腔醫(yī)院第一批公開招聘備考題庫及參考答案詳解一套
- 2025年西安市浐灞絲路學(xué)校招聘總務(wù)處干事備考題庫含答案詳解
- 甘肅省慶陽市七區(qū)2024-2025學(xué)年高一上學(xué)期期末聯(lián)考語文試題
- 人教版小升初考試數(shù)學(xué)試卷(含解析)重慶市渝北區(qū)魯能巴蜀小學(xué)2025年
- 糧庫安全生產(chǎn)責(zé)任制
- 2025年福建省綜合評標專家?guī)炜荚囶}庫(二)
- 2024蘇州大學(xué)輔導(dǎo)員招聘筆試真題及答案
- 《海南自由貿(mào)易港建設(shè)總體方案》解讀
- 倉庫安全管理臺賬模板
- 完整版醫(yī)療器械基礎(chǔ)知識培訓(xùn)考試試題及答案
- 220kV電網(wǎng)輸電線路的繼電保護設(shè)計
- 通信維護作業(yè)安全培訓(xùn)課件
- 顱腦損傷康復(fù)病例分析
評論
0/150
提交評論