Kleene Star如何与Union运营商互动?

时间:2016-02-16 05:52:25

标签: regex regular-language dfa

这个问题与有限自动机和正则表达式有关。我想出了一个非常难看的正则表达式,我正试图简化它。

我理解(εUaa *)= {ε} U {a,aa,aaa,...} = a *

的想法

但是,我一直无法确认(εUa *)= a *。

此外,如果我有表达式(一个U a *),它不等同于*?

后两个陈述“似乎”对我来说显然是正确的,但我很怀疑,因为整个网络上的讲义似乎都在尖锐地避免建立这些联系,而我的教科书(Sipser)并未提及任何一个

1 个答案:

答案 0 :(得分:1)

是(εUa *)= a *是真的。

您可以通过您给出的相等性和重言式x U x = x确认它。

以(εUa *)开始=(εU(εUaa *))=(εUε)U aa * =εUaa * = a *

同样(a U a *)=(a U(εUaa *))=(εU(a U aa *))然后因子  =(εUa(εUa *))=(εUaa *)= a *