ミーリー型順序機械 (Mealy machine) は機械の出力が状態と入力の組み合わせによって決まる順序機械である。
ミーリー型順序機械は、次に示す 3 つの有限集合
と,これらの関係を定める二つの関数
および特定の状態
を指定することにより定まる.
- 状態の有限集合
![{\displaystyle Q}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8752c7023b4b3286800fe3238271bbca681219ed)
- 入力記号の有限集合
![{\displaystyle {\mathit {\Sigma }}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/0fa721f0ebb284d8fa648e04d8a4e4ee851621cb)
- 出力記号の有限集合
![{\displaystyle {\mathit {\Delta }}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/9ba97581e8ed63ea381cc4e496a6fd2463fa3ecc)
- 状態推移関数 (state transition function)
:機械の現在の状態
とそれへの入力
のすべての組み合わせに対して,次の時点の状態
を
により一意に定める関数.
- 初期状態
![{\displaystyle q_{0}\in Q}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ad0e7ce55cfad982929c93e29139a65108c37263)
以上により定まった順序機械
について,これらをこの順に並べて
![{\displaystyle M=(Q,{\mathit {\Sigma }},{\mathit {\Delta }},\delta ,\lambda ,q_{0})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ccd88e48a79c5c8762d83e028340f7159d76833a)
と形式的に表す.
(例)
ミーリー型順序機械
,
ただし
.
状態推移表 (state transision table)
[編集]
ミーリー型順序機械の内容を見やすく表現するための表で,前述の順序機械
に対しては次のようになる.
現在の状態 |
次の状態 |
出力
|
入力 |
入力
|
0 |
1 |
0 |
1
|
⇒ |
p
|
p |
q |
0 |
0
|
|
q
|
p |
q |
0 |
1
|
ここで初期状態は「現在の状態」の欄の中で矢印「⇒」で指し示して明示し,通常は「現在の状態」の最初の行に置く.
(例では
) であるとき,現在の状態が
である行と入力
の交点の「次の状態」欄には状態
を置き,「出力欄」には
を記入する.
状態推移図 (state transition diagram)
[編集]
順序機械の動作を図式的に表現することによって,見やすくかつ把握しやすくしたのが状態推移図である。先の順序機械
に対しては 図3 のようになる。
図3
状態遷移図において、各々の状態は状態を示す記号を丸で囲ったもので表し,特に初期状態には矢印をつけて明示する。
また
であるとき,状態 p から状態 q へ向かう推移を示す矢印を引き,それぞれの矢印には入出力を表すラベル
をつける.
ミーリー型順序機械を定義する記述法①を各自考案し、①と入力記号列②を与えたときの順序機械の出力を出力するプログラムを作成せよ。