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

问题描述 投票:0回答:1

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

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

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

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

我很难为证明部分而烦恼。我猜我需要某种感应?

parsing context-free-grammar computation-theory context-free-language
1个回答
0
投票

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

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

证明语法产生的所有字符串都在语言中很简单:只需考虑语法的所有产生输出相同数量的1和0。因此,任何产品组合都必须在语言中产生一个字符串。

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

祝好运

© www.soinside.com 2019 - 2024. All rights reserved.