Formal languages 有没有语言是彼此的适当子集并满足这些条件

Formal languages 有没有语言是彼此的适当子集并满足这些条件,formal-languages,Formal Languages,有这样的语言吗⊂ B⊂ C首先将非上下文无关语言A置于{A,b}之上。例如,A={ww | w\在{A,b}*}中,但任何其他方法也可以 然后,您可以在此基础上构建其他语言: B={a,B}*U{a^i c^i|i>=0} C={a,b}*U{a,C}* D={a,b}*U{a,c}*U{b^i c^i|i>=0} E={a,b}*U{a,c}*U{b,c}* 然后,您可以验证它们是否具有所需的属性。首先,让我们简化这一过程,通过在任何语言中不使用c并使E成为语言(a+b)*来处理E。接下来

有这样的语言吗⊂ B⊂ C

首先将非上下文无关语言A置于{A,b}之上。例如,A={ww | w\在{A,b}*}中,但任何其他方法也可以

然后,您可以在此基础上构建其他语言:

  • B={a,B}*U{a^i c^i|i>=0}
  • C={a,b}*U{a,C}*
  • D={a,b}*U{a,c}*U{b^i c^i|i>=0}
  • E={a,b}*U{a,c}*U{b,c}*

然后,您可以验证它们是否具有所需的属性。

首先,让我们简化这一过程,通过在任何语言中不使用c并使E成为语言
(a+b)*
来处理E。接下来,让我们处理D,使其与E相同,但删除所有素数长度大于2的字符串。我们可以选择C作为{a,b}上所有偶数长度字符串的集合:
(aa+ab+ba+bb)*
。对于上下文无关的非规则语言,我们可以选择{a,b}:
S->aSa|bSb|e
上的偶数长度回文集。最后,我们可以选择{A,b}上的偶数长度回文集,它们以
A
s的素数开始


我们可能试图通过使D成为C和一些只涉及
b
的语言的联合体,然后使C等于
a*
,然后试图仅使用
a
找到a和b来摆脱D。。。但是我们可能很难找到只包含一个符号的上下文无关的非正则语言。

我们如何证明D不是正则的?和B上下文无关和非正则?@LilithX要显示除素数长度大于2的字符串外的所有字符串的语言都是不正则的,我们可以认为这是正则语言E和素数长度大于2的所有字符串的语言的区别。通过闭包属性,这意味着素数长度大于2的所有字符串的语言都是正则的。使用正则语言的泵引理可以证明这是错误的。对于B:这也可以用正规语言的泵引理证明是不规则的。非常感谢!最后一个问题,我们如何证明A是上下文无关的?@LilithX这个问题要求A不是上下文无关的。正如我所定义的,它实际上不是上下文无关的;您可以使用上下文无关语言的泵送引理来说明这一点。如果没有,并且需要一个方便的证明,您可以使用更简单的方法,可能是一个偶数长度回文的子集,也可以是ww形式,或者是一个^nb^naab^na^n,类似的形式。