自动机是具有有限数量状态的机器。如果两个自动机都接受完全相同的输入字符串集,则称任何两个自动机是等效的。
如果两个自动机满足以下条件,则它们是等效的:
1. The initial and final states of both the automatons must be same.
2. Every pair of states chosen is from a different automaton only.
3. While combining the states with the input alphabets, the pair results must be either both final states or intermediate states.(i.e both should lie either in the final state or in the non-final state).
4. If the resultant pair has different types of states, then it will be non-equivalent. (i.e. One lies in the final state and the other lies in the intermediate state ).
示例 1 –
考虑下图 1 所示的两个不同的自动机。
解决方案 –
步骤 1 –由于两个自动机的初始状态和最终状态相同,因此验证。
步骤 2 –通过制作与输入字母相关的状态表来检查每个状态。
这里 ,
FS 代表 -> 最终状态。
IS 代表 -> 中间状态(非最终状态)。
步骤 3 –对于每对状态,结果状态要么位于 FS 中,要么位于 IS 中作为组合。
Conclusion – Both the Automaton are equivalent.
注意:如果生成的状态对具有不同的状态组合(即 (FS, IS) 或 (IS, FS),则称这两个自动机是非等价的。
示例 2 –
考虑下图 2 所示的两个不同的自动机。
解决方案 –
步骤 1 –由于两个自动机的初始状态和最终状态相同,因此进行验证。
步骤 2 –通过制作与输入字母相关的状态表来检查每个状态。
这里 ,
FS 代表 -> 最终状态。
IS 代表 -> 中间状态(非最终状态)。
步骤 3 –对于第一对状态,结果状态作为组合位于 FS
第 4 步——但是对于 (q2,q5) 对,当对输入字母表进行操作时,它们处于不同的状态。 (即一个在 FS 中,另一个在 IS 中)。
Conclusion – The Given Automata are not equivalent.
示例 3 –
考虑下面图 3 中显示的两个不同的自动机。
解决方案 –
步骤 1 –由于两个自动机的初始状态和最终状态相同,因此进行验证。
步骤 2 –通过制作与输入字母相关的状态表来检查每个状态。
这里,
FS 代表 -> 最终状态。
IS 代表 -> 中间状态(非最终状态)。
步骤 3 –对于 (q1,q3) 对,当对输入字母进行运算时,它们处于不同的状态。 (即一个在 FS 中,另一个在 IS 中)。
Conclusion – The Given Automata are not equivalent.
示例 4 –
考虑下面图 4 中显示的两个不同的自动机。
解决方案 –
步骤 1 –由于两个自动机的初始状态和最终状态相同,因此进行验证。
步骤 2 –通过制作与输入字母相关的状态表来检查每个状态。
这里,
FS 代表 -> 最终状态。
IS 代表 -> 中间状态(非最终状态)。
步骤 3 –对于每对状态,结果状态要么位于 FS 中,要么位于 IS 中作为组合。
Conclusion – Both the Automaton are equivalent.