我有一个作业问题,要求生成空集的CFG。我认为应该是以下两种之一,但不确定。
S->S,但这似乎会导致无限循环。
或者
S-> {},虽然它是“空集”符号,但它既不是变量也不是终端...
我有一个作业问题,要求生成空集的CFG。我认为应该是以下两种之一,但不确定。
S->S,但这似乎会导致无限循环。
或者
S-> {},虽然它是“空集”符号,但它既不是变量也不是终端...
写下语法来表示任何有限语言 L
的一种方法是,对于每个在 L
中的 w
,在语法中包含 S -> w
,即列出所有单词。
例如,语言 L = ['aa','ab','ba','bb']
由上下文无关文法生成:
S -> 'aa'
S -> 'ab'
S -> 'ba'
S -> 'bb'
L = [{}]
。明确回答您的问题:空集是一个终端,但是用于描述它的值非常取决于您的编程语言(在Python中,您可能会选择set()
)。