有限オートマトン - 近畿大学非決定性有限オートマトン(NFA) (...

Preview:

Citation preview

有限オートマトン

有限制御部

... ...

入力記号列

読み取りヘッド

決定性有限オートマトン(DFA)(

: 状態の有限集合: 入力アルファベット: (状態)遷移関数

状態 で入力 を読み取った後の状態

: 初期状態: 受理状態の集合

あらゆる状態と入力に対して遷移先の状態がただ一つに定まる

を含む系列を受理するDFA

, ∑, , ,, ,

∑ , : , , , , , , , , , , ,

を含む系列を受理するDFA

, ⊢ , ⊢ , ⊢ , ⊢ , ⊢ , ⊢ , ⊢ , ⊢ ,

様相遷移関係where ∗

を含まない系列を受理するDFA

s q

, ∑, , ,, ,

∑ , : , , , , , , , , , , ,

,

非決定性有限オートマトン(NFA)(

状態の有限集合入力アルファベット

: (状態)遷移関係( : 状態 で入力 を読み取って

状態 へ遷移できる( : 状態 で入力を読み取ることなく

状態 へ遷移できる初期状態受理状態の集合

で始まり で終わる系列を受理するNFA

, ∑, Δ, , , ,∑ ,Δ , , , , , , , , , , ,

で始まり で終わる系列を受理するNFA

, ⊢ , ⊢ ,⊢ , ⊢ , ⊢ ,

⊢ , ⊢ ,⊢ ,

様相遷移関係where ∗

正則表現

上の正則表現

(1) 「 」, 「 」, 及び「 」 は正則表現である

(2) が正則表現であるとき

「 」, 「 」, 「 ∗」も正則表現である

(3) 以上の規則で生成されるもののみが正則表現

である

基本段階

帰納段階

の帰納的定義

「 」、「 」は混乱のない範囲で省略してよい

DFA, NFA,正則表現の関係

決定性有限オートマトン(DFA)、非決定性有限オートマトン(NFA)、正則表現の表現能力が同じである(相互の変換可能)

表現能力が同じとはーDFAとNFAの場合ー

あらゆるDFA に対して

なるNFA が存在する

あらゆるNFA に対して

なるDFA が存在する

: オートマトンが受理する言語(記号列の集合)

DFAとNFAの表現能力が等しい

表現能力が同じことを示すにはーDFAと正則表現の場合ー

DFA が与えられたとき

なる正則表現α を構成する方法を示す

DFAから正則表現への変換法

正則表現 が与えられたとき

なるDFA を構成する方法を示す

正則表現からDFAへの変換法

結局

DFA, NFA, 正則表現相互の間の変換法を与えることで、それらの表現能力が等しいことがわかる

DFA NFA

正則表現

DFAはもともとNFAの特別な場合

(1)(3)

(2)

NFAからDFAへの変換NFA から、その動作を模倣する

DFA への変換

( の状態は の状態の部分集合に対応)

i.e. , ,

NFAからDFAへの変換における状態遷移関数の決定

.

.

.

ε

ε

ε

ε

,

,

,

変換前のNFA

s

q

t

r

a b

ε

ba ε

b

変換後のDFA

s q rt

ar t

b

at

ab

ba

s t

b

b a bΦ

a

q rtr t

t

s t

(2) 正則表現からNFAへの変換

少し板書しましょう

正則表現→NFAの変換例を受理するオートマトン

ε∗

を受理するオートマトン

∪ ∗ ∗

を受理するオートマトン

(3) NFAの状態遷移図から正則表現への変換

少しだけ板書

ー状態遷移図から表現図へー

状態の消去

(1)

∗(2)

辺の統合(3) 1

...

2 1 ∪ 2 ∪ ⋯∪

Recommended