为什么该NFA不接受空字符串?

时间:2018-09-21 03:57:33

标签: lambda automata dfa nfa

我们获得了NFA的定义,并被告知要使用转换过程构建等效的DFA。我没有问题,但是,我们的教授在完成作业后一直告诉我们,原始NFA不接受空字符串。我对为什么不这样做感到困惑。

这是NFA:

δ(q0, a) = {q0, q1}
δ(q1, b) = {q1, q2}
δ(q2, a) = {q2}
δ(q0, λ) = {q2}

with initial state q0 and final state q2

为什么NFA或等效的DFA不接受空字符串?最后一条规则规定,如果在q0中遇到lambda,则进入状态q2,这是最终状态。我的印象是,如果我们接受空字符串,则计算机将同时保持状态q0并转换为q2,并且由于其中一个是最终状态,因此它将被接受。

1 个答案:

答案 0 :(得分:1)

假设λ是出现在输入字符串末尾的字母外符号-自动机确实接受空字符串。