您好我有以下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的消除是否正确?无论如何都在做这件事吗?