语言A = a*b*
绝对是一种常用语言。
但我想知道是否有一个非常规语言的超集?并且超集必须使用相同的字母{a,b}
答案 0 :(得分:2)
是的,有。取B = b n ab n (其中n> 0),这是以b
开头且包含单个a
的回文语言} 在中间。此语言不常规,因为pumping lemma不适用于此语言。它与A
完全不相交,因为B
中的每个单词都包含ba
子字符串,而A
中的单词都没有。
A
和B
的联合因此是A
的非常规超集。
也很容易证明并非所有常规语言都可以通过这种方式进行扩展,因为例如,给定字母表中每个可能的单词的语言都是定义的。由于没有办法在同一个字母表中形成这种语言的非平凡超集,因此在给定字母表中所有“Kleene star”语言的超集也将是常规的。
更一般地说,任何补语(C A =Σ * \ A)有限的语言A都不会有非正规超集,因为C < sub> A 及其所有子集按定义为常规(有限语言总是常规的),因此它们中任何一个与A的并集也是常规(联合的两种常规语言是正常的)。