LR(0),LL(0),LALR(1)等之间的关系?

Ahm*_*nan 4 compiler-construction parsing ll-grammar lr-grammar

我真的很想解开以下关系:

  • LR(0)
  • LL(0)
  • LALR(1)
  • SLR(1)
  • LR(1)
  • LL(1)

我很确定LALR(1)和SLR(1)是LR(1)的子集,但我对其他人的迷失.它们都是独家的吗?LL(0)是LL(1)的子集吗?

谢谢

tem*_*def 8

遏制规则如下:

  • 每个LR(0)语法也是SLR(1),但并非所有SLR(1)语法都是LR(0).
  • 每个SLR(1)语法也是LALR(1),但并非所有LALR(1)语法都是SLR(1).
  • 每个LALR(1)语法也是LR(1),但并非所有LR(1)语法都是LALR(1).
  • 每个LL(1)语法也是LR(1),但并非所有LR(1)语法都是LL(1).
  • 每个LL(0)语法也是LR(0),SLR(1),LALR(1),LR(1)和LL(1).(LL(0)语法基本上没用; 请参阅此问题以获取详细信息).

还有一种情况是,每个具有LR(1)语法的语言也具有LR(0)语法,前提是您对语法进行了标记,尽管语法不能保证很好.