可以将上下文无关语法左右递归吗?

时间:2011-02-03 03:20:46

标签: context-free-grammar

离。

S-> S + T | Ť

T-> U - T | û

U - > ID | Ñ

关联性显然不会被保留。但我无论如何也看不出它是模棱两可的..那么这是一个非模棱两可的cfg吗?

1 个答案:

答案 0 :(得分:4)

语法可以同时进行左右递归,就像你展示的那样,但这并不意味着什么。任何语法都可以重写,所以所有的递归都是左或右(但不是一致的,除非语法是常规的):

A -> B A C

变为:

A -> B X
X -> A C

现在你有一个相互递归,它在一个规则的左边,在另一个规则的右边。你在问题中的语法似乎确实是明确的,但这与左或右递归没有任何关系。