2020年度 オートマトンと数理言語論   Theory of Automata and Languages

文字サイズ 

アップデートお知らせメールへ登録 お気に入り講義リストに追加
開講元
数理・計算科学系
担当教員名
伊東 利哉  田中 圭介 
授業形態
講義
メディア利用
Zoom
曜日・時限(講義室)
月3-4(W833)  木3-4(W833)  
クラス
-
科目コード
MCS.T214
単位数
2
開講年度
2020年度
開講クォーター
2Q
シラバス更新日
2020年9月18日
講義資料更新日
-
使用言語
日本語
アクセスランキング
media

講義の概要とねらい

計算可能性の理論、計算複雑さの理論の基礎として、有限オートマトンおよび文脈自由文法について学びます。これを通して、計算機のハードウェア、ソフトウェアに関する基本的な数学的概念を理解します。具体的には、文字列と言語、 有限オートマトン、非決定計算、正規表現、文脈自由文法、プッシュダウン・ オートマトン、ポンピング補題を扱います。

到達目標

本講義を履修することによって以下を理解します。
1) 言語理論における数学的要素
2) 正規言語のモデルと性質
3) 文脈自由言語のモデルと性質

キーワード

オートマトン、言語、文字列、有限オートマトン、非決定計算、正規表現、文脈自由文法、プッシュダウン・ オートマトン、ポンピング補題

学生が身につける力(ディグリー・ポリシー)

専門力 教養力 コミュニケーション力 展開力(探究力又は設定力) 展開力(実践力又は解決力)

授業の進め方

授業は通常の講義の他に演習形式の講義があります。通常の講義3ないし4回につき1回の割り合いで演習形式の講義を行います。そこでは、通常の講義中に扱えなかった内容や小テストについて説明します。授業では毎回、その回の内容、または、それ以前の回の内容について小テストを出します。

授業計画・課題

  授業計画 課題
第1回 講義全体の概要、計算問題、文字列と言語 文字列と言語の概念を理解する
第2回 決定性有限オートマトン、形式的定義 決定性有限オートマトンの概念を理解する
第3回 非決定性計算、非決定性有限オートマトンと決定性有限オートマトンの等価性 非決定性計算の概念を理解する
第4回 有限オートマトンに関する演習 有限オートマトンの構成手法を理解する
第5回 正規演算、正規言語の閉包性、正規表現 正規表現の概念を理解する
第6回 正規表現と有限オートマトンの等価性 正規表現の性質を理解する
第7回 正規言語に対するポンピング補題 ポンピング補題の概念を理解する
第8回 文脈自由文法、文脈自由文法の曖昧さ 文脈自由文法の概念を理解する
第9回 正規言語に対するポンピング補題、および、文脈自由文法に関する演習 ポンピング補題の適用手法を理解する
第10回 Chomsky標準形 Chomsky標準形への変換手法を理解する
第11回 プッシュダウン・オートマトン、プッシュダウン・オートマトンと文脈自由文法の等価性 I プッシュダウン・オートマトンの概念を理解する
第12回 プッシュダウン・オートマトンと文脈自由文法の等価性 II 等価性証明のための変換手法を理解する
第13回 文脈自由文法に対するポンピング補題 ポンピング補題の概念を理解する
第14回 文脈自由文法に対するポンピング補題に関する演習 ポンピング補題の適用手法を理解する

授業時間外学修(予習・復習等)

学修効果を上げるため,教科書や配布資料等の該当箇所を参照し,「毎授業」授業内容に関する予習と復習(課題含む)をそれぞれ概ね100分を目安に行うこと。

教科書

計算理論の基礎 (原著第 2 版) 1 オートマトンと言語, Michael Sipser 著, 太田 和夫, 田中 圭介 監訳, 阿部 正幸, 植田 広樹, 藤岡 淳, 渡辺 治 訳, 共立出版, 2008 年, ISBN 978-4320-12207-9. (原著: Introduction to the Theory of Computation, Second Edition, Michael Sipser, Thomson Course Technology, 2005, ISBN 978-0534-95097-2.)

参考書、講義資料等

初回の講義でお知らせします。

成績評価の基準及び方法

授業中に行う小テスト60%と最終試験40%で評価を行います。

関連する科目

  • MCS.T213 : アルゴリズムとデータ構造
  • MCS.T323 : 計算の理論
  • MCS.T411 : 計算量理論
  • MCS.T405 : アルゴリズム論
  • MCS.T508 : 暗号理論

履修の条件(知識・技能・履修済科目等)

アルゴリズムとデータ構造の知識があることが望ましい。

このページのトップへ