给定L1上下文免费非常规语言。 鉴于L2常规语言。
L1 U L2是否可能是常规语言? 另外,L1 * L2可能是常规语言吗?
我认为第二个是不可能的。但我不确定。
如果上述陈述中的一个(或两者)是真的,我们很乐意看到一个例子。
答案 0 :(得分:0)
L1 U L2
=常规语言是否可能?
是的,可能。
一个简单的例子是:如果L 1 是L 2 的子集,那么L1 U L2
将是常规的(=L2
),示例:L 1 :{anbn
|其中n >= 0
}和L2 = (a + b)*
L1 * L2
=常规语言可能吗?
不,无上下文和常规的连接将是无上下文的(因为在L1 * L2
中,L1的模式中的约束仍然存在)。
答案 1 :(得分:0)
是的,无上下文和常规的连接将是常规的
取L1 = a ^ nb ^ n即CFL并取L2 =Ø这是常规的。
所以L1.L2 =(a ^ nb ^ n).Ø=Ø这是常规的
注意:对于两种语言的连接必须是常规的, 必须至少有一种语言是常规的。
答案 2 :(得分:0)
L1 U L2
=常规语言是否可能?
是的,有可能。 但总是最好举个例子:
L1 = {0*1*}
(常规)和L2 = {0^n1^n |n>=0}
(无上下文)。
L = L1 U L2 = {0*1*}
是常规语言,但由于每种常规语言都是上下文无关的。因此,我们可以说两个总是在上下文无关的语言中产生的结果。
L1·L2
=常规语言是否可能?
常规语言和上下文无关的语言的连接总是导致上下文无关的语言。再次以上述示例为例:
L = L1·L2 = {(0*1*)·(0^n1^n) |n>=0}
(无上下文)。
如果L1
或L2
中的一个为Ø
,也可能是常规的,L1·L2
将导致Ø
(常规)。但是由于所有常规语言都是无上下文的,所以Ø
也是无上下文的。
查看以下内容:Geeks for Geeks