有许多已知的收容措施。让表示包含,而表示适当的包含。让表示不可比性。⊆⊂×
令,。LL=⋃kLL(k)LR=⋃kLR(k)
语法水平
对于LL
- LL(0)⊂LL(1)⊂LL(2)⊂LL(2)⊂⋯⊂LL(k)⊂⋯⊂LL⊂LL(∗)
- SLL(1)=LL(1),SLL(k)⊂LL(k),SLL(k+1)×LL(k)
Rosenkrantz和Stearns 在确定性自上而下语法的属性中证明了其中的大多数。是一个微不足道的练习。Terence Parr的演示文稿将放在幻灯片13上。Jarzabek和Krawczyk的纸上LL-正则语法显示,它们的证明从小到扩展到SLL(k+1)×LL(k)LL(∗)LL⊂LLRLL⊂LL(∗)
对于LR
- LR(0)⊂SLR(1)⊂LALR(1)⊂LR(1)
- SLR(k)⊂LALR(k)⊂LR(k)
- SLR(1)⊂SLR(2)⊂⋯⊂SLR(k)
- LALR(1)⊂LALR(2)⊂⋯⊂LALR(k)
- LR(0)⊂LR(1)⊂LR(2)⊂⋯⊂LR(k)⊂⋯⊂LR
这些都是简单的练习。
LL与LR
- LL(k)⊂LR(k)(确定性自上而下语法加上任何左递归语法的属性)
- LL(k)×SLR(k),LALR(k),LR(k−1)(简单练习)
- LL⊂LR(任何左递归语法)
- LL(∗)×LR(左递归与任意先行)
语言水平
对于LL
- LL(0)⊂LL(1)⊂LL(2)⊂⋯⊂LL(k)⊂⋯⊂LL⊂LL(∗)
- SLL(k)=LL(k)
其中大多数已在确定性自上而下语法的性质中得到证明。Nijholt的和LR常规语法的等价问题参考了显示。Jarzabek和Krawczyk撰写的LL-regular语法显示了,并且它们的证明也很容易地扩展到LL(k)⊂LL(∗)LL⊂LLRLL⊂LL(∗)
对于LR
- LR(0)⊂SLR(1)=LALR(1)=LR(1)=SLR(k)=LALR(k)=LR(k)=LR
克努斯(Knuth)在他的《语言从左到右的翻译》一书中介绍了LR(k)证明了其中的一些,其余的在将LR(k)语法转换为LR(1),SLR(1),和(1,1) Mickunas等人的有界右上下文语法。
LL与LR
- { 一个我b Ĵ | 我≥ Ĵ }LL⊂LR(1)(根据上述内容,严格约束的典范示例为){aibj|i≥j}
- { a i b j | 我≥ Ĵ }LL(∗)×LR(语言显示了一半的要求,Nijholt引入的LL 和LR常规语法的等价问题引用了论文显示另一半){aibj|i≥j}
- LR(1)=DCFL(请参见此处的参考)。