Upload
olaf
View
44
Download
0
Embed Size (px)
DESCRIPTION
形式言語 と オートマトン. 第 3-2 回 鳥取大学工学研究科 情報エレクトロニクス 専攻 田中美栄子. 0. 有限オートマトン ( Finite State Automata : FSA ) の 5 字組 による表示. 形式言語とオートマトン. 1. 有限オートマトン ( Finite State Automata : FSA ). FSA : M = < Q, Σ , d, q, F> の5字組 ・ Q : 状態の集合 ・ Σ : 使用するアルファベット ・ d : 動作関数 ・ q : 初期状態 - PowerPoint PPT Presentation
Citation preview
形式言語 と オートマトン
第 3-2 回鳥取大学工学研究科
情報エレクトロニクス専攻田中美栄子
0
形式言語とオートマトン
有限オートマトン( Finite State Automata :
FSA )の
5 字組による表示
1
形式言語とオートマトン
有限オートマトン( Finite State Automata : FSA )
FSA : M = <Q, Σ, d, q, F> の5字組 ・ Q : 状態の集合 ・ Σ : 使用するアルファベット ・ d : 動作関数 ・ q :初期状態 ・ F : 受理状態の集合
2
形式言語とオートマトン
有限オートマトンの例
},,{ tsrQ },{ baQQ :
rbttat
rbstas
rbrsar
),(,),(
,),(,),(
,),(,),(
rq 0}{tF
r s
a
b
b
a
t
a
b
M = <Q, Σ, d, q, F>
0
形式言語とオートマトン
有限オートマトン( Finite State Automata :
FSA )
の変遷を様相を使って見る様相 (configuration)= 時点表示
0
形式言語とオートマトン
様相でオートマトンの変遷を追う
様相の定義 =( オートマトンの状態,未読の入力)
オートマトンの動作に従い、状態が変化する 未読入力が減ってゆく
- >> 最後に (終状態 , 空列)となったら受理、
そうでなければ受理しない
3
形式言語とオートマトン
入力 abba が受理されるかどうかを様相 (configuration) を使って調べる
1. 文字列 M = abaa を入力
2. これを1文字ずつ読んで行く
3. 読み終わったら$が入力される( ε は空列)
4. その状態で受理状態のどこかにいれば M は受理される
4
形式言語とオートマトン
様相( configuration)の変遷
|
),q()aa,q(
)aaa,q()aaaa,q(
nMM
n31
Mn321
Mn3210
),(),(*
3210 nM
n qaaaaq
5
形式言語とオートマトン
“ 有限オートマトンの例”で示したオートマトン M にabaaを入力してみる
},,{ tsrQ },{ baQQ :
rbttat
rbstas
rbrsar
),(,),(
,),(,),(
,),(,),(
rq 0}{tF
M = <Q, Σ, d, q, F>
),(),(),(
),(),(
sarbar
bbasabbar
MM
MM
受理状態でない s で終了 → 拒否
6
形式言語とオートマトン
“ 有限オートマトンの例”で示したオートマトン M にaaaaを入力してみる
},,{ tsrQ },{ baQQ :
rbttat
rbstas
rbrsar
),(,),(
,),(,),(
,),(,),(
rq 0}{tF
M = <Q, Σ, d, q, F>
受理状態 t で終了 → 受理
),(),(),(
),(),(
tataat
aaasaaaar
MM
MM
7
形式言語とオートマトン
非決定性 FAの様相 (= 時点表示 )
a
aasr
b
t
?)b,s()ab,r(
)ε,r()b,r()ab,r()aab,r(
MM
MMM
受理状態でないrで入力が尽きるか、状態sで b を読めない、のどちらにしても aabは受理されない
状態 rで a を入力すると遷移は2種類
形式言語とオートマトン
非決定性有限状態オートマトン
を学ぶ
1
形式言語とオートマトン
非決定性有限オートマトンとは !?
( 前回までの授業 )
決定性有限オートマトン すべての状態ですべての入力に対して、遷移先が唯一
a
2
形式言語とオートマトン
非決定性有限オートマトンとは !?
一つの入力に対し、遷移先が唯一でない
非決定性有限オートマトン
a
a
3
形式言語とオートマトン
非決定性有限オートマトンとは !?
決定性有限オートマトンと同様に五字組みで表す但し、動作関数 σ は以下のように表す
非決定性有限オートマトン
σ: Q ×Σ→ 2Q
4
形式言語とオートマトン
非決定性有限オートマトンとは !?
以下のオートマトンを五字組みで表すと・・・
a
aa tsr
b
}{tF
rq 0
),(,),(
,),(},{),(
},{),(},,{),(
btat
bstas
rbrsrar
QQ 2:
5
形式言語とオートマトン
非決定性有限オートマトンとは !?
a
aatsr
b
},,{ tsrQ },{ ba 違いは状態遷移だけ
6
形式言語とオートマトン
非決定性有限オートマトンとは !?
at
b
),(,),(
,),(},{),(
},{),(},,{),(
btat
bstas
rbrsrar
QQ 2:
動作関数の読み方は・・・
状態が r で入力記号がa である時は、
r とs どちらに遷移しても良い
r s
aa
7
形式言語とオートマトン
非決定性有限オートマトンとは !?
),(,),(
,),(},{),(
},{),(},,{),(
btat
bstas
rbrsrar
QQ 2:
動作関数の読み方は・・・
状態が t で入力記号が aである時は、 遷移先がないという事
a
aasr
b
t
8
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにbaa を入力するa
aasr
b
t
9
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにb aa を入力するa
aasr
b
tb
10
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにbaa を入力するa
aasr
b
ta
11
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにbaa を入力するa
aasr
b
ta
12
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにbaa を入力するa
aasr
b
taa
状態 rの時、aが入力されると2種の遷移がある
状態 rの時、aが入力されると2種の遷移がある
どちらに遷移しても良い
13
形式言語とオートマトン
非決定性有限オートマトンとは !?
baaを入力すると、三種類の遷移がある。
a
aasr
b
t
形式言語とオートマトン
非決定性有限オートマトンとは !?
baaを入力すると、三種類の遷移がある。
受理状態である t で遷移が終わっているので、 baaは受理される
ba,
aasr t
),(),(),(),(
),(),(),(),(
),(),(),(),(
tasaarbaar
saraarbaar
raraarbaar
MMM
MMM
MMM
14
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにaab を入力するa
aasr
b
t
15
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにaab を入力する
a
aasr
b
ta
16
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにaab を入力する
a
aasr
b
ta
17
形式言語とオートマトン
非決定性有限オートマトンとは !?
この非決定性 FSAにaab を入力する
a
aasr
b
tb入力 bで遷移できるのは最終的にこの遷移のみ
18
0
形式言語とオートマトン
お疲れさまでした。
小テストです。