1 / 35

形式言語 と オートマトン

形式言語 と オートマトン. 第 4 回 鳥取大学工学研究科 情報エレクトロニクス 専攻 田中美栄子. 1. 本日 の予定. ・空動作を許すオートマトン ・ DFA と NFA の同等性 の2点について学ぶ. 形式言語とオートマトン. 1. 本日 の予定1. 空動作を許す オートマトン. 形式言語とオートマトン. 1. 空動作 とは ?. 空動作( ε-move )とは. 入力記号を 読まずに 状態遷移できる ( つまりいつでも遷移してよい). Q. ε. S. S. P. ε. ε. R. 形式言語とオートマトン. 1.

Download Presentation

形式言語 と オートマトン

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 形式言語 とオートマトン 第4回 鳥取大学工学研究科 情報エレクトロニクス専攻 田中美栄子

  2. 1 本日の予定 ・空動作を許すオートマトン ・DFAとNFAの同等性 の2点について学ぶ 形式言語とオートマトン

  3. 本日の予定1 空動作を許す オートマトン 形式言語とオートマトン

  4. 1 空動作とは? 空動作(ε-move)とは • 入力記号を読まずに状態遷移できる • (つまりいつでも遷移してよい) Q ε S S P ε ε R 形式言語とオートマトン

  5. 1 空動作を許す、とは? ε q ε r 入力無しでも二つの状態q,rのどちらかに行ける 形式言語とオートマトン

  6. 状態の有限集合 入力記号の有限集合 注意 動作関数 初期状態 受理状態の有限集合 空動作を許す場合も動作関数を拡張して五字組で表す 1 形式言語とオートマトン

  7. 1 • 空動作を許す場合の五字組 形式言語とオートマトン

  8. 1 空動作を許す場合の動作例 ・入力00に対するMの動作 ε ε 形式言語とオートマトン

  9. 1 空動作の動作例 ・入力00に対するMの動作 場合1 ε ε 場合2 入力記号を読まずに状態遷移 2通り存在する 形式言語とオートマトン

  10. 1 空動作の動作例 ・入力00に対するMの動作 場合1 ε ε 受理できる 形式言語とオートマトン

  11. 1 空動作の動作例 ・入力00に対するMの動作 ε これ以上遷移できない→受理できない ε 場合2 形式言語とオートマトン

  12. 1 空動作の動作例 ・入力00に対するMの動作 ε ε 入力語を読み終えたとき受理状態に到達する遷移が可能なので 入力語 00は受理される。 形式言語とオートマトン

  13. 1 空動作の動作例 ・入力110に対するMの動作 ε ε 入力語を読み終えたとき受理状態に到達する遷移が不可能なので 入力語 110は拒否される。 形式言語とオートマトン

  14. 1 空動作のまとめ 空動作とは,入力記号を読まなくてもできる状態遷移 状態遷移は様々な場合が存在する ε Q S R ε 形式言語とオートマトン 形式言語とオートマトン

  15. 本日の予定2 DFAとNFAの 同等性 形式言語とオートマトン

  16. 2 非決定性有限オートマトン(NFA) →決定性有限オートマトン(DFA) NFA(非決定性FSA) DFA(決定性FSA) a b a a {r} {r,s} {p,q,r} b b 形式言語とオートマトン

  17. 2 非決定性有限オートマトン(NFA) →決定性有限オートマトン(DFA) NFA(非決定性FSA) DFA(決定性FSA) 0 {q} 1 0 0,1 {∅} {p,q,r} 0 {r} 1 1 形式言語とオートマトン

  18. DFAとNFAの同等性 教科書P.47 【例2.6】を読みましょう。 実際に図2.9を図2.13に変換してみよう。 ※アルゴリズム2.1をじっくり読めば理解できます。 形式言語とオートマトン

  19. DFAとNFAの同等性 1. の状態の集合に応じての状態をつくる 2. において入力を読まずに遷移できる状態を 初期状態とする 3. の受理状態を含む状態をの受理状態とする 4. 教科書を読んでもわかりにくい・・・ 形式言語とオートマトン

  20. DFAとNFAの同等性 1. の状態の集合に応じての状態をつくる 2. において入力を読まずに遷移できる状態を 初期状態とする 3. の受理状態を含む状態をの受理状態とする 4. 教科書を読んでもわかりにくい・・・ 形式言語とオートマトン

  21. DFAとNFAの同等性 要は入力によって何処に遷移するかを見るだけ!! rにaが入力された場合 r又はsに遷移する ⇒ {r,s}という名前を持つ状態に遷移すると考える 形式言語とオートマトン

  22. DFAとNFAの同等性 要は入力によって何処に遷移するかを見るだけ!! rにaが入力された場合 r又はsに遷移する ⇒ {r,s}という名前を持つ状態に遷移すると考える 形式言語とオートマトン

  23. DFAとNFAの同等性 要は入力によって何処に遷移するかを見るだけ!! {r,s}にaが入力された場合 r又はs 又は t に遷移する ⇒ {r,s,t}という名前の状態に遷移すると考える 初期状態から到達できる状態だけで良い 形式言語とオートマトン

  24. 2 • NFA→DFA 遷移先がない場合も複数ある場合もある 遷移先が 一意に決定 a b a a {r} {r,s} {p,q,r} b b 形式言語とオートマトン

  25. NFAを同等なDFAに 書き換えるアルゴリズム 教科書P.50 【例2.7】を読みましょう。 実際に図2.11を図2.14に変換してみよう。 ※アルゴリズム2.2をじっくり読めば理解できます。 形式言語とオートマトン

  26. • 空動作のある場合 1. 初期状態の構成 入力を読まなくてもq, rに遷移可能    初期状態 {p,q,r} 形式言語とオートマトン

  27. • 空動作のある場合 1. 初期状態の構成 DFAの初期状態は {p.q.r} となる NFAの初期状態pから入力なしで q または r に遷移できる {p,q,r} 形式言語とオートマトン

  28. • 空動作のある場合 1. 初期状態の構成 NFAの初期状態pから入力なしで q または r に遷移できる DFAの初期状態は {p.q.r} となる {p,q,r} 形式言語とオートマトン

  29. • 空動作のある場合 2. アルゴリズム2.1と同様に状態遷移をつくる {p,q,r} 形式言語とオートマトン

  30. • 空動作のある場合 2. アルゴリズム2.1と同様に状態遷移をつくる 0 {q} 1 0 0,1 ∅ {p,q,r} 0 {r} 1 1 形式言語とオートマトン

  31. • 空動作のある場合 3. 受理状態を含む部分集合に対応する状態を 受理状態とする 0 {q} 1 0 0,1 ∅ {p,q,r} 0 {r} 1 1 形式言語とオートマトン

  32. • 空動作のある場合 3. 受理状態を含む部分集合に対応する状態を 受理状態とする 0 {q} 1 0 0,1 ∅ {p,q,r} 0 {r} 1 1 形式言語とオートマトン

  33. 2 • NFA→DFA 遷移先が一意に決定 遷移先が不確定 0 {q} 1 0 ∅ 0,1 {p,q,r} 0 {r} 1 1 形式言語とオートマトン

  34. DFAとNFAの同等性まとめ ・決定性有限オートマトン(DFA) 同等(同じ仕事をする)  ・非決定性有限オートマトン(NFA)  ・空動作を許す非決定性有限オートマトン(NFA) アルゴリズム2.1や2.2を使って書き換えられる 形式言語とオートマトン

  35. 3 頭の整理のために 小テストを行いましょう。 形式言語とオートマトン

More Related