コンテンツに飛ぶ | ナビゲーションに飛ぶ

  • 日本語
  • English
 
現在位置: ホーム ja シラバス(2020年度) 理学研究科 数学・数理解析専攻 計算機科学A

計算機科学A

JA | EN

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

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