【发布时间】:2020-05-03 16:12:32
【问题描述】:
如何为以下语言构建上下文无关语法:
L = {0^n1^nx | n >= 1,x ∈ {0, 1}*}
这种语言是一些零后跟相同数量的一,然后是一些位串。 我在想我需要 S -> 0S1 用于 0^n1^n 部分和 A -> 0A | 1A | e 对于 x ∈ {0, 1}*。 因为在相同数量的零和一之后我需要一些位字符串,所以我做了
S -> 0S1A | e
A -> 0A | 1A | e
但是语法接受0001101,这是不正确的。有 3 个 0,只有 2 个 1。 我是 CFG 的新手。有人可以给我这个语言的提示吗?
【问题讨论】:
标签: grammar context-free-grammar automata finite-automata context-free-language