这一节十分简单
短语,简单(直接)短语,句柄
这些概念好像是不能记忆的,因此通俗写下来,
句柄和直接短语的节点的父节点必须是同一个,短语更宽泛一些,就是这样。
歧义就是不知道选哪一个,既然不知道选哪一个就必然有牺牲,优先级联规则就是特例化了。首先说,你得看这是什么文法,很明显是LL文法了,因为这不算LR歧义。而这样还有左递归。。。LL是没有左递归的。。。这题有问题啊。
这个就不懂了。那左递归怎么办?它必然有一个递归,不然如何扩展呢?这题有问题啊,要不然就是LR。
左结合是指一个数的左边和右边都有运算符时例如+1+,参与左边运算符的运算。左结合,即a+b+c应该先算a+b。
设计好的文法是否就是该语言的文法,这个需要严格的证明,但是一般都不证明,也就是说,只要能够符合几个特例,就可以往上搬。
文法转正规式,直接带入转成一个大长串,然后合并规约,例如下面的题
正规式转文法,把有多个解释的拆成多个表达式,就是这样,例如下面的题
自动机转文法,正规式
文法,正规式转自动机
自然语言转正规式
这道题给出了文法转为正规式的一种有效方法。
从图中可以看出,NFA可以直接表示出正规式,也可以直接表现出文法,它就是文法本身。
对于根据描述构造文法或者正规式的,一般方法是构造自动机,构造自动机被认为是最简单的方法。
这一点也说明了,正规式也可以直接推导出文法。只是务必保证要全面。就是从*和+做文章就行。
关键就是自然语言转正规式上,说是用自动机,可能自动机都画不出来。
下推自动机就是带栈的自动机,有穷自动机没有栈,也就是说,有穷自动机无法做计数的文法是吧。