Computer Science A

Numbering Code G-SCI11 90176 LJ55 Year/Term 2022 ・ First semester
Number of Credits 2 Course Type
Target Year Master's students Target Student
Language Japanese Day/Period
Instructor name NISHIMURA SUSUMU (Graduate School of Science Associate Professor)
Outline and Purpose of the Course コンピュータ・プログラミング言語の意味論、すなわちプログラムの振舞いを形式的に記述する方法について講述する。プログラミング言語意味論への深い理解は、プログラムをその正当性を論証可能な形で構成するための基盤的知識となるものである。
 本講義では代表的な意味論である、操作的意味論、表示的意味論、公理的意味論について解説する。また、これらを用いて簡単なプログラミング言語の性質を論証する数学的手法についても述べる。
Course Goals プログラムの振舞いを形式的記述によって定義することによってプログラム言語の意味を曖昧性なく厳密に定義することができることを理解する。また、それぞれの意味論に応じた手法を用いてプログラミング言語の性質を論証するための代表的方法を習得する。
Schedule and Contents 授業回数はフィードバックを含め全15回とする。
プログラミング言語意味論に関する以下の話題について、それぞれ3~4週の授業を行う予定である。それぞれの授業回数は、受講者の理解の状況等に応じて講義担当者が調整する。

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