嗨,我有以下 CFG
S -> aA | bC | CC
A -> B
B -> S | epsilon
C -> A | S
我设法删除了 epsilon,结果是:
S -> aA | bC | CC | a | b | C
A -> B
B -> S
C -> A | S
我正在删除单元规则,这导致所有非终结符都具有相同的结果,例如:
S -> aA | bC | CC | a | b | C
A -> aA | bC | CC | a | b | C
B -> ...
C -> ...|...
我的问题是,我对 epsilon 的消除是否正确?有没有这样做?