为语言生成CFG

时间:2015-11-04 17:32:56

标签: context-free-grammar context-free-language

考虑语言 {anbmcp | n <= p OR m <= p} ,为此语言创建一个CFG 我已经用S -> aA | aB启动了这个,但不确定我应该如何定义A或B.&#34; OR&#34;似乎很难融入语言的定义,因为它似乎没有必要跟踪n和m并将它们与p进行比较,但我不知道我想跟踪哪一个

1 个答案:

答案 0 :(得分:1)

为了保持这种约束,对于每个'a',你需要添加'c'。同样地,对于每个'b',您应该添加'c'。

  

A -> aAC | aC | B

     

B -> bB | bC

     

C -> cC | c

我在这里错了。但这就是你在创建CFG时应该怎么想。