計算の理論 i 非決定性有限オートマトン( nfa)

20
平平15平5平12平 平平平平平平平平平平平平平平 1 平平平平平 平平平平平 I I 平平平平平平平平平平平平 平平平平平平平平平平平平 ( ( NFA) NFA) 平平 平平 平平 平平

Upload: ward

Post on 06-Jan-2016

83 views

Category:

Documents


7 download

DESCRIPTION

計算の理論 I 非決定性有限オートマトン( NFA). 月曜3校時 大月 美佳. 今日の講義内容. 前回のおさらい 記号列、遷移関数、 FA 今日の新しいこと 非決定性有限オートマトン( NFA) ミニテストとレポート提出. 記号列の復習. 以下の定義を思い出せ 記号列、記号列 w の長さ| w|、 空列 ε 連接、連接の単位元 定義から、 空列 ε の長さ| ε |=0 w ε = w 長さ0の文字列(= ε ) を 0 とように. DFA の復習. 有限状態系 のモデル ⇒有限オートマトン ( FA) 例:自動販売機、エレベータ、渡船 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月 日 佐賀大学知能情報システム学科 1

計算の理論 計算の理論 II非決定性有限オートマトン非決定性有限オートマトン ((NFA) NFA)

月曜3校時大月 美佳

Page 2: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 2

今日の講義内容

1. 前回のおさらい記号列、遷移関数、 FA

2. 今日の新しいこと1. 非決定性有限オートマトン (NFA)

3. ミニテストとレポート提出

Page 3: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 3

記号列の復習

以下の定義を思い出せ– 記号列、記号列 w の長さ |w| 、空列 ε– 連接、連接の単位元

定義から、– 空列 ε の長さ |ε|=0– wε= w

長さ 0 の文字列 (=ε) を 0 とように

Page 4: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 4

DFA の復習

有限状態系のモデル⇒ 有限オートマトン (FA)

例:自動販売機、エレベータ、渡船 FA の定義

M = (Q, Σ, δ, q0, F)

Page 5: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 5

FDA の定義式

M = (Q, Σ, δ, q0, F)– 有限個の状態の集合 Q– (有限の)入力アルファベット Σ– 入力記号によって引き起こされる状態遷

移• 遷移関数 δ : Q×Σ から Q への写像

– 初期状態 q0 Q∈– 最終状態の集合 F Q⊆

Page 6: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 6

有限状態系

qx

q0

qz

qy

qf

DFA の模式図

0 1 1 0 0 1 0 1 0 1 1 0 0 1 1 0 1 0

有限制御部

テープ⇒ 記号列 Σ*(Σ 上のすべての記号列の集合 )

0, 1Σ

アルファベット

遷移関数 δ

q0, qx, qy, qz, qf

Q

F

状態の集合初期状態

最終状態の集合

Page 7: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 7

q1

q3q2

q0 1

1 0

01

1

0

0

even-even even-odd

odd-even odd-odd

DFA の例

M=(Q, Σ, δ, q0, F)– Q = { q0, q1, q2, q3 }– Σ= { 0, 1 }– F = { q0 }– δ(q, a)→ 0 1

q0 q2 q1

q1 q3 q0

q2 q0 q3

q3 q1 q2

入力: a

状態: q

Page 8: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 8

DFA の遷移関数の拡張

δ の拡張定義に注意1.

2. 任意の列 w と記号 a に対してqq ),(ˆ

)),,(ˆ(),(ˆ awqwaq

qi+1qi

a1

11),( ii qaq

a2 ak-1

qi+kqi+k-1

ak

11),( ii qaq)),...,(ˆ()...,(ˆ 111 kkiki aaaqaaq

Page 9: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 9

受理について

入力列 x を有限オートマトン M で受理する→ M = (Q, Σ, δ, q0, F) のとき δ(q0, x) F∈⇒ 要するに、 x のとおり遷移すると最終状

態になるということ 受理言語=正則集合(正則)

受理される入力記号列の集合正則=正規

Page 10: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 10

今日の新しいこと

非決定性有限オートマトン (nondeterministic finite automaton, NFA)1 つの入力記号について状態遷移が 0 個以

⇔ 決定性有限オートマトン (deterministic finite automaton, DFA)

1 つの入力記号について状態遷移が 1 つずつ

Page 11: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 11

決定性と非決定性

q 次の状態へ

入力a

1 対 1⇒ ある記号列に対して 道がひとつ決まる=決定性 (deterministic)

q 次の状態へ

入力 a1 対 n

⇒ ある記号列に対して 道が複数あって 決まらない=非決定性 (nondeterministic)

Page 12: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 12

NFA の例

q0

01

q1 q2

q3

0

1

q4

0 1

1

0 0

1

このへん

Page 13: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 13

NFA での受理

入力列に対して状態遷移がひとつでもあれば受理受理される入力列の例: 01001

q0

0

1

q1 q2

q3

0

1

q4

0 1

1

0 0

1

q0, q0, q0, q3, q4, q4

注意:最終状態でとまらなければならないということはない

Page 14: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 14

NFA の取りうる状態

NFA は同時刻に複数の状態を取りうる

0 1 2 3 4 5

0 1 0 0 1

q0 q0 q0 q0 q0 q0

q3 q1 q3 q3 q1

q4 q4

Page 15: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 15

有限制御機としての NFA

qx

0 1 1 0 0 1

有限制御部

とりうる状態が複数に

qx

0 1 1 0 0 1

有限制御部

q y

q z

DFA NFA

Page 16: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 16

NFA の定義式

M = (Q, Σ, δ, q0, F)– DFA と同じ?→遷移関数 δ が違う– δ : Q×Σ から Q のベキ集合( )への

関数

– Q :状態の集合– Σ :入力アルファベット– q0 :初期状態– F : 最終状態の集合

Q2= Q の部分集合の集合

Page 17: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 17

NFA の遷移関数の例

例の遷移関数 δ

0 1

q0 {q0, q3} {q0, q1}

q1 {q2}

q2 {q2} {q2}

q3 {q4}

q4 {q4} {q4}

入力

状態

Page 18: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 18

δ の拡張

DFA の時と同様に δ を拡張δ : Q×Σ から Q のベキ集合への関数→δ : Q×Σ* から Q のベキ集合への関数要するに、入力記号だったのを入力列に拡張

最終的な δ : Q のベキ集合 ×Σ* から Q のベキ集合への関数

ここで、 P は Q の任意の部分集合

Pq

wqwP

),(),( δδ

Page 19: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 19

受理集合

受理集合 L(M) を以下のように定義L(M)={w|δ(q0, w) が F の状態を少なくとも

一つ含む }

ここで、 M=NFA(Q, Σ, δ, q0, F) とする

Page 20: 計算の理論  I 非決定性有限オートマトン( NFA)

15 5 12平成 年 月日

佐賀大学知能情報システム学科 20

ミニテストとレポート

ミニテスト– 教科書・資料を見ても、友達と相談して

も良い– 15 分後に指名された人は板書

ミニテストとレポートを提出すること

– 日時指定ミスにより 14 日でも可とする 出したら帰って良し