(1)分割原理:化简DFA关键在于把它的状态集分成一些两两互不相交的子集,使得任何两个不相交的子集间的状态都是可区分的,而同一个子集中的任何两个状态都是等价的,这样可以以一个状态作为代表而删去其他等价的状态,然后将无关状态删去,也就获得了状态数最小的DFA。
(2)DFA的化简算法
1.首先将DFAM的状态划分出终止状态集K1和非终止状态集K2。
2.对各状态集每次按下面的方法进一步划分,直到不再产生新的划分。
设第i次划分已将状态集划分为k组,即:
对于状态集中的各个状态逐个检查,设有两个状态、,且对于输入符号a,有:
F(,a)=
F(,a)=
如果和属于同一个状态集合,则将和放到同一集合中,否则将和分为两个集合。
3.重复2直到每一个集合不能再划分为止,此时每个状态集合中的状态均是等价的。
4.合并等价状态,即在等价状态集中取任意一个状态作为代表,删去其他一切等价状态。
5.若有无关状态,则将其删去。
根据以上方法就将确定有限自动机进行了简化,而且简化后的自动机是原自动机的状态最少的自动机。