In Brzozowski's “Derivatives of Regular Expressions” and elsewhere, the function δ (R) returns λ if R is valid, and ∅ otherwise includes the following:
δ(R1 + R2) = δ(R1) + δ(R2) δ(R1 · R2) = δ(R1) ∧ δ(R2)
It is clear that if both R1 and R2 are nullable, then (R1 · R2) is NULL, and if R1 or R2 is NULL, then (R1 + R2) is null. However, it is not clear to me what the above provisions should indicate. My first thought, juxtaposing (+), (·) or Boolean operations with regular sets is pointless, since in the basic case
δ(a) = ∅ (for all a ∈ Σ) δ(λ) = λ δ(∅) = ∅
and λ is not a set (and is not a return type of δ, which is a regular expression). In addition, this display is not indicated, and there is a separate entry for it. I understand the uncertainty, but I am lost in determining the sum, product, and Boolean operations in the definition of δ: how does λ or ∅ return from δ (R1) ∧ δ (R2), for example, in the definition of off δ (R1 · R2)?
regex nullable derivative
danportin
source share