在 Brzozowski 的“正则表达式的导数”和其他地方,函数 δ(R) 如果 R 可以为空,则返回 λ,否则返回 ∅,包括如下子句:
δ(R1 + R2) = δ(R1) + δ(R2)
δ(R1 · R2) = δ(R1) ∧ δ(R2)
显然,如果R1和R2都可以为空,则 ( R1 · R2 ) 可以为空,如果R1或R2都可以为空,则 ( R1 + R2 ) 可以为空。但是,我不清楚上述条款应该是什么意思。我的第一个想法是,将 (+)、(·) 或布尔运算映射到常规集合是没有意义的,因为在基本情况下,
δ(a) = ∅ (for all a ∈ Σ)
δ(λ) = λ
δ(∅) = ∅
并且 λ 不是一个集合(集合也不是 δ 的返回类型,它是一个正则表达式)。此外,此映射未指明,并且有一个单独的符号。我理解可空性,但我对 δ 的定义中的和、乘积和布尔运算的定义迷失了:例如,在定义中,λ 或 ∅ 如何从 δ( R1 ) ∧ δ( R2 )返回关闭 δ( R1 · R2 )?