如何通俗简单一点理解文法类型,短语,直接短语,句柄呢?

α→β判断它是几型文法?

判断产生式左侧α中变量个数:

1.大于1个变量或者等于1个α是终结符Vt这种情况,则考虑0型PSG文法和1型CSG文法

α的长度大于β的长度为0型文法;

α的长度小于等于β的长度为1型文法。

2.等于一个变量并且是非终结符Vn

右侧β中变量大于一个为2型文法CFG

右侧β中变量为一个需要讨论一下:

如果变量都在左侧例如A→Ba A→Ca,这种属于3型文法RG中的左线型文法;如果变量都在右侧A→aB A→aC,这种属于3型文法RG中的右线型文法。

如果既含有左线型又含有右线型呢?例如A→aB A→Ca ;或者变量在中间例如S→0S1呢?

这两种属于2型文法CFG。


CFG语法树

短语:对应子树叶子的组合

直接短语:找到这个短语所在的子树,它的兄弟节点不是其他子树的根,则它是直接短语

句柄:最左直接短语。

S

↙↓↘

 a   A   c

b

这个语法树:

  • 短语:abc,b
  • 直接短语:b
  • 句柄:b

为什么a和c不是直接短语?

因为A是A→b子树的根。

以上均是我自己复习的理解,如果有错误欢迎大家指出来谢谢大家🌹

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zcm230

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值