Computer science 寻找非确定性有限自动机语言
我是一名二年级和二年级的计算机科学学生,我们得到了一个不确定的有限自动机,问它能接受什么单词 我试图将其简化为确定性有限自动机,结果是: 我认为is不接受任何b*或a或a(b+ab*a)*格式的单词,无法找出它们之间的共同点以及它接受的单词,我想了这么多,它与整个单词无关,仅限于开头,因为如果单词以aa开头,它可以有a和b的任意组合,这无关紧要,它将被接受Computer science 寻找非确定性有限自动机语言,computer-science,computation,Computer Science,Computation,我是一名二年级和二年级的计算机科学学生,我们得到了一个不确定的有限自动机,问它能接受什么单词 我试图将其简化为确定性有限自动机,结果是: 我认为is不接受任何b*或a或a(b+ab*a)*格式的单词,无法找出它们之间的共同点以及它接受的单词,我想了这么多,它与整个单词无关,仅限于开头,因为如果单词以aa开头,它可以有a和b的任意组合,这无关紧要,它将被接受 非常感谢您的帮助。首先,我将以自己的方式回答问题。然后,我将讨论您到确定性有限自动机的转换 我们可以写一组方程,解q2,看看正则表达式导
非常感谢您的帮助。首先,我将以自己的方式回答问题。然后,我将讨论您到确定性有限自动机的转换 我们可以写一组方程,解q2,看看正则表达式导致了这种状态。考虑以下系统:
(q1) = (q2)a + e
(q2) = (q1) + (q3)(a + b)
(q3) = (q1)a + (q3)b
我们想解决导致接受状态的原因,所以让我们先消除不接受状态:
(q1) = (q2)a + e
(q2) = (q2)a + e + (q3)(a + b)
(q3) = (q2)aa + a + (q3)b
为了消除(q3),我们可以使用规则(x)=r+(x)s(x)=rs*,然后替换为:
(q1) = (q2)a + e
(q3) = ((q2)aa + e)b*
(q2) = (q2)a + e + ((q2)aa + a)b*(a + b)
= (q2)a + e + (q2)aab*(a + b) + ab*(a + b)
= (q2)[a + aab*(a + b)] + [e + ab*(a + b)]
= (e + ab*(a + b))(a + aab*(a + b))*
= (e + ab*(a + b))(a(e + ab*(a + b)))*
我们恢复的正则表达式基本上描述了这一点:
通过空转换或通过第三季度到达第二季度;然后,回到第二季度,转到第一季度并重复第一部分。你可以想做多少次就做多少次
如何编写系统
/------------------------------------\
| __ |
V / \ |
{q1} -a-> {q1,q3} -a-> {q1,q2,q3} a |
| | | ^__/ |
b b b |
| __ | | |
V / V V | |
{ } b {q2,q3} <--------/ |
^ \__/ \ |
| \-a->{q1,q2}-----a----/
| |
\----------b----------/
/------------------------------------\
| __ |
V/\|
{q1}-a->{q1,q3}-a->{q1,q2,q3}a|
| | | ^__/ |
b b b|
| __ | | |
V/V V||
{}b{q2,q3}{q1,q2}--a----/
| |
\----------b----------/
添加状态和转换的规则包括:
你的DFA不正确的原因是,在NFA中,总是有机会“搞砸”并最终陷入困境。在自动机中,您可以到达最底部的“确定”,然后进行设置。请勿在此处发布图像链接。改为添加图片。谢谢,现在我明白我的错误了,非常感谢。