少なくとも 2 つあり、奇数である言語は通常の言語L
です。そのDFAは次のとおりです。a
b
この DFA では、DFS
概念的に 2 つの を組み合わせまし た。
DFA-1 = for odd number of `b`'s (placed vertically three times in diagram)
DFA-2 = for >= two a (placed Horizontally two times in diagram)
DFA はあまりにも象徴的で単純なので、両方の DFA を組み合わせる方法について説明する必要はないと思います。
b
この DFA を描画するには、偶数または奇数の s の数を常に追跡します。States 0, 2 and 4
偶数回b
来たことを意味します。したがって、この DFA を垂直方向に 2 つの部分に分割できます。下位b
の状態は偶数で、上位の状態は奇数です。
また、奇数の場合は文字列が受け入れられるb
ため、最終状態は上部の状態のいずれかになります。
b
状態は数だけではありませんa
が最低でも良いと思い2
ます。したがって、この DFA を水平方向に 3 つの部分に分割できます。ここで、s の数はa
at で 0 state-0 and 1
、a
s は at で 1 state-2 and 3
、 s は ata
で 2state-4 and 5
です。最初の 2 つa
の s の後は、文字列内で任意の数のs を使用できるため、stateとa
で自己ループが発生します。q4
q5
必要な状態の数は 6 です。奇数偶数の場合は 2 状態でb
あり、少なくとも2
3 つの状態 a=0、a=1、a=2 であるため、2*3 = 6 です。