情報科学部Faculty of Computer and Information Sciences
PRI310KA-CS-208(情報学基礎 / Principles of informatics 300)情報基礎学BFoundations of Computer Science B
雪田 修一Yukita SYUICHI
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 情報科学部Faculty of Computer and Information Sciences |
添付ファイル名Attached documents | |
年度Year | 2022 |
授業コードClass code | J0522 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 春学期授業/Spring |
曜日・時限Day/Period | 月3/Mon.3 |
科目種別Class Type | |
キャンパスCampus | 小金井 / Koganei |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | ○ |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) |
(1) 受講希望者 (受講検討中の者も含む) は、情報科学部学部Googleフォーム(https://forms.gle/ECvwxVe2NcxmrbTK9)で初回講義前までに希望申請をしてください。(※以下URLのご案内があるGoogleフォームとは異なるのでご注意ください。) (2) 以下のURLと教育開発支援機構事務局の案内に従って、履修希望の申請を行ってください。 https://www.hoseikyoiku.jp/risyu/index.html (3) 履修取消については、ご自身の所属学部の履修取消期間内に必ず同時に履修削除を行ってください。 |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
選択・必修Optional/Compulsory | |
カテゴリー(2022年度以降入学者)Category (2022~) | |
カテゴリー(2021年度以前入学者)Category (~2021) | |
カテゴリーCategory |
専門教育科目 専門科目 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
We study fundamental theory of computation with concrete examples. The series of lectures cover natural deduction, lambda calculus with lambda calculator, SAT solvers with mini-sat, and logic programming with Prolog.
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
計算と論理の基礎をプログラミングを通じて学ぶ。また、近年の発展が著しいトピックを具体的な言語や処理系で体験する。
到達目標Goal
命題論理、述語論理、計算可能性などの基本知識を習得し、SATソルバーなどの近年の発展分野の動向を知る。Lisp、Minisat、Prolog などの基本的なプログラミングができるようになる。
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
ディプロマポリシーのうち「DP1」と「DP2」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
体系的な知識を伝えると同時に適宜プログラミングにより抽象概念を実装する演習を行う。授業で課した課題(小テストやレポート)等を取り上げ、授業内で全体に対してフィードバックを行う。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
あり / Yes
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
第1回[対面/face to face]:この科目の目的と目標
講義の目指すもの、想定される受講者の興味・関心を明確にし、科目選択のための情報を提供する。
第2回[対面/face to face]:計算可能性
計算の概念、計算不可能な問題の存在を実例を通して理解する。
第3回[対面/face to face]:ラムダ計算
計算の重要なモデルであるラムダ計算の基本を知る。
第4回[対面/face to face]:Lisp
ラムダ計算をプログラミング言語として実現しているLispに触れる。
第5回[対面/face to face]:Lisp演習
Lispが得意とする典型的な問題を取り上げ、演習を行う。
第6回[対面/face to face]:命題論理とSAT
命題論理の基本を学び、SAT(Satisfiability Problem、充足可能性問題)の困難性について理解する。
第7回[対面/face to face]:SATソルバー
近年の発展著しいSATソルバーの概要を理解する。
第8回[対面/face to face]:SATソルバー演習
SATソルバーで具体的な問題を扱う演習を行う。
第9回[対面/face to face]:述語論理の意味論
述語論理の基礎を理解し、意味論の代表的な方法とその意義を学ぶ。
第10回[対面/face to face]:証明論
証明とは何か、代表的な理論を理解する。
第11回[対面/face to face]:不完全性定理
ゲーデルの不完全性定理について大掴みな理解をする。
第12回[対面/face to face]:Prolog
1階述語論理を扱うプログラミング言語Prologの基本を理解する。
第13回[対面/face to face]:Prolog演習
Prologが得意とする問題を演習する。
第14回[対面/face to face]:まとめ
期末試験で取り上げる題材を用いて,全トピックの復習を行う.
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
オンライン教材の毎回の予習。
本授業の準備・復習等の授業時間外学習は、各週につき4時間を標準とします。
テキスト(教科書)Textbooks
オンライン教材を使用する。URLは初回に開示する。
参考書References
各回のキーワードで検索にかかるURLはいずれも重要な最新の情報源である。
成績評価の方法と基準Grading criteria
テーマごとの課題50%,期末試験50%
学生の意見等からの気づきChanges following student comments
レポート作成の手引きを提示する必要がある。
学生が準備すべき機器他Equipment student needs to prepare
貸与パソコン