ε 是上下文无关终端吗?
Is ε terminal in context-free?
R: S ---> aSb
S ---> SS
S ---> ε
这些表达式的语法应该怎么写?
这样写是真的吗?
G = ({S}, {a, b}, {S ---> aSb, S ---> SS, S ---> ε}, {S})
或像这样(将 epsilon 添加到终端):
G = ({S}, {a, b, ε}, {S ---> aSb, S ---> SS, S ---> ε}, {S})
哪个是正确的?
ε 是一种使零长度序列可见的方法。它不是文法符号。
实际的生产是:S →
——也就是说,S
什么都不能生产——但是什么都看不见,所以很难阅读。所以我们通常写ε,这样更易读。不过,你应该把它当成空来阅读。
R: S ---> aSb
S ---> SS
S ---> ε
这些表达式的语法应该怎么写?
这样写是真的吗?
G = ({S}, {a, b}, {S ---> aSb, S ---> SS, S ---> ε}, {S})
或像这样(将 epsilon 添加到终端):
G = ({S}, {a, b, ε}, {S ---> aSb, S ---> SS, S ---> ε}, {S})
哪个是正确的?
ε 是一种使零长度序列可见的方法。它不是文法符号。
实际的生产是:S →
——也就是说,S
什么都不能生产——但是什么都看不见,所以很难阅读。所以我们通常写ε,这样更易读。不过,你应该把它当成空来阅读。