如果L =P∩Q其中P是上下文无关语言(CFL)而Q是常规则L在?

时间:2015-10-21 17:00:50

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

context free language Pregular language Q的交集,据说总是context free,但我仍然不明白为什么它是无上下文但不是常规的。

这种交集生成的语言包含PDADFA都接受的字符串。由于所有常规语言都是无上下文的,并且它被DFA接受,不应该是regular language

2 个答案:

答案 0 :(得分:1)

字母表中所有字符串的集合是常规语言,其与该字母表中任何其他语言 L 的交互正好是 L

或者换句话说,不仅仅是接受哪些字符串。同样相关的是不接受哪些字符串。

答案 1 :(得分:0)

以下引理是众所周知的。

引理2.1如果L是没有e的无上下文语言,那么Chomsky就有语法

正常

生成L的表单。

引理2.2如果L =∅且L是正则的,则L是常规语言A1的结合,...,An

,其中

每个Ai都被DFA接受,只有一个最终状态。

我们现在证明我们的主要定理。

定理2.3如果L1是无上下文语言而L2是常规语言,则L1∩L2

上下文

自由的。

证明:

我们做e∈/ L1和L2 =∅的情况。我们留给读者的所有其他情况。

ByLemma2.1wecanassumethereexistsaChomskynormalformgrammarG =(N,Σ,S,P)

表示L1。引理2.2 L2 = A1∪___∪其中每个Ai被识别的每个Ai

一个DFA

只有一个最终状态。注意

         L1 ∩L2 = L1 ∩(A1 ∪___∪An) = U(L1 ∩Ai).

                                         i=1

由于CFL在联盟下关闭(这可以使用CFG证明,所以这不是

作弊)

我们只需要显示L1与DFA识别的常规语言的交集

一个最终状态是CFL。设M =(Q,Σ,δ,s,{f})为具有恰好一个最终状态的DFA。

我们为L1∩L(M)构造CFG G0 =(N0,Σ,S0,P0)。

  1. 非终结符N0是三元组[p,V,r],其中V∈N和p,r∈Q。

  2. 对于P中的每个生产A→BC,对于每个p,q,r∈Q我们都有生产

  3. [p,A,r]→[p,B,q] [q,C,r]

    P0中的

    1. 对于P中的每个生产A→σ,对于每个(p,σ,q)∈Q×Σ×Q,使得δ(p,σ)= q我们
    2. 有生产

      在P0

      1. S0 = [s,S,f]
      2. [p,A,q]→σ