我正在尝试在字母表Σ = {a,b}
上为所有以相同数量的 's 开头和结尾的单词写一个 CFG,中间a
至少有一个b
。
现在我了解了 CFG、变量、生产规则等的基本概念。不幸的是,我已经没有编写上述 CFG 的想法了。到目前为止我所拥有的是
S → aYXYa
X → XbX | b | λ
Y → ???
我认为生产规则会给我一个字符串,两边都有两个 ** S
** ,中间有尽可能多的 ** **。但是,我不确定如何在 ** ** 的两侧放置尽可能多的** **,同时确保每侧的 ** ** 数量完全相同。X
a
b
a
b
a
任何建议,解决方案将不胜感激。谢谢。