我读到一条注释,类型3的grammer不能同时拥有这两种产品
A-> aB
A-> Ba
其中A、B是非终端,A是终端
我对类型3有足够的了解,但我不能理解上面的
如果允许这两种生成都发生,这将改变类型3的含义
A -> '(' B
B -> A ')'
A -> '1'
如果你假设A是起始非终端,你的语言会给你所有的单词
((...((1))...))
其中两边的括号数量相同。然而,这不是一种类型3语言(非正式地说,一个正确的解析器需要计数,所以它不能是有限状态)。