コンピュータプログラムは入力をもらって出力を出すという意味では数学の関数とみなすことができるが、単純な集合間の関数とみなすと矛盾することになる。プログラムは全関数ではなく半関数である。プログラムの動作を理解するためには位相の一種である完全半順序集合を用いいる必要がある。この講義ではプログラムの意味の基礎となっている領域理論を中心に、λ計算、完全半順序、カテゴリー理論などについて解説する。