web-dev-qa-db-ja.com

文法の表示があいまいです

コンパイラコースの試験から次の質問があります。

Show that the following grammar is ambiguous.

S = XcY
X = a
Y = b | Z
Z = bW
W = d | ϵ

私は次の木を描きました:

grammar diagram

acYが異なるパスをたどってacb(そのうちの1つにepslionが続く)になる可能性があるため、あいまいだと思うのは正しいですか?

3
TomSelleck

はい。イプシロンは、Wを空の文字列として書き換えることができることを意味するため、acbW-> acbです。あなたが示したように、文字列acbには左端に2つの派生があります。これは、 定義上 は文法があいまいであることを意味します。

6
ndm