为以下语言创建CFG

时间:2015-10-27 03:01:03

标签: context-free-grammar

我只是想知道我的CFG对于第一语言是否正确。

以下语言超出字母{a,b,c}

第一语言

{xcy | x和y是具有相同数量的' s}

的字符串

我的CFG

S - > AaASAaA | c | ACA

A - > AA | b | c |小量

第二语言

{a ^ ib ^ jc ^ k |我> = j + k}

在我的班上,我们证明了如果i = j = k,同一种语言没有CFG,这有什么不同?这甚至有CFG吗?如果确实如此,我无法想到任何一种产生该语言的cfg,我唯一能想到的就是满足a的数量大于或等于b&#39的数量; s加上c的数量,其中顺序并不重要。

1 个答案:

答案 0 :(得分:3)

你的第一语言的CFG是正确的,虽然我更愿意像这样明确地写A:

A -> epsilon | Ab | Ac

第二语言:

S -> M | aS
M -> N | aMc
N -> epsilon | aNb

注意:是的,这是一个家庭作业问题,但我不认为在这里提供答案会破坏这种特殊的学习体验。一旦你看到它,你就会得到它,如果你没有得到它,你可以长时间撞击它而不会到达任何地方。