http://www.alphway.org

DFA的最小化

等价状态

DFA上的等价状态,即两个状态的效果是等过的。假设如果有p,q两个状态,对于任意的串w,$\delta(p,w)是接受状态, 当且仅当\delta(q,w)$,则称状态p和状态q是等价状态。

与等价状态相反的状态是可区分状态

判定可区分状态的算法

基础:如果p是接受状态,而q是非接受状态,则状态p和q是可区分的。

归纳:设p和q是满足下列条件的状态:对于某个输入符号$a \in \sum$,$r = \delta(p,a) 和 s = \delta(q,a)$是已知的可区分状态。则p和q也是可区分的状态对。

这是因为r和s是可区分状态,所以存在某个串w使得$\delta(r,w) 和\delta(s,w)$恰有一个是接受状态。 于是串aw一定区分p和q,因为$\delta(p,aw) 和 \delta(q,aw) 与 \delta(r,w)和\delta(s,w)$是相同的状态对。

 

所以初始时知道接受状态和非接受状态是可区分的状态,然后对于所有的$a \in \sum$,不断去测试状态集合中的状态,如果状态是可区分的,则分裂状态集合。

直到状态集合不再分裂为止。

posted @ 2015-12-24 10:47  litten007  阅读(477)  评论(0编辑  收藏  举报