繁体   English   中英

合并DFA的最终状态

[英]Merging final states of a DFA

我们可以合并或合并DFA的所有最终状态(其中有多个最终状态)吗? 它会产生另一个等效的DFA吗? 到目前为止,我只是弄清楚了,在某些情况下,合并DFA的所有最终状态可以产生另一个NFA,该NFA可能与前述DFA等效。 谢谢

您只能合并/合并等效的状态。 如果州承认的语言相同,则它们是等效的。 公认的语言是从给定状态到停止状态的一组字符串。

考虑正则表达式a+|b 在序列aa DFA处于停止状态后,将其称为s1。 它必须具有a到另一个停止状态(可能是其本身)的传出转换。

另一方面,在输入b ,DFA也处于停止状态,将其称为s2。 它不能有任何终止状态都将终止的传出转换,因为否则将识别出一些以b开头的字符串,这是a+|b不允许的。

因此,s1和s2不相等,因此无法合并。

您正确地注意到,但是,我们总是可以添加从所有停止状态到唯一的新停止状态的epsilon过渡。 但是结果是NFA,而不是DFA。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM