【发布时间】:2018-10-02 13:50:06
【问题描述】:
我试图弄清楚如何构建一个接受语言 的 DFA,其中字母 ∑ = {a, b}。这是家庭作业问题集的一部分,我想我对如何构建简单的 DFA 有一个非常基本的想法,但我无法理解联合符号,更重要的是 u 的意义是什么?
【问题讨论】:
标签: finite-automata dfa formal-languages
我试图弄清楚如何构建一个接受语言 的 DFA,其中字母 ∑ = {a, b}。这是家庭作业问题集的一部分,我想我对如何构建简单的 DFA 有一个非常基本的想法,但我无法理解联合符号,更重要的是 u 的意义是什么?
【问题讨论】:
标签: finite-automata dfa formal-languages
u 表示任意长度的字符串(包括0),包含任意顺序的as和bs。这就是 u 是 ∑* 的一个元素的条件的含义。
在一般情况下,您可以通过构建一个 NFA 来构建 DFA,该 NFA 的起始状态具有多个输出转换,然后在 NFA 上执行 ε-closure。在这种情况下,两个开始转换是互斥的,因此您只需加入两个 DFA 的开始状态即可。
这可能在您的教科书和/或讲义中得到更好的解释。
【讨论】: