0

我正在学习语法中的歧义,我需要一些帮助才能更好地理解。这是一个语法:

<S> ::= if <S> then <S>
<S> ::= if <S> then <S> else <S>
<S> ::= a

使用解析树或最左边的推导,我怎样才能证明这个语法是模棱两可的?

4

1 回答 1

1

考虑以下:

if a then if a then a else a

您可以考虑通过以下两种方式之一对其进行分组:

(if a then (if a then a else a))

或者

(if a then (if a then a) else a)

两者都可以使用您提供的语法,所以它是模棱两可的。

于 2020-04-15T02:05:32.813 回答