福州網站建設>網站新聞>電腦網絡

        編譯原理中消去左遞歸的推導中β應該是冪越來越大,為什么始終是1呢

        發布日期:2023-05-22瀏覽次數:519 來源:福州網站建設

        在消除左遞歸的過程中,我們需要將一個左遞歸的非終結符A的產生式改寫為一系列不含A的產生式。這個過程中,我們需要將形如A -> Aα的產生式改寫為A -> β1A | β2A | ... | βkA | γ1 | γ2 | ... | γm,其中β1, β2, ..., βk均為不以A開頭的產生式,而γ1, γ2, ..., γm均為不含A的產生式。

        對于每個βi,我們需要將其改寫為不含A的形式。這時候,我們會引入一個新的非終結符B,然后將βi改寫為Bα'的形式,其中α'是βi中A后面的部分。這樣,我們就得到了一個新的產生式A -> Bα' A',其中A'表示A的其他產生式。接下來,我們將B的產生式中所有以A開頭的產生式用A -> Bα' A'代替,這樣就消除了A的左遞歸。

        在這個過程中,β是不斷縮小的,因為每次我們都是將βi改寫為Bα'的形式,并將B的產生式代入到原來的產生式中,直到βi不再以A開頭為止。因此,β最終會縮小到一個不以A開頭的產生式,也就是1。因此,在消除左遞歸的推導過程中,β始終是1。

        以上是由福州網站建設的小編為你分享了"編譯原理中消去左遞歸的推導中β應該是冪越來越大,為什么始終是1呢"文章,如果你在這方面有什么問題,隨時聯系我們

        電腦網絡有關的文章
        如果您有什么問題,歡迎咨詢我們客服! 點擊QQ咨詢