理解
自顶向下文法:通过左边当前输入字符唯一确定地推导出产生式
证明LL(1)文法
证明是LL(1)文法:因为要求S的推导是唯一的,即推导后每个最左字符只有一个对应的终结符,即无二异性。
证明条件select集
证明条件:select(A)=> {X} 表示有可能的跟着的终结符。
first集
首先是求first集:first(A)=>{X} 表示一开始产生式中第一个跟着的终结符。
如上,因为产生式中直接第一个字符就是终结符,first(B)={b,d}
在例二中,S->Ap产生式第一个字符为非终结符,所以first(S)加上First(A)-{ϵ}因为如果存在A->a….(终结符),S->A…. 能推导出 S->a…. 。
如果存在产生式S->AB 且first(A)=>{ϵ} 就要在first(S