【问题标题】:Is this a context free or context sensitive language?这是上下文无关的还是上下文敏感的语言?
【发布时间】:2016-12-28 14:05:27
【问题描述】:

我正在学习形式语言和自动机理论,我有一个关于书中没有回答的问题的问题。问题是:

这种语言是上下文无关的、常规的还是上下文相关的?

L={a^i b^j c^k|i

【问题讨论】:

    标签: context-free-language


    【解决方案1】:

    它是上下文无关的。可以使用以下 CFG 指定:

    S -> AX
    A -> aA
    A -> epsilon
    X -> bXc
    X -> epsilon
    

    A 州可以根据需要接受任意数量的as。 X 生成相同数量的bc。因此,此 CFG 指定语言 L。

    【讨论】:

      【解决方案2】:

      它是上下文相关的。

      不规则:我们必须记住有限状态机不能记住的 b 或 c 的出现次数。

      不是上下文无关的,就像我们应用抽引引理一样,在将 b 推入 a^{2}b^{2} b^{n-4}b^{2}c^{n} 之类的字符串后,您会看到我们的 b 比 c 多。

      所以它是上下文相关的。

      【讨论】:

      • 哦是的...其实有人说是DFCL,因为只有一个比较j=k,i是否等于j无所谓
      • @a_m.:真的,如果你想得足够好,你会发现它是上下文相关的。你可以试试看书。我的答案是正确的。
      • @a_m.:你明白吗?
      • 该语言确实不是上下文无关的。然而,抽水引理的应用比@coderredoc 解释的要复杂得多。引理只证明了一些事情,如果对于所有可能的因式分解,抽水会导致语言之外,而不仅仅是一个示例分解。因此,这里需要仔细的案例分析。在示例字符串中,一个可以在 oe 因子中抽取 b,在另一个中抽取 c,并保留在该语言中。
      猜你喜欢
      • 2012-03-27
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多