答案 0 :(得分:0)
基本上有三种方法。 Hopcroft和Ullman在书中给出了两个。
1)Calucalte R_ij递归地用于所有状态i,j仅经过k个中间状态。
2)通过消除开始状态和单个最终状态之间的状态来计算正则表达式。这比第一种方法简单。
3)分析并尝试了解DFA本身。
如果我们消除了中间状态,我们就会跟随
a_02 =(aa + ba)*(ab + bb):从状态0到2的正则表达式,不使用从状态2到0的箭头。 a_00 =(aa + ba)*:从状态0到0的正则表达式,不使用从状态2到0的箭头。
我们现在可以使用教科书中给出的表达式,但在此阶段我们还可以分析自动机并提出解决方案。所以最后R_02变成了
((AA + BA)*(AB + BB)(A + B))*(AA + BA)*(AB + BB)