首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NFA中DFA的子集构造

NFA中DFA的子集构造
EN

Stack Overflow用户
提问于 2016-03-02 07:30:27
回答 1查看 2K关注 0票数 0

我正在阅读由alfredV.Aho编写的“编译器原理、技术和工具”一书。来自NFA的DFA子集构造对NFA状态具有以下操作

代码语言:javascript
复制
e-closure(s)| Set of NFA states reachable from NFA state s on e-transations alone  
e-closure(T)| Set of NFA states reachable from some NFA state s in set T on e-transation alone; =**U**s in T e-closure(s)  
move(T,a)   | Set of NFA states to which there is a transition on input symbol **a** from some state s in T  

下面是接受(a|b)*abb的NFA

而DFA D的转换表Dtran是

我所遇到的问题是,当我在{0,1,2,4,7}中的州中,只有27amove(A,a) ={3,8}e-closure({3,8}) ={1,2,3,4,6,7,8}过渡时,我无法理解如何在DFA状态B、C、D和E中得到NFA状态。My problem is how do we end up with {1,2,3,4,6,7,8}和NFA声明如下。

EN

回答 1

Stack Overflow用户

发布于 2016-04-20 19:46:07

您还应该在过渡之后合并电子转换。因此,在查看move(A,a)={3,8}时,您应该添加状态{6,7,1,2,4},因为所有这些状态都可以从状态2到具有1或更多e转换的状态2到达。

我没有检查,但我想其他的州也可以用相似的方式来构造。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35741004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档