今年最後の講義( 2002/12/18 )は、この教室(1326)で特別講義があるので、教室変更(2)になります。
当日の教室に関しては、次週以降アナウンスしますので、注意していてください。
なお、この日の補習は中止の予定です。
来週(2002/12/04)、再来週(2002/12/11)の補習も中止です(会議が重なってしまった..)。したがって、今年の補習は今週が最後になると思います。
なお、2年生の方で、電池交換を希望するなら、今日がチャンスです。
前期に小林先生にNote-PCを交換してもらった学生は、連絡下さい。
故障したNote-PCの保証書が必要なので...。
計算機を見る一つの観点として、「万能シミュレーションマシン」というものがあります。
つまり、「任意の出来事を模倣する機能を持つ機械」ということです。
しかし、その一方、計算機は、文字通り「計算を行う機械」です。
どうして、「計算」が、「模倣機能」になるのでしょうか?
実は、「コーディング」にそのマジックが隠されているのです。
コーディングを日本語に直訳すると、「符号化すること」となります。符号というのは、要するに記号列(3)のことであり、例えば「ここに事件の犯人がいる、これを仮にXとしよう..」などという時に、「事件の犯人→X」として、以下、「事件の犯人」の代わりに記号の「X」を利用しようということに他なりません。
「事件の犯人」などのような、「意味を持つ言葉」を、「X」のような(それ自身は無意味だが、単純な.. )記号で表現することを「符号化」と呼んでいるわけです。
この符号化によって、記述が単純化されるというメリットがあります。
例えば、「ルパンは、アリバイがない」、「不二子にはアリバイがある」、「アリバイがないのは事件の犯人である」なども、同様に「ルパン→L」、「不二子→F」「アリバイがない人物→A」と符号化を行うと、実は、これらの明言は、L=A, A=Xと単純化されます。
このように「現実の物事(事件、犯人など.. )」を、「記号(列) (X, L, A.. )」に対応させることを「コーディング」と呼んでいるわけです。
しかし、符号化のメリットはそれだけではありません、これによって実は、「記号操作」が行えるようになります。
実際、L=A, A=Xの二つの式(4)から、直ちに、L=Xすなわち、「犯人はルパンだ!!」という結論を得ることができます。
ここで、重要なことは、「L=A, A=XならばL=X」という性質(書き換え規則)が、そこに含まれている記号( L, A, X )の表している対象(ルパン、アリバイのない人物、犯人)と、余り関係なく(5)成立することです。
そして、このような形で、「与えられた記号列を別の記号列に書き換える」ことを、「記号操作」と呼んでいるわけです。
ここで重要な点は、「アリバイの無い人間が犯人だ」というのは、推理小説を読んでいるような人間にしか分かりませんが、一旦、「A=X」という式にしてしまえば、(「アリバイ」のような)特殊な知識の無い人間でも、「L=X」と判断(操作)できるということです(「犯人」という言葉の意味が分からなくても!! )。
(推理) [現実の世界] ルパンはアリバイがない, アリバイがないのは犯人 → ルパンが犯人 ----- ↓ψ ------------------ ↓ψ ---------------- ↑invψ ---- (操作) [記号の世界] L=A, A=X → L=X 『凡例』 ψ は[現実の世界]から[記号の世界]への写像 invψ はψ の逆写像
つまり、「現実の世界」の対象を、全て、「記号の世界」にマップ(写像ψで写像)し、その世界で操作(記号操作)を行い、現実の世界に逆マップ(写像ψの逆写像invψで写像)することによって、「現実の世界の操作を記号の世界の操作で表現」しているわけです。
ここで、現実の世界の対象を記号の世界の記号に置き換える写像ψがコーディングを行なっている(6)と言えます。
さすがに、全く無関係とは言えない。何故なら「=」という記号が表している意味(等しい)が成立するようなものでなければならない。
例えば、「L→ルビー, A→雨」などとすると、「L=A」は「ルビーは雨」といった、「意味のない」表現になってしまう。
しかし、「事件の犯人」の例では、X, A, Lなどは、それぞれ「特定の人物」を表現しているため「=」で結ぶことには、常に意味がある。
ここで注意して置きたいことは、任意のコーディングがこのように「都合良く」ゆくわけではないということです。
今回の場合、この性質が成り立つのは、「=(等号)」に関して、「可換性( a = b→ψ(a)=ψ(b) )が成立するようにコーディングした」ということです。
いってみれは、ψは、「=」に関する、「同型写像」になっているということです。
今、更に、次のような対応関係を考えてみましょう。
記号の意味 | 数値 | 式 |
---|---|---|
a=bが成立する | 1 | φ(a=b) := 1 |
a=bが成立しない | 0 | φ(a=b) := 0 |
PとQが共に成立する | φ(P)×φ(Q) | φ(P,Q) :=φ(P) ×φ(Q) |
すると、「ルパンはアリバイがない」は、「L=A」となり、これは成立するので、「1」に、「不二子はアリバイがない」は、「F=A」となり、これは成立しないので「0」になります。また、「アリバイのないのが犯人」は、「A=X」であり、これも成立するので「1」となります。
更に、「A=Bが成立するのは、A=CとB=Cの双方が成立すること」とすれば、「φ(A=B) :=φ(A=C) ×φ(B=C)」となります。
さて、このような状況で、「ルパンは犯人」を考えてみましょう。
記号の世界では「ルパンは犯人」は、「L=X」です。そこで、φ(L=X)を考えてみます。これは、「φ(L=A) ×φ(X=A)」と書き換えることができます。ところが、φ(L=A)とφ(X=A)は、共に「1」ですので、1 × 1 = 1となり、「φ(L=A) ×φ(X=A) = 1 =φ(L=X)」と計算できます。
つまり、φ(L=X)=1なので、「L=Xは成立」する、すなわち「ルパンが犯人である」が分かるわけです。
ついでだから、「不二子は犯人である」も確認してみましょう。
φ(F=X) =φ(F=A) ×φ(X=A) = 0 × 1 = 0
つまり、「不二子は犯人である」は成立しない(φ(F=X)=0 )ので、「不二子は犯人でない」わけです。
(推理) [現実の世界] ルパンはアリバイがない, アリバイがないのは犯人 → ルパンが犯人 ----- ↓ψ ------------------ ↓ψ ---------------- ↑invψ ---- (操作) [記号の世界] L=A, A=X → L=X ----- ↓φ ------------------ ↓φ ---------------- ↑invφ ---- (計算) [数値の世界] 1 × 1 → 1 『凡例』 ψ は[現実の世界]から[記号の世界]への写像 invψ はψ の逆写像 φ は[記号の世界]から[数値の世界]への写像 invφ はφ の逆写像
つまり、現実の世界を数値の世界にマップすることにより、「推理」が「計算」できるわけです。
実は、原理的に「解る」こと(7)は、全て「計算できる」ことが解っているので、計算( +その流れの制御+コーディング)で、「何でもできる」と言えるわけです。
これが、計算機を持って、「万能シミュレーション」と言わせることを可能にしている原理だったわけです。
かなり、いい加減な表現です。本来「解るとはどうゆうことか」ということを厳密に誰でも納得できる形で定義し、その定義の下に、このような表明をすべきです。
しかし、ここでは、日本語の普通の意味で考えても、それほど間違ってはいません。
lispを参照して、先週に引き続き、2章の演習問題( [演習問題2.x.y]とある問題)を全て(8)解いてみてください。
今週は提出なしです。