我正在阅读Context Free Grammar,我遇到了模棱两可的语法。如果CFG生成的语言有超过1个解析树,那么CFG就是一个含糊不清的语法。 有什么方法可以找出或证明语法是明确的。一般来说,我可以测试CFG生成的一些语言,并检查是否从该语言生成了多个解析树,以显示该语法是不明确的。但是,我如何检查或证明给予CFG是明确的?
答案 0 :(得分:2)
在一般情况下,CFG的模糊性问题是不可判定的。但是,有一些方法可以检查语言可能是否含糊不清。如果你想要它的理论,请检查this article;要更实际,请考虑this或this。