1

次のプロパティを使用して、言語 {a,b,c} で空でない DFA を作成する必要があります。

  1. 最初の記号は a.
  2. b が偶数個あります。
  3. 最後の記号は c です。

私はちょうど3つの別々のオートマトンを作成し、交差点を使用してそれらを組み合わせる必要があるのか​​ 、それとも1つだけ作成する必要があるのか​​ 疑問に思っていました。状態を交互に切り替えることができることは知っていますが、すべてを組み合わせてそれを行う方法がわかりません。

ありがとう

4

1 に答える 1

1

これがあなたのオートマトンです(0が偶数であり、したがって0 bが問題ないと仮定します):

[start](a) -> [1]
[start](b,c,<eoi>) -> [reject]

[1](a) -> [1]
[1](<eoi>) -> [reject]

[1](c) -> [2]
[1](b) -> [3]

[2](<eoi>) -> [accept]
[2](c) -> [2]
[2](a) -> [1]
[2](b) -> [3]

[3](<eoi>) -> [reject]
[3](a,c) -> [3]
[3](b)->[1]

「入力の終わり」はどこにありますか。

状態1:偶数のb、最後に処理されたシンボルはcではありません。状態2:偶数のb、最後に処理されたシンボルはcです。状態3:奇数のb。

于 2012-05-20T14:06:32.827 に答える