計算とは何かという問いにこたえるのは難しい. 任意の x について,x とは何か,という形式の問いに答えることは難しい. なので,一旦,計算とは,計算機がやること.あるいは計算機がやっていること,くらいに考えておく. では,計算機が計算をするために必要なものは何か. パッと思いつく限りでは,以下の三つくらいだろうか.

  1. 計算を実行することができる機械(M)
  2. 機械(M)が理解可能な言語(L)
  3. 言語(L) で書かれ,機械(M) が実行可能な有意味なプログラム(P)

この辺りの説明をするときにいつも引っ掛かりを感じる. 実行とか,理解とか,わかるようでわからない言葉を使わざるを得ないことが,その引っ掛かりの原因だ. 計算の実行っていったいなんなのだろう. 機械が言語を理解するって,いったいどういうことなのだろう. 僕はこれらの問いのそれぞれについて,一定の答えらしきもの,答えと言って差し支えない精度の解答を用意している. 用意してはいるけれど,それをどんな風に提示するのがいいのか,わからない. 僕はこの辺りについてずいぶん雑多に独習してしまったし, 雑多で,かつ,独習であるがゆえに,その過程で身についた周辺的な,そして周辺的である限りにおいて重要な知識も,伝えられるものなら伝えたい. うまく伝えられるビジョンが全く浮かばないのが,もどかしい. 少しずつ言葉にしていけば,いずれ何かの足掛かりにでもなるだろうかと思って,今,こんな場所に,ひっそりと,こんなものを書いている.