1 和 0 的奇数序列的 DFA
DFA for odd sequences of 1 and 0
我想为语言 {1,0} 创建一个 DFA,它只接受从奇数 1 和 0 的序列构建的单词。
我发现了很多 DFA 的例子,在一个字符串中有 even/odd 个数字 0 和 1,但不是在该字符串的每个序列中。我无法掌握如何创建所述图形。应该用 4 个状态还是 3 个状态构建?
刚刚在想一件事,这个是正确的还是我弄错了?
好吧,这个是错的,但也许是这个?
然而,对于这个,我觉得你总是必须从一个 1 或一个 0 开始,并且不会在第一个序列中得到更多,所以它并不完美......
亲切的问候,
Give a deterministic finite automaton accepting those words over the alphabet {0, 1}, where each series of zeros and each series of 1s is of odd length.
不是100%不含糊。我个人理解,空词和仅由 0
s 或仅由 1
s 组成的词也是语言的一部分(如果它的长度为奇数)。然后像下面这样的东西应该可以解决问题。
状态1
是起始状态。 “上”分支(即状态 2、3)用于接受任何奇数的 0
,“下”分支(即状态 4,5)接受任何奇数的 1
。您只能通过读取相应符号的单个实例来“输入”相应的分支,或者从空字开始,或者在读取相应其他符号的奇数之后。
例如单词1000111110001
。阅读单个 1
后,您处于 4
状态。通过阅读单个 0
,您切换到“上层分支”,现在可以阅读任何偶数(在本例中为 2)0
,这将始终使您回到接受状态 2
。在状态 3
中读取 1
是不可能的(因为这个词是无效的)。在状态 2
中读取单个 1
会使您回到状态 4
。并且从这里类似于上面,你可以读取 1
的任何偶数(在本例中为 4),这将始终将你带回到接受状态 4
。等等等等。如果在偶数个相等符号后符号发生变化(或单词结束),则您处于 3
或 5
状态,两者均不接受,因此该单词将不会被接受。
我想为语言 {1,0} 创建一个 DFA,它只接受从奇数 1 和 0 的序列构建的单词。 我发现了很多 DFA 的例子,在一个字符串中有 even/odd 个数字 0 和 1,但不是在该字符串的每个序列中。我无法掌握如何创建所述图形。应该用 4 个状态还是 3 个状态构建?
刚刚在想一件事,这个是正确的还是我弄错了?
好吧,这个是错的,但也许是这个?
亲切的问候,
Give a deterministic finite automaton accepting those words over the alphabet {0, 1}, where each series of zeros and each series of 1s is of odd length.
不是100%不含糊。我个人理解,空词和仅由 0
s 或仅由 1
s 组成的词也是语言的一部分(如果它的长度为奇数)。然后像下面这样的东西应该可以解决问题。
状态1
是起始状态。 “上”分支(即状态 2、3)用于接受任何奇数的 0
,“下”分支(即状态 4,5)接受任何奇数的 1
。您只能通过读取相应符号的单个实例来“输入”相应的分支,或者从空字开始,或者在读取相应其他符号的奇数之后。
例如单词1000111110001
。阅读单个 1
后,您处于 4
状态。通过阅读单个 0
,您切换到“上层分支”,现在可以阅读任何偶数(在本例中为 2)0
,这将始终使您回到接受状态 2
。在状态 3
中读取 1
是不可能的(因为这个词是无效的)。在状态 2
中读取单个 1
会使您回到状态 4
。并且从这里类似于上面,你可以读取 1
的任何偶数(在本例中为 4),这将始终将你带回到接受状态 4
。等等等等。如果在偶数个相等符号后符号发生变化(或单词结束),则您处于 3
或 5
状态,两者均不接受,因此该单词将不会被接受。