論計舎では、鹿島『数理論理学』および鹿島『C言語による計算の理論』ないし高橋『計算論』を初学者の方への最初の一冊として推奨しており、チューター・メンター両講座の基本的なコース(link 1, link 2)のテキストとして指定しています。
この記事では、分野とカリキュラムの構成とそれにともなったテキストの設定を紹介します。
論計舎のコース
論計舎の対応分野は、大きく分けると以下に大別できると思われます。
ここでは対応分野を便宜的に「コース」と呼びます。
- 数理論理学(証明論より)
- 理論計算機科学(計算可能性を中心とする)
- 実務よりの計算機科学
- 基礎の数学(線形代数と微分積分学)
本記事では、 1-3を紹介します。なお、(4)はどちらかというと他のコースと一緒にオプショナルなりエクストラとしてなり受講していただくことを想定して設計しています。もちろん、(4)だけの受講も可能です。
数理論理学のテキスト
論計舎の数理論理学のカリキュラムは、
以下のようなテキストベースで進行します。
- 鹿島『数理論理学』
- 小野『情報科学における論理』
論計舎では、鹿島『数理論理学』を、数理論理学の基本的な定理を網羅しており、基本的な内容をおさえられるカタログ的な一冊として推奨・指定しています。
この本は一階述語論理から始まり、完全性定理、不完全性定理、カット除去を紹介し、さらには非古典論理(直観主義論理と中間論理)とそのモデルを扱います。
多くの数理論理学のテキストがある中、予備知識の偏りや要求が少ないテキストでもあり、かつその議論は平易かつ厳密です。
ただ計算論への言及がなく、全体を通して唯一、不完全性定理を扱う第6章だけは概略に止まります。
それゆえ、ゲーデルの不完全性定理への12講を開講したという経緯もあります。
小野『情報科学における論理』は、多くの話題を扱う一方で記述は簡素で証明も幾分わかりにくく、「初級の中級」くらいに論計舎では位置付けています。
自然演繹100題ノックや今後追加される予定の教材をこなせる程度の実力を持っている方が挑戦するのにちょうどいいテキストだと思われます。
理論計算機科学のテキスト
ここでいう理論計算機科学は、むしろ計算機科学前夜の数理論理学と分化する前の計算論の初歩の分野です。
計算論のカリキュラムは、 高橋『計算論』ないし鹿島『C言語による計算の理論』から始まります。
高橋『計算論』は、型なしラムダ計算に基づき計算可能性を中心に計算論を展開しています。
1991年と古い本ですが、日本語における定番の一冊でしょう。
証明のわかりやすさと簡潔さは、特筆すべきです。
また、鹿島『C言語による計算の理論』も推奨・指定の一冊です。
「C言語による」とありますが、正確にはC言語風のレジスタマシンと言えると思われます。
しかし、実際に動くプログラムに書き換えることに困難があるわけではなく、それゆえ実務をしながら基礎理論を知るための一冊として推奨しています。
数理論理学コースにおける小野『情報科学における論理』と同様な「初級の中級」に相当する、計算論のテキストを選定中です。
実務よりの計算機科学のテキスト
また実務寄りのコースとして、五十嵐『プログラミング言語の基礎概念』から Benjamin C.Pierce(著)、住井英二郎(監訳)、遠藤侑介他(訳)『型システム入門』(以下、TaPL)に至るものがあります。
過去TaPLを扱ったことはありますが、内容が充実して分厚いだけ講師・生徒さんともに負担が多かったので、予習的に五十嵐『プログラミング言語の基礎概念』を取り扱うことにしようと考えています。
このコースはまだ開発中ですが、お問い合わせいただけたら対応を検討させていただきますので、ぜひお問い合わせください(正式な開設までのお問い合わせについてはちょっとだけ値引きさせていただきます)。
論計舎のカリキュラム
チューター講座について
チューター講座は、Zoomを用いて輪読やセミナーと呼ばれる大学数学科でよく行われるような対話的な形式をオンライン上で提供する講座です。
この講座は、生徒さんに発表していただき講師がそれにコメントや質問をすることで理解を深めるということを前提に設計されています。
しかしながら、生徒さんにいきなり発表してくださいと言って発表できるものではありません。したがって、最初は講師が「お手本」として発表の例を見せながら、生徒さんによって交互だったりまとめて数ヶ月の間は講師が発表担当となってそのあと、生徒さんがメインに発表をするという形式を採用しています。
鹿島『数理論理学』を例にとりましょう。
§2.1の「項と論理式」をまず講師が取り扱います。たとえば、そのあと同じ範囲を次回に生徒さんに講師の発表を参考にしながら発表していただきます。
再び§2.2「導出図」を講師が発表し、繰り返し生徒さんが§2.2を扱うといった次第です。
メンター講座について
メンター講座は、質問への応答およびノート添削・学習指導のサービスです。
こちらはまだ新設のサービスですので、カリキュラムが確定している訳ではありません。
それでも想定していたものと実際にやってみた感覚をお伝えします。
最も多いのは、独習ないし自主ゼミに対してまさしくメンター的にアドバイスを行うことです。
ここではゼミの行い方・マネジメントの助言から、内容的な部分、さらにこれは学習指導込みのサービスに限られますが、たとえば自主ゼミで話題にあがったらしい発展的な内容へのサーベイの作成などが含まれます。
さらに検討中のコース
計算論と数理論理学を並行して進めるのに適切なテキストとして、田中『計算理論と数理論理学』を使用したコースを検討中です。
これについてはしばらくお待ちください。
まとめ
以下の三分野ないし三コースが以下のような構成になっているとお考えください。
水準 | 数理論理学 | 計算論 | 実務より |
---|---|---|---|
初級 | 鹿島『数理論理学』 | 鹿島『C言語による計算の理論』ないし高橋『計算論』 | 五十嵐『プログラミング言語の基礎概念』 |
中級 | 小野『情報科学における論理』 | 考え中 | TaPL |
コメント