版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
12023/5/21SchoolofComputerScience,BUPT第四章上下文無關(guān)文法與下推自動(dòng)機(jī)推導(dǎo)樹和文法的二義性上下文無關(guān)文法的變換
Chomsky范式 Greibach范式下推自動(dòng)機(jī)上下文無關(guān)語言的性質(zhì)22023/5/21SchoolofComputerScience,BUPT本章要點(diǎn)上下文無關(guān)文法(即2型文法):
產(chǎn)生式形如A→α,A,∪Τ)*所描述的語言稱為上下文無關(guān)語言。用途:可定義程序設(shè)計(jì)語言、進(jìn)行語法分析、簡(jiǎn)化語言翻譯2型文法對(duì)應(yīng)的識(shí)別器——下推自動(dòng)機(jī)
PDA(PushDownAutomata)由輸入帶、有限控制器和下推棧構(gòu)成32023/5/21SchoolofComputerScience,BUPT回顧:在第一講中介紹過如下內(nèi)容設(shè)T=0,1,L=0n1nn1,如0011,000111,01
L,而10,1001,,010
L.
如下是一個(gè)可接受該語言的上下文無關(guān)文法
S01S0S1
但沒有任何有限自動(dòng)機(jī)能夠接受語言L.42023/5/21SchoolofComputerScience,BUPT歸約與推導(dǎo)的概念:推理字符串是否屬于文法所定義的語言一種是自下而上的方法,稱為遞歸推理(recursiveinference),遞歸推理的過程習(xí)稱為歸約;一種是自上而下的方法,稱為推導(dǎo)(derivation).歸約過程將產(chǎn)生式的右部(body)替換為產(chǎn)生式的左部(head).推導(dǎo)過程將產(chǎn)生式的左部(head)替換為產(chǎn)生式的右部(body).4.1推導(dǎo)樹和二義性
52023/5/21SchoolofComputerScience,BUPT歸約與推導(dǎo)歸約過程舉例
對(duì)于CFG
Gexp=({E,O},
{(,),+,,v,d},P
,E),P為(1)EEOE
(2)E(E)
(3)Ev
(4)Ed
(5)O+
(6)O
遞歸推理出字符串v(v+d)
的一個(gè)歸約過程為v(v+d)(4)v(v+E)(6)vO(v+E)(3)vO(E+E)(5)vO(EOE)(1)vO(E)(2)vOE(3)EOE(1)E62023/5/21SchoolofComputerScience,BUPT歸約與推導(dǎo)推導(dǎo)過程舉例
對(duì)于CFG
Gexp=({E,O},
{(,),+,,v,d},P
,E),P為(1)EEOE
(2)E(E)
(3)Ev
(4)Ed
(5)O+
(6)O
從開始符號(hào)到字符串v(v+d)
的一個(gè)推導(dǎo)過程為v(v+d)(4)v(v+E)(6)E(E)(3)(1)v(EOE)(5)(3)EOE(1)EEE(2)v(E)v(E+E)72023/5/21SchoolofComputerScience,BUPT歸約與推導(dǎo)EEOEE(E)EvEdO+O最左推導(dǎo)(leftmostderivations)
若推導(dǎo)過程的每一步總是替換出現(xiàn)在最左邊的非終結(jié)符,則這樣的推導(dǎo)稱為最左推導(dǎo).為方便,最左推導(dǎo)關(guān)系用表示,其傳遞閉包用表示.
如對(duì)于文法Gexp,下面是關(guān)于v(v+d)
的一個(gè)最左推導(dǎo):lmlmv(v+d)v(v+E)v(EOE)EOEEv(E)vOEvEv(vOE)lmlmlmlmlmlmlmlm82023/5/21SchoolofComputerScience,BUPT歸約與推導(dǎo)EEOEE(E)EvEdO+O最右推導(dǎo)(rightmostderivations)
若推導(dǎo)過程的每一步總是替換出現(xiàn)在最右邊的非終結(jié)符,則這樣的推導(dǎo)稱為最右推導(dǎo).為方便,最右推導(dǎo)關(guān)系用表示,其傳遞閉包用表示.
如對(duì)于文法Gexp,下面是關(guān)于
v(v+d)
的一個(gè)最右推導(dǎo):rmrmv(v+d)E(v+d)EO(E+d)EOEEEO(EOd)EO(E)EO(EOE)EO(v+d)rmrmrmrmrmrmrmrm92023/5/21SchoolofComputerScience,BUPT推導(dǎo)樹
用圖的方法表示一個(gè)句型的推導(dǎo),這種圖稱為推導(dǎo)樹(也稱語法樹或語法分析樹)。有助于理解語法結(jié)構(gòu)的層次。定義方法:文法的起始符為根,樹的枝結(jié)點(diǎn)標(biāo)記是非終結(jié)符,葉結(jié)點(diǎn)標(biāo)記為終結(jié)符或。若枝結(jié)點(diǎn)有直接子孫x1,x2,…,xk,則文法中有生成式A→x1x2…xk102023/5/21SchoolofComputerScience,BUPT推導(dǎo)樹舉例例:(書P94例1) 文法S→S+S|S*S|(S)|a, 對(duì)句子(a*a+a)可有推導(dǎo)樹即:推導(dǎo)樹是對(duì)文法G中一個(gè)特定句子形式的派生過程所做的一種自然描述。
112023/5/21SchoolofComputerScience,BUPT邊緣葉子從左向右組成的字符串稱為推導(dǎo)樹的邊緣。如圖x1y1y2x3xmxm+1xn-1y3y4y5是樹的邊緣122023/5/21SchoolofComputerScience,BUPT(1)EEOE(2)E(E)(3)Ev(4)Ed(5)O+(6)O歸約過程自下而上構(gòu)造了一棵樹
如對(duì)于文法Gexp,關(guān)于
v(v+d)
的一個(gè)歸約過程可以認(rèn)為是構(gòu)造了如下一棵樹:v(v+d)(4)v(v+E)(6)vO(v+E)(3)vO(E+E)(5)vO(EOE)(1)vO(E)(2)vOE(3)EOE(1)EEEOEEOEEd+v()v132023/5/21SchoolofComputerScience,BUPT(1)EEOE(2)E(E)(3)Ev(4)Ed(5)O+(6)O推導(dǎo)過程自上而下構(gòu)造了一棵樹
如對(duì)于文法Gexp,關(guān)于
v(v+d)
的一個(gè)推導(dǎo)過程可以認(rèn)為是構(gòu)造了如下一棵樹:Ed+vvOEEE()EEOv(v+d)(4)v(v+E)(6)E(E)(3)(1)v(EOE)(5)(3)EOE(1)EEE(2)v(E)v(E+E)142023/5/21SchoolofComputerScience,BUPT歸約、推導(dǎo)與分析樹之間關(guān)系三者之間的關(guān)系設(shè)
CFG
G=(N,
T,P
,S).以下命題是相互等價(jià)的:
(1)字符串
wT*可以歸約(遞歸推理)到非終結(jié)符A;
(2)
Aw;(3)
Aw;(4)
Aw;(5)
存在一棵根結(jié)點(diǎn)為A的分析樹,其邊緣為
w.lmrm152023/5/21SchoolofComputerScience,BUPT定理: 設(shè)2型文法G=(N,T,P,S),如果存在S=>+ω,當(dāng)且僅當(dāng)文法G中有一棵邊緣為ω的推導(dǎo)樹。證明:
需證明對(duì)任意枝結(jié)點(diǎn)B∈N,有B=>*ω當(dāng)且僅當(dāng)存在邊緣為ω的B樹(根為B的樹)子樹概念: 一棵派生樹的子樹,是樹中的某個(gè)頂點(diǎn)連同它的全部后裔,以及連接這些后裔的邊。歸約、推導(dǎo)與分析樹之間關(guān)系162023/5/21SchoolofComputerScience,BUPT證明步驟:1.證當(dāng)ω是B樹邊緣時(shí),有B=>*ω 設(shè)B樹邊緣為ω,對(duì)樹中枝結(jié)點(diǎn)數(shù)目m作歸納證明。2.設(shè)有B=*ω,證明存在一棵邊緣為ω的B樹。 對(duì)推導(dǎo)步數(shù)作歸納172023/5/21SchoolofComputerScience,BUPT1.證當(dāng)ω是B樹邊緣時(shí),有B=>*ω 設(shè)B樹邊緣為ω,對(duì)樹中枝結(jié)點(diǎn)數(shù)目m作歸納證明。wBX1X2X3w1w2w3……B基礎(chǔ)m為1.分析樹一定如右圖所示,必定有產(chǎn)生式Bw.因此,Bw.歸納m大于1的分析樹一定如右圖所示,必定有產(chǎn)生式BX1X2…Xk.存在
w1,w2,…,wk,wi
是Xi子樹的邊緣(1ik),且
w=w1w2…wk,由歸納假設(shè),Xiwi(1ik).
在此基礎(chǔ)上易證得Bw.182023/5/21SchoolofComputerScience,BUPT2.設(shè)有B=*ω,證明存在一棵邊緣為ω的B樹。 對(duì)推導(dǎo)步數(shù)作歸納基礎(chǔ)步數(shù)為1.一定有產(chǎn)生式Bw.w可以歸約到B.歸納設(shè)步數(shù)大于1,第一步使用了產(chǎn)生式BX1X2…Xk.
該推導(dǎo)如B
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度汽車租賃與智能交通系統(tǒng)對(duì)接合同3篇
- 2025-2030全球全自動(dòng)農(nóng)業(yè)機(jī)器人行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2024年全國(guó)數(shù)控技能大賽理論考試題庫-上(單選題) (二)
- 2025年度鋼管架施工設(shè)備租賃合同樣本
- 2025年度個(gè)人反擔(dān)保合同糾紛解決協(xié)議
- 2025年度數(shù)字電視信號(hào)接收器采購(gòu)合同4篇
- 2025版施工合同擔(dān)保人資質(zhì)審核及責(zé)任規(guī)范3篇
- 教育者與科技聯(lián)手強(qiáng)化校園安全措施
- 2025年度商鋪物業(yè)管理與商業(yè)策略規(guī)劃合同4篇
- 二零二五年度茶館社區(qū)服務(wù)合作協(xié)議4篇
- 定額〔2025〕1號(hào)文-關(guān)于發(fā)布2018版電力建設(shè)工程概預(yù)算定額2024年度價(jià)格水平調(diào)整的通知
- 2024年城市軌道交通設(shè)備維保及安全檢查合同3篇
- 電力溝施工組織設(shè)計(jì)-電纜溝
- 單位往個(gè)人轉(zhuǎn)賬的合同(2篇)
- 科研倫理審查與違規(guī)處理考核試卷
- GB/T 44101-2024中國(guó)式摔跤課程學(xué)生運(yùn)動(dòng)能力測(cè)評(píng)規(guī)范
- 鍋爐本體安裝單位工程驗(yàn)收表格
- 一種基于STM32的智能門鎖系統(tǒng)的設(shè)計(jì)-畢業(yè)論文
- 高危妊娠的評(píng)估和護(hù)理
- 妊娠合并強(qiáng)直性脊柱炎的護(hù)理查房
- 2024年山東鐵投集團(tuán)招聘筆試參考題庫含答案解析
評(píng)論
0/150
提交評(píng)論