(1)消去左递归后:
S→a|∧|(T)
T→ST’
T’→,ST’|ε
(2)计算每个非终结符的FIRST集合和FOLLOW集合:
FIRST(S)={a,∧,(}
FIRST(T)={a,∧,(}
FIRST(T’)={,ε}
FOLLOW(S)={,#}
FOLLOW(T)={)}
FOLLOW(T’)={)}
预测分析表如下:
a ∧ ( ) , #
S S→a S→∧ S→(T)
T T→ST’ T→ST’ T→ST’
T’ T’→ε T’→,ST’
构造的预测分析表中没有多重入口,所以改造后的文法是LL(1)文法。