形式言語理論

科目基礎情報

学校 大分工業高等専門学校 開講年度 令和03年度 (2021年度)
授業科目 形式言語理論
科目番号 R03S520 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 1
開設学科 情報工学科 対象学年 5
開設期 前期 週時間数 2
教科書/教材 なし 参考資料を配布する.
担当教員 徳尾 健司

到達目標

(1) 有限オートマトンと正規言語について理解する.(定期試験と小テスト)
(2) プッシュダウンオートマトンと文脈自由言語について理解する.(定期試験と小テスト)
(3) Turing機械と計算可能性について理解する.(定期試験と小テスト)

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
(1) 有限オートマトンと正規言語について理解する.有限オートマトンと正規言語について,他者に説明できるレベルで理解している.有限オートマトンと正規言語について,講義で取り上げた例題を解くことができる.有限オートマトンと正規言語について,基本的な概念の定義や用語の定義を述べることができない.
(2) プッシュダウンオートマトンと文脈自由言語について理解する.プッシュダウンオートマトンと文脈自由言語について,他者に説明できるレベルで理解している.プッシュダウンオートマトンと文脈自由言語について,講義で取り上げた例題を解くことができる.プッシュダウンオートマトンと文脈自由言語について,基本的な概念の定義や用語の定義を述べることができない.
(3) Turing機械と計算可能性について理解する.Turing機械と計算可能性について,他者に説明できるレベルで理解している.Turing機械と計算可能性について,講義で取り上げた例題を解くことができる.Turing機械と計算可能性について,基本的な概念の定義や用語の定義を述べることができない.

学科の到達目標項目との関係

学習・教育目標 (B2) 説明 閉じる
JABEE 1(2)(g) 説明 閉じる
JABEE 2.1(1)② 説明 閉じる

教育方法等

概要:
本講義では,記号処理を行う機械と,そのような機械によって処理される言語の関係について学ぶ.ここで学ぶ数学的概念はプログラミング言語の設計やコンパイラの構成を行う際の理論的基盤となる.

(科目情報)
教育プログラム 第2学年 ◎科目 
授業の進め方・方法:
原則として毎回,授業内容の理解を問う小テストを実施するので,授業を良く聞いて理解に努めること.

(参考図書)
[1] Sipser, M., Introduction to the Theory of Computation, PWS Pub. Co.
[2] シプサ,M., 計算理論の基礎,共立出版.
[3] ホップクロフト, J. 他,オートマトン 言語理論 計算論 I [第2版],サイエンス社.
[4] ホップクロフト, J. 他,オートマトン 言語理論 計算論 II [第2版],サイエンス社.
[5] 川添愛,白と黒のとびら,東京大学出版会.
[6] Stuart, T., アンダースタンディング コンピュテーション,オライリー・ジャパン.

(事前学習)
参考図書 [1, 2] の該当箇所を読んでおくことが望ましい.
注意点:
(履修上の注意)
配布プリントを整理するためのクリアファイル(A4サイズ)を用意すること.

(自学上の注意)
参考図書の必要箇所を参照して予習・復習を行うこと.授業内容は [1] に基づく.[2] は [1] の邦訳.[3][4] はこの分野の標準的な教科書の一つ.[5] は形式言語理論を学べるファンタジー小説.[6] はプログラミング (Ruby) を通して実践的に形式言語理論と計算理論を学べる本.

評価

(総合評価)
総合評価 = 定期試験 × 0.7 + 課題 × 0.3

(再試験について)
前期末試験終了後の適切な時期に実施する.受験資格者については試験解説時にアナウンスする.

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 イントロダクション 予備知識を確認する.(無向グラフ / 木 / 有向グラフ / アルファベット / 文字列)
2週 有限オートマトンと正規言語 有限オートマトンと正規言語について理解する.(有限オートマトン / 正規言語)
3週 正規演算 正規演算について理解する.(有限オートマトンの設計 / 正規演算)
4週 非決定性有限オートマトン 非決定性有限オートマトンについて理解する.(非決定性有限オートマトン / 有限オートマトンの等価性)
5週 正規表現 正規表現について理解する.(正規表現 / 正規言語と正規表現)
6週 非正規言語 非正規言語について理解する.(非正規言語 / 反復補題 / 抽斗論法)
7週 プッシュダウンオートマトン プッシュダウンオートマトンについて理解する.(プッシュダウンオートマトン / 文脈自由文法)
8週 復習と応用演習
2ndQ
9週 前期中間試験
10週 前期中間試験の解答と解説
11週 文脈自由言語 文脈自由言語について理解する.(文脈自由言語 / Chomsky標準形 / 文脈自由言語とプッシュダウンオートマトン / 非文脈自由言語 / 文脈自由言語の反復補題)
12週 Turing機械 Turing機械について理解する.(Turing機械 / Turing認識可能 / Turing決定可能)
13週 決定可能言語 決定可能性について理解する.(決定可能言語 / DFAの受理問題 / DFAの空性問題 / 文脈自由文法の生成問題 / 文脈自由言語の決定可能性 / Turing機械の受理問題 / 停止問題)
14週 Turing認識可能性 Turing認識可能性について理解する.(濃度 / 可算集合 / 非可算集合 / Turing認識不能言語)
15週 前期期末試験
16週 前期期末試験の解答と解説

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野システムプログラム形式言語の概念について説明できる。4前2,前3,前4,前5,前6,前7,前8,前11,前12,前13,前14,前15,前16
オートマトンの概念について説明できる。4前2,前3,前4,前5,前6,前7,前8,前11,前12
形式言語が制限の多さにしたがって分類されることを説明できる。4前2,前3,前4,前5,前6,前7,前8,前11,前12,前13,前14,前15,前16
正規表現と有限オートマトンの関係を説明できる。4前2,前3,前4,前5,前8

評価割合

試験小テスト合計
総合評価割合7030100
専門的能力7030100