Transcript Document

形式言語 と オートマト
第6回
鳥取大学工学研究科
情報エレクトロニクス専攻
田中美栄子
本日の予定
形式言語とオートマト
本日の予定1
形式言語とオートマト
空動作とは?
空動作(ε-move)とは
入力記号を読まずに状態遷移できる
行き先は状態の集合(空集合Φを含む)
ε
S
ε
P
 (S,  )  {P}
形式言語とオートマト
Q
S
ε
R
 ( S ,  )  {Q , R }
空動作を許す、とは?
0
p
ε
q
ε
r
1
入力無しでも二つの状態
形式言語とオートマト
q,rのどちらかに行ける
空動作の五字組み
M  Q ,  ,  , q 0 , F 
Q
状態の有限集合

入力記号の有限集合

動作関数
 : Q  (   { })  2
q0  Q
q0
初期状態
F
受理状態の有限集合
形式言語とオートマト
注意
F Q
Q
空動作の五字組み
M  Q ,  ,  , q 0 , F 
Q  { p , q , r}
  { 0 ,1}
0
 : Q  (   { })  2 Q
 ( p ,  )  { q , r },  ( p , 0 )   ( p ,1)   ,
 ( q , 0 )  { q },
 ( q ,1)   ( q ,  )   ,
 ( r ,1)  { r },
 ( r ,0 )   ( r ,  )  
q0  p
F  {q , r}
形式言語とオートマト

q

r
p
1
空動作の動作例
・入力00に対するMの動作
0
0
$
ε
0
q
p
ε
r
1
形式言語とオートマト
空動作の動作例
・入力00に対するMの動作
0
0
場合1
$
0
ε
p
入力記号を読まずに状態遷移
2通り存在する
形式言語とオートマト
q
ε
場合2
r
1
空動作の動作例
・入力00に対するMの動作
0
0
場合1
$
0
ε
p
受理できる
q
ε
r
1
形式言語とオートマト
空動作の動作例
・入力00に対するMの動作
0
0
$
0
ε
p
これ以上遷移できない
→受理できない
形式言語とオートマト
q
ε
場合2
r
1
空動作の動作例
・入力00に対するMの動作
0
0
0
ε
$
q
p
ε
r
1
入力語を読み終えたとき受理状態に到達する遷移が可能なので
入力語 00 は受理される。
形式言語とオートマト
空動作の動作例
・入力110に対するMの動作
0
1
1
0
$
ε
q
p
ε
r
1
入力語を読み終えたとき受理状態に到達する遷移が不可能なので
入力語 110 は拒否される。
形式言語とオートマト
空動作のまとめ
空動作とは,入力記号を読まなくてもできる状態遷移
状態遷移は様々な場合が存在する
ε
Q
ε
R
S
 ( S ,  )  {Q , R }
形式言語とオートマト
形式言語とオートマト
本日の予定2
形式言語とオートマト
非決定性有限オートマトン(NFA)
→決定性有限オートマトン
(DFA)
NFA(非決定性FSA)
a
DFA(決定性FSA)
a
b
a
r
s
a
t
{r}
a
a
{r,s}
{p,q,r}
b
b
b
形式言語とオートマト
非決定性有限オートマトン(NFA)
→決定性有限オートマトン
(DFA)
NFA(非決定性FSA)
DFA(決定性FSA)
0
0
{q}

p

1
0
q
{ }
{p,q,r}
r
1
1
形式言語とオートマト
0
{r}
1
0,1
DFAとNFAの同等性
教科書P.47
【例2.6】を読みましょう。
※P.43の図とアルゴリズム2.1をじっくり読めば理解できます。
形式言語とオートマト
形式言語とオートマト
DFAとNFAの同等性
教科書P.50
【例2.7】を読みましょう。
※P.46の図とアルゴリズム2.2をじっくり読めば理解できます。
形式言語とオートマト
形式言語とオートマト
DFAとNFAの同等性まとめ
・決定性有限オートマトン(DFA)
同等(同じ仕事をする)
・非決定性有限オートマトン(NFA)
・空動作を許す非決定性有限オートマトン(NFA)
アルゴリズム2.1や2.2を使って書き換えられる
形式言語とオートマト
形式言語とオートマト
頭の整理のために
小テストを行いましょう。
形式言語とオートマト