考虑一个DFA接受{a,b}上的所有字符串,其中a的mod 3 = 2的数目和b的数目为奇数。
这种DFA的最小状态数是多少?
(A) 4
(B) 2
(C) 6
(D) 8答案: (C)
解释:
上面的问题是产品自动机的一个示例。如果我们有两种情况可以分别使用DFA,则可以按产品自动机将这两种情况合并。所得DFA的状态数等于各个DFA的状态积。
这里的DFA接受{a,b}上的所有字符串,其中a的mod 3 = 2的数目将具有3个状态。 (a的mod 3的数量将给出余数0、1、2,因此3个状态可以分别描述)。
同样,DFA接受{a,b}上所有字符串,其中b的个数为奇数(b的个数的mod 2 = 0)将具有2个状态。
因此,两种情况下的最终DFA都将具有2 * 3 = 6个状态。
这个问题的测验