1)如果我们也允许相交和补码,那么所得的表达式有时称为扩展正则表达式; 由于常规语言是在布尔操作下关闭的,因此它们无法获得任何收益。它只是语法糖。对于反向操作也有类似的结论。首先不提及所有其他运算的部分原因是为了使定义尽可能简单,从而使(归纳)证明不必在许多情况下得到照顾。另一个原因可能是,如果我们允许某些操作,但不允许其他操作,则在某些情况下会导致截然不同的(次正则)语言类,例如,如果我们考虑不使用star运算符的扩展正则表达式,则将获得正则子类的适当子类。 ,即所谓的无星级或非周期性语言,请参阅Wikipedia:无星级语言。
2)如果保留第1.-6.项,而只是更改第4.项,则使用交集而不是并集,我们将获得适当的常规语言子类。例如,我们不再描述语言,因为它将涉及{ a }和{ b }的并集(请参见下面的证明)。如果我们允许互补,那么随着我们根据DeMorgan的法律回归,情况会发生变化。L={a,b}{a}{b}
3)这在1)中得到了我的部分回答,但是当您说首选此定义时,您的意思是什么?我知道在哪里2.省略(因为我们有通过6.定义),或3中省略(因为我们有∅ = 大号(¯ X * )),或两者都省略; 因此,这不是一个最小的可能定义(它还为我们提供了一些语法糖,因为我们有多余的符号来描述{ ε }和∅)。L(∅∗)={ε}∅=L(X∗¯¯¯¯¯¯¯{ε}∅
编辑:在2我第一个提到的评论)是错误的,在根据感应关闭语言,*和∩不neccessarily是子集X *对于一些X ∈ X,例如考虑大号(一∘ b )= { 一b }。然而,我们有这样的表达式无法描述L = { a ,b }。我将给出一个证明,即如果L = L (R )∘∗∩x∗x∈XL(a∘b)={ab}L={a,b}L=L(R)对于某些表达与改性第四项,则如果(因此一个≠ b)
{ 一个,b } ⊆ 大号⇒ 一个b ∈ 大号。
通过对表达式 R的归纳来证明。对于基本情况,它保持真空状态,现在假设它适用于 L (R 1),L (R 2)。如果大号= 大号([R 1 ∩- [R 2)= 大号([R 1)∩ 大号({ 一个,b } ⊆ 大号([R 1 ∘ - [R 2X={a,b}a≠b
{a,b}⊆L⇒ab∈L.
RL(R1),L(R2)和
{ 一个,b } ⊆ 大号,然后
{ 一个,b } ⊆ 大号(ř 我),我= 1 ,2,因此由感应假设我们有
一个b ∈ 大号([R 1)∩ 大号(- [R 2)。如果
L=L(R1∩R2)=L(R1)∩L(R2){a,b}⊆L{a,b}⊆L(Ri),i=1,2ab∈L(R1)∩L(R2)然后作为
一个= 一个·&ε = ε ·&一个我们必须有
一个∈ 大号([R 1)和
ε ∈ 大号(R 2),反之亦然。假设第一种情况。如果
b ∈ 大号({a,b}⊆L(R1∘R2)=L(R1)L(R2)a=a⋅ε=ε⋅aa∈L(R1)ε∈L(R2),然后
一个b ∈ 大号([R 1)通过感应假设,因此
一个b = 一个b ·&ε ∈ 大号([R 1)大号(- [R 2)。现在假定
b ∈ 大号(- [R 2),那么我们有
一个⋅ b ∈ 大号(- [R 2)大号(- [R 2)通过的定义
b∈L(R1)ab∈L(R1)ab=ab⋅ε∈L(R1)L(R2)b∈L(R2)a⋅b∈L(R2)L(R2)。最后,如果
一个,b ∈ 大号([R * 1),然后
一个∈ 大号([R 1 )ñ
和
b ∈ 大号(- [R 2 )米一段
Ñ ,米> 0。如果
Ñ = 米= 1,我们发现
一个b ∈ 大号(řL(R1)L(R2)a,b∈L(R∗1)a∈L(R1)nb∈L(R2)mn,m>0n=m=1通过感应假设,所以假设
Ñ > 1,但是这给
一个∈ 大号([R 1),类似于任一
米= 1或
米> 1给出
b ∈ 大号([R 1)和感应的假设给出
一个b ∈ 大号([R 1)⊆ 大号([R * 1)。
◻ab∈L(R1)n>1a∈L(R1)m=1m>1b∈L(R1)ab∈L(R1)⊆L(R∗1)□
备注:一个常用的结论:如果,则u = a或w = a。如下1 = | 一个| = | ü w ^ | = | ü | + | w | ,因此| ü | = 0和| w | = 1或| ü | = 1和| w | =a=uwu=aw=a1=|a|=|uw|=|u|+|w||u|=0|w|=1|u|=1。在第一种情况下,我们有 u = ε,因此有a = w。|w|=0u=εa=w