計算機科学

科目ナンバリング U-SCI00 33110 LJ55 開講年度・開講期 2021 ・ 前期
単位数 2 単位 授業形態 講義
配当学年 3回生以上 対象学生
使用言語 日本語 曜時限 金4
教員 西村 進 (理学研究科 准教授)
授業の概要・目的 コンピュータ・プログラミング言語の意味論、すなわちプログラムの振舞いを形式的に記述する方法について講述する。プログラミング言語意味論への深い理解は、プログラムをその正当性を論証可能な形で構成するための基盤的知識となるものである。
 本講義では代表的な意味論である、操作的意味論、表示的意味論、公理的意味論について解説する。また、これらを用いて簡単なプログラミング言語の性質を論証する数学的手法についても述べる。
到達目標 プログラムの振舞いを形式的記述によって定義することによってプログラム言語の意味を曖昧性なく厳密に定義することができることを理解する。また、それぞれの意味論に応じた手法を用いてプログラミング言語の性質を論証するための代表的方法を習得する。
授業計画と内容 授業回数はフィードバックを含め全15回とする。
プログラミング言語意味論に関する以下の話題について、それぞれ3~4週の授業を行う予定である。それぞれの授業回数は、受講者の理解の状況等に応じて講義担当者が調整する。

1.プログラム意味論入門 - 操作的意味論
2.帰納法と帰納的定義
(構造帰納法,整礎帰納法,導出に関する帰納法,最小不動点)
3.表示的意味論 
(完備半順序集合,連続関数,最小不動点定理)
4.公理的意味論 
(Hoare論理,最弱事前条件,述語変換子意味論)
履修要件 特になし
授業外学習(予習・復習)等 講義資料を事前配布する場合がある。その場合は内容について予習しておくこと。
授業で提示する演習問題の内容を後で復習することにより理解度の確認と知識の定着を行うこと。小演習の模範解答はPandAで提示するので学習の一助としてほしい。
教科書 必要に応じて講義資料を配布する。
参考書等 The Formal Semantics of Programming Languages: An Introduction, Glynn Winskel, (MIT Press), ISBN:0262231697
PAGE TOP