このウインドウを閉じる

Much ado about nothing.

 

 「徂徠集」 を読んでいたら (「『七経孟子考文』 序」)、以下の文がありました。(参考)

    宋代以後、人々が新説を好むようになって、昔の注疏は書庫に積まれたまま、
    読める者さえまれになった。人人の好みに迎合し、流れのままに従って水源を
    忘れたのである。まして人々は聖人ではないのだから、すべてが正しいとは
    限らないのに、一つの学派だけに執着してほかの百を捨てたとは、いかにも
    考えの足らぬことではないか。

 この文を読んで、私が仕事している データ 設計の領域を思いめぐらしたら、システム・エンジニア たちが、データ 設計法について、同じような現象に陥っていると感じました。「新説」 といっても、学問を修めた 「正則」 ではなくて、画法 (diagramming) の 「我流」 ばかりが蔓延しています。

 データ 設計法では、1970年代に、コッド 関係 モデル という 「規範」 が出ました。「規範」 という意味は、データ を構成する アルゴリズム を数学の正攻法に従って示した、という意味です。そして、コッド 関係 モデル は、「完全性」 が証明されています。したがって、かれ以後の世代にとって──私の世代が、まさに、その世代ですが──、関係 モデル を実地に適用してみて、適用の工夫を考えることが課題でした。

 ゲーデル が 「不完全性定理」 を証明して、「計算可能性」 が争点になって、チューリング が概念的な計算機を示して──チューリング・マシーン は、現代の コンピュータ と云うよりも、「アルゴリズム」 と云ったほうが正確ですが──、フォン・ノイマン が プログラム 内蔵の コンピュータ を作りました。プログラム は、アルゴリズム です。データ は、当初、プログラム のなかに収められていたのですが、データ 量が増えるにつれて、データ の定義のみを プログラム のなかに記述して、データ そのものは外部の ファイル に収められるようになりました。そして、データ に対して、(プログラム の アルゴリズム に対応する) アルゴリズム を示したのが コッド 関係 モデル でした。コッド 関係 モデル 以後、データ を構成する アルゴリズム を提示した モデル は出ていない。

 したがって、データベース・パラダイム で仕事している システム・エンジニア の職責は、コッド 関係 モデル を実地に使ってみて、理論的な拡張を考えること──当然ながら、学問上、正統な・正当な拡張であるべきですが──、あるいは、適用上の工夫をすることでした。私は practitioner なので、適用上の工夫をすることを使命としてきました。適用上の工夫のなかで、私が検討してきた点が、「関係の対称性・非対称性」 「null」 の扱いでした。

 しかしながら、データ 設計を仕事にしているにもかかわらず、コッド 関係 モデル という 「水源」 を直に学習しないで、「我流」 の記法を──すなわち、データ を構成する アルゴリズム を示さないで、単なる画法を──あたかも、最新の実用的な データ 設計法であるごとく セールス している連中が多い。そして、いっぽうで、ユーザ は、そういう画法を 「ききめ がない」 と感じていて、画法と 「モデル」 がいっしょくたにされてしまって、「モデル」 が、軽く観られてしまったようです。「群盲象を撫でる」 という言いかたがありますが──この言いかたは politically incorrect になるかもしれないので、使いたくなかったのですが、ほかの言いかたが思い浮かばないので、やむを得ず使いますが──、「モデル」 を語っている連中が、まさに、そういう状態にあると私は思っています。

 アルゴリズム というのは、プログラム のみに対して使われる用語ではなくて、データ に対しても使うべき用語です。なぜなら、データ を構成するというのは、アルゴリズム そのものだから。そして、アルゴリズム でなければ、構成の 「無矛盾性・完全性」 を問えないでしょう。

 


(参考) 「荻生徂徠」、尾藤正英 責任編集、中公 バックス 日本の名著、中央公論社、
    206 ページ。引用した訳文は、前野直彬 氏の訳文である。

 
 (2008年 2月16日)

 

  このウインドウを閉じる