【问题标题】:Does an NFA necessarily have final states?NFA 是否一定有最终状态?
【发布时间】:2017-02-05 19:23:43
【问题描述】:

我试图证明所有 NFA 都可以转换为具有一种最终状态的 NFA,但我不确定如何/是否必须处理最终状态为 0 的情况。

【问题讨论】:

  • 正式定义(在维基百科上,我不想拿出我的书)似乎表明最终状态集可以为空。因此,除非您可以有一个断开连接的 NFA(即最终状态断开连接),否则您似乎无法将其转换为一个最终状态的 NFA。无论如何,我认为您可以指定“对于所有具有 > 0 最终状态的 NFA”,就像这个问题在这里所做的那样:cs.stackexchange.com/q/14555/29703。在这一点上,cs.stackexchange 可能是这个问题的更好的地方。
  • 由于空集是所有其他集的子集,我的书也没有说明需要有最终状态。

标签: theory proof dfa computation nfa


【解决方案1】:

一切都取决于您的定义,但通常:

  • 接受状态集可能为空
  • 并非所有状态都必须可以从初始状态到达

任何没有接受状态的 NFA 都等同于具有两种状态的 DFA:在所有输入上循环到自身的初始非接受状态;以及在所有输入上循环到自身的无法到达的接受状态。

【讨论】:

    猜你喜欢
    • 2020-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-11
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 2021-02-24
    相关资源
    最近更新 更多