2013-10-17 64 views
2

我們發現如下(A)的情況下,我們找到了生產型SLR(1)或LR(1)語法分析

的→ α

能α這裏是與小量;?

像在下面的例子:

P → APA | bPb | &小量;

如果α可以是&的ε-;,它不是LR(1)

回答

1

是,α可以是&小量;. α代表一個任意的字符串,並且自從ε是一個字符串它是可能的α

因此,您的語法不是LR(1),因此它也不是SLR(1)(因爲所有SLR(1)語法也都是LR(1) ))。

看到這一點,我們可以構造LR(1)構式集:

(1) P' -> .P  ($) 
    P -> .aPa ($) 
    P -> .bPb ($) 
    P -> .  ($) 

(2) P -> a.Pa ($) 
    P -> .aPa (a) 
    P -> .bPb (a) 
    P -> .  (a) 

在這一點上,我們可以停止,因爲有移進/歸約confict:我們不能告訴是否轉移a或減少P →ε給予終端a

隨着一些更高級的數學,你可以證明這種語言(所有偶數長度迴文的語言)都有LR(1)語法。這是因爲具有LR(1)語法的語言恰好是確定性的上下文無關語言,並且所有偶數長度的迴文集都不是確定性的上下文無關語言。

希望這會有所幫助!

+0

這非常有幫助! 非常感謝! – sid15g