言語により表現される文にはその意味が付随する. 計算機を用いて意味を処理しようとすると,推論することそのものを数学的な対象として考察することが必要となる.そのための基本的な手法を学習する.そのような形式化の代表として,論理による方法を学ぶことにより,知識情報処理への形式的接近の基礎とする.具体的な講義項目は,命題論理,述語論理, 導出原理,論理プログラミング言語Prologなどである.
本講義を履修することによって次の能力を修得する。
1) シンボル操作として推論を体系化した命題論理や述語論理について説明できる。
2) 論理プログラミング言語であるprologを用いたプログラムを書ける。
命題論理,述語論理, 導出原理,論理プログラミング,Prolog
✔ 専門力 | 教養力 | コミュニケーション力 | 展開力(探究力又は設定力) | ✔ 展開力(実践力又は解決力) |
前半の8回において講義を行い、後半の7回において演習を行う
授業計画 | 課題 | |
---|---|---|
第1回 | 導入 | 論理学の背景について説明せよ |
第2回 | 命題論理1: 構文論,命題,結合子 | 構文論,命題,結合子について説明せよ |
第3回 | 命題論理2: 意味論,真理値,トートロジ | 意味論,真理値,トートロジについて説明せよ |
第4回 | 命題論理3: ブール代数,標準形 | ブール代数,標準形について説明せよ |
第5回 | 自然演繹による証明:矛盾,背理法,導出 | 矛盾,背理法,導出について説明せよ |
第6回 | 述語論理: 述語,量化,項,式 | 述語,量化,項,式について説明せよ |
第7回 | 導出原理 | 導出原理について説明せよ |
第8回 | 論理プログラミング言語Prolog | Prolog言語の構文および意味規則について説明せよ |
第9回 | プログラムの起動と基本操作 | Prologのプログラミング環境をセットアップし,サンプルプログラムを実行せよ |
第10回 | リストと再帰 | Prologでリストと再帰を扱うコードを作成せよ |
第11回 | グラフ探索 | Prologでグラフ探索のコードを作成せよ |
第12回 | オートマトン | Prologでオートマトンを実装するコードを作成せよ |
第13回 | 構文解析 | Prologで構文解析を実装するコードを作成せよ |
第14回 | 創作課題 | Prologで創作課題を実装するコードを作成せよ |
学修効果を上げるため,教科書や配布資料等の該当箇所を参照し,「毎授業」授業内容に関する予習と復習(課題含む)をそれぞれ概ね100分を目安に行うこと。
ハンドアウトを配布
情報科学における論理, 小野 寛晰,日本評論社, 1994
演習(40%),期末試験(60%)により評価する.
期末試験の実施が困難な場合はレポートにより代替する.
T2SCHOLARを通した課題の提出が可能であること。
Prologを実行するために、Prologをパソコンにインストールするかまたはネットワークへアクセスするためのソフトウエア設定が必要になります。セットアップの詳細は講義中に説明します。