为特定语言定义无上下文语法

时间:2014-03-17 21:12:20

标签: parsing context-free-grammar computation-theory context-free-language

我有一种语言,其中语言中的每个字符串都有0的偶数为1(例如,0101,1010,1100,1211,10都在语言中)。我希望定义一个描述这种语言的无上下文语法。在定义了无上下文语法之后,我想正式证明这种无上下文语法描述了这种语言。

我想出了无上下文语法生成规则:

    S->0S1S
    S->1S0S
    S->ε

这是正确的上下文无关语法来定义这种语言吗?

我很难为证明部分而烦恼。我猜我需要某种归纳法?

1 个答案:

答案 0 :(得分:0)

这个语法对我来说是正确的。

我会通过显示两个方向来证明它(即如果字符串由语法产生,则字符串在语言中)。

证明语法产生的所有字符串都很容易:只需考虑语法的所有产生输出相同数量的1和0。因此,任何制作组合都必须使用该语言生成一个字符串。

要证明语法中的所有字符串都可以通过语法生成,这似乎更棘手。我认为归纳可以解​​决这个问题,但没有任何明显的想法。

祝你好运