例题 练习
    若有文法G3的产生式为:
  (1) S→aSd
  (2) S→Ac
  (3) A→aS
  (4) A→b
参考答案:
  用产生式(3)、(4)中右部替换产生式(2)中右部的A,文法变为:
  (1) S→aSd
  (2) S→aSc
  (3) S→bc
  (4) A→aS
  (5) A→b
  对(1)、(2)提取左公共因子得:
  S→aS(d|c)
  引入新非终结符A′后变为:
  (1) S→aSA′
  (2) S→bc
  (3) A′→d|c
  (4) A→aS
  (5) A→b
  显然,原文法G3中非终结符A变成不可到达的符号,产生式(4)、(5)也就变为无用产生式,所以应删除。
  此外也存在某些文法不能在有限步骤内提取完左公共因子。