【发布时间】:2013-10-21 16:42:51
【问题描述】:
当我们想要最小化 DFA 时,首先我们将最终状态和非最终状态划分。然后我们将这些状态划分为多个分区,直到每个分区中的所有状态都属于同一个等价类。现在我的问题是假设我们在 dfa 中有一个死状态,那么它应该进入非最终状态的分区还是单独的分区(仅包含死状态)?另外请告诉我该死状态是否应该算作状态之一在最小化的 dfa 中?
【问题讨论】:
标签: automata computation-theory dfa
当我们想要最小化 DFA 时,首先我们将最终状态和非最终状态划分。然后我们将这些状态划分为多个分区,直到每个分区中的所有状态都属于同一个等价类。现在我的问题是假设我们在 dfa 中有一个死状态,那么它应该进入非最终状态的分区还是单独的分区(仅包含死状态)?另外请告诉我该死状态是否应该算作状态之一在最小化的 dfa 中?
【问题讨论】:
标签: automata computation-theory dfa
死亡状态进入非最终状态集合,因为它不是接受状态。在最小化算法期间,您就像对待任何其他状态一样对待它。当你完成后,如果你的 DFA 需要一个死状态,它应该有一个死状态作为它的状态之一。一些常规语言需要死状态,但算法足够“智能”以确保它们被包含在内。
希望这会有所帮助!
【讨论】: