<2012年2月1日 改訂>
R3は変動,変化する実体を記述することをその目的の一つであるとしてきた.変動する実体とは何か.実体とよぶものは実世界の要素である.しかし,前稿で,実世界自体はどんな能知に対してもその所知の所与面として不変であるとした.能知は参照基準点(point of reference)であるとみなせ,その因子として時間を考えることが出来る,とも述べた.とすると,「変動する実体」という言い回しは一見,自己矛盾をはらむことになる.より正確には,実体を所知の要素とし,その所知の所識面が変動する,つまり能知(参照基準点)のパラメータを持つ,ということである.参照基準点が時間(あるいは他の要因)が変わることによって変動するために,実体の所識面(つまり実体の認識結果)が変動する(ように見える)ということである.実体の所与面は不変であり,その覚知が実体のイデアたるゆえんとなる.しかしこの考え方も正確ではない.
前稿で,能知,あるいは参照基準点には,「だれが,いつ,どこで,なぜ,どのように」の要因を持つと述べた.「だれが」は,認識者,『いつ』は時間,「どこで」は認識者のいる場所,「なぜ」は,認識者の動機と関心,『どのように』は観察手段などである.「これに「何を」を追加すれば,5W4Hになるが,『何を』は所知であるから,5W4Hはノエシスの要因をいみじくも表している.
参照基準点のどれかが変わればそれによって対象とする所知の所識が変わる.つまり認識結果が変わる.それをもって『実体は変動する』といっているのである.しかし,4W1Hについてすべて議論するのは複雑なので,以下では,主として時変動を考えることにする.
普通の大人ならば,夕日は沈んで一旦見えなくなるが翌日昇る朝日はそれと同じ太陽だ,と考える,幼児も,母親がいないいないばーをして一旦見えなくなっても同じ母親を見続けていると認識する(学習する?).そのとき,実世界の実体(所与)としての太陽と母親は不変であり,時間と共に変化するのは認識者(能知)である自分のほうで,その自分からみると太陽あるいは母親が変化するように見える(所識)のだ,と考えていることになる.つまり誰しもが(ほとんど無意識のうちに)思考のコペルニクス的転回を行っている.しかし,はたして所与は真に不変なのだろうか.このように考えるのは,所与(イデア)のそれこそ物象化である.イデア(あるいは空)は語れないものである.それが「不変」,あるいは反対に「可変」だというのは,語っていることになる.実は,所与である実世界における不変性,唯一性と呼んでいるものは,認識行為が定めるものであってそれ以上のものではない.すなわち,朝日と夕日が同じ太陽だと考えるか別のものと考えるのかは能知によるものであって,絶対的なものではない(前稿のノエマ射 ξ(r) は認識者 r に依存する).しかし,時間 t の自分を st として, st と st' どちらも同一の能知の要素とする,つまり 時間の異なる自分を共同主観性を持つものとすれば(自己分裂しない限りそうであろう),この二人?の認識は一致して,太陽が同一とするかどうかの見解は同じになる.同一と考えるとき,認識のコペルニクス的転回をおこしていて,所与としての太陽が不変であると認識することになる.一般に,複数の要素からなる能知による認識では,個人,時間,空間,まして,動機や観察手段などを超えて(つまり,共同主観性を持つことにより),実世界での実体の不変性について一致する.実際,対象実世界の不変性を求める科学は,自ら定めた検証作業により,共同主観を拡大し,堅固にする営為であるといえる.なぜなら,不変性の認識こそすべての推論の基礎となるからである.
こうして,共同主観によって不変であると認識される実世界の一要素が『実体』とよぶものである.R3ではそれをentityと呼び,その識別子としてentity_idまたはrun_idを与える.
さて,では実体の変動とはなにか.「実体」そのもの,という不変なものが想定されて,そのうえにたってはじめて議論することが出来る.
まず,すでの認識されている実体の変化は,その状態の変化であると見なせる.状態は実体の属性であるから,属性射が変動すると考えるのである.
次に,実体が「生じる,誕生する」とはどういうことか.逆に「消える,消滅する」とは?実体は所与側での不変性が認識されているという前提があるから,その所識側に現れるか,あるいは,消えるか,ということに相当すると考える.つまり,認識されるようになったか,認識されなくなったか,ということである.
圏論ではこのような射の変更を作用actionと呼ぶ.その詳細な議論については後述する.
以下,McTaggartの時間の非実在性について.
J. M. E. McTaggartはおよそ100年前に時間の非実在性について論じた(The Unreality of Time).以降,現在でもそれについてさまざまな議論が続いている.McTaggartは「ある時間 T に起きる事象は(時間の推移と共に)未来であり,現在であり,かつ過去である.同一物に相反する述語が付けられるのは矛盾する.したがって時間は非実在である」というような論法を立てている.上述の立場に立ってこの論法を見直してみよう.時間 T というのは,たとえば,「大地震が起きたとき」であり,それは(日本時間で)2011.3.11 14:46のように識別子が付けられ,それ自体は不変である.つまり,認識対象となる「時間」は,能知によらず共同主観性によって不変であるとされる.それに対し,(認識対象としての)「現在」をNowと表したとき,Now は能知の因子である時間 t(これは先の時間とは違うことに注意)に依存するから,Now(t)と表すことにする.T における事象が「未来である」とは T > Now(t) ,「現在である」とは T = Now(t) ,「過去である」とは T < Now(t) であるから,これらは決して相反する述語(形容)ではない.したがってなんら矛盾を起こさないではないか,というのが常識的な見方であろう.
McTaggartはこの論法について,時間の説明に時間を使っているから悪循環論法である,といって拒否する.しかし,ここで,T は認識対象としての「時間」であり,t は能知圏で対象とする「時間」であって,両者は別物であるため,この論駁は成り立たない.しかし,では能知の t という「時間」とは何なのか,これはカントが先験的(a priori)カテゴリとした認識に先立つ概念装置であり,実際,われわれの立場から見ても認識対象とはされない.つまり所知の所与側の世界に入らない.その意味で,時間 t は確かに実在とは認められないという意味で「非実在」である.McTaggart自身,論文のなかでそのような示唆を与えている.
McTaggartは時間の特性についても一つ重要な論点をあげている.未来(の出来事)はいつかは現在になり,過去になるが,過去はずっと過去であって,その意味で未来とも現在とも異なる.その区別を与えるためには順序の向きが与えられなければならない.時間の比較として大小比較(”>")だけでは三者の順序の向き(昇順か降順か)が与えらていない.したがってこの常識的論法では時間の特性を示すものとして不十分だ,というのである.これは認知者のもつ記憶機能に関係する.認知者を情報システムとすれば,記録機能である.認識された事象(将来ならば,その予測または計画)をその事象の起きた順にリストにする(記録する)ことにより,この時間の向きの特性が与えられる.これがMcTaggartのいうC系列である.ちなみに,「未来,現在,過去」の区分系列をA系列,昇順か降順かが与えられない相互比較だけの系列をB系列とよんでいて,A系列とBないしC系列とが組み合わされてはじめて時間の特性が表現されるが,A系列が矛盾を含むので時間は非実在であるというのが(拙見による)McTaggart論法である.しかし,本当に非実在とするべきは能知の時間であって,観測対象としての事象にともなう時間ではないことは上述の通り.
同じ能知の因子である「空間(場所)」についても同様の議論が出来る.McTaggart流に言えば,「ある事象が起きる場所 P が(能知が移動することによって)前にあり,あるいはここにあり,あるいは後ろにある,というように,同一物に相反する述語が付けられるから,場所は非実在である」となってしまうが,時間についてと同様の議論になる.ここで真に非実在とするべきは,観測対象としての場所ではなく,能知の場所(認識者がいる場所)である.これもカントがアプリオリなカテゴリとしたものである.
認識対象としての事象に伴う時間や場所が非実在であるとしたら,物理学はもちろん,すべての科学が成り立たないことになる.McTaggartもそこまで言うつもりはなかっただろう.
R3では,事象の時間(一般には巾があるduration)と場所をその属性としてしているが,これはもちろん認識対象としての時間と場所である.またその事象を事実とすれば,事実グラフの属性値としてデータベースに記録される.時間に関してみれば,それはC系列を表すことになる.
多くの情報システムでは,事実が変化するとそれをそれまでの記録に上書きして記録してしまう.たとえばメーリングリスト.部署のメーリングリストを作って使用する組織が多いと思うが,人事異動などでそのメンバーが変わるとリストの記録をそれに合わせて変えてしまい,それまでのものは残さない.ウェブのホームページの変更もそういうものが圧倒的に多いのではないだろうか(実は,このブログも同じ).これは,A系列のなかの現在のみで生きるいわば刹那主義である.こうして日々刻々,膨大な情報が「現在」とともに流れ去っていく.R3は現代情報システムのそういう刹那主義に警鐘をならすものである.
2012年1月30日月曜日
2012年1月18日水曜日
圏論による実世界のモデル化とOOP
<2012/01/23 大幅に改訂>
情報システムのモデル部は対象とする実世界の記述である.記述は認識の上に立つから,どのようにすれば実世界を正しく認識することが出来るのか,それがまず問われる.ならば,「認識行為」とはどのようなものであると考えるのか.その問いに対し,哲学の一分野として認識論があり,長い歴史と進化がある.では,OOPはどのような認識観に立つのだろうか.あるいは,どのような認識観で説明できるのだろうか.残念ながらそのような問いに答える論述を知らない.そこで,荒いながらも拙論を述べる.なお哲学全般については,主に,熊野純彦著:西洋哲学史(岩波新書2006年)と,廣松渉著:新哲学入門(岩波新書1988年)を参考にした.
情報システムのモデル部は対象とする実世界の記述である.記述は認識の上に立つから,どのようにすれば実世界を正しく認識することが出来るのか,それがまず問われる.ならば,「認識行為」とはどのようなものであると考えるのか.その問いに対し,哲学の一分野として認識論があり,長い歴史と進化がある.では,OOPはどのような認識観に立つのだろうか.あるいは,どのような認識観で説明できるのだろうか.残念ながらそのような問いに答える論述を知らない.そこで,荒いながらも拙論を述べる.なお哲学全般については,主に,熊野純彦著:西洋哲学史(岩波新書2006年)と,廣松渉著:新哲学入門(岩波新書1988年)を参考にした.
nullについて論じた前稿で,圏論を使用した.圏論では,「射」が主役である.射は,定義域domainと呼ぶ「対象」と値域codomainと呼ぶ「対象」の対で,定義域から値域へ向かう方向性を持つ.射の構成要素として指定されたこれらの「対象」は,それを単独で切り離して論じることは出来ない.単独で論じるようにみえるときにも実はその自己射(自分から自分への射)を見ることになる.
通常の素朴な集合論での集合は要素の集まりとして考えられ,その中を「のぞき込んで」要素間の関係を見ることによりその集合の特性を見る,あるいは規定する.それに対し,圏での「対象」はその中身の構成を見てその特性を論じるものではない.その特性を与えるには,外側からの観測,つまり射あるいは射の組み合わせによって行う.たとえば,ある対象 X の「要素」とは,終対象1を定義域とし,X を値域とする射であり,X の「部分」とは, X を値域とする単射monomorphismである.また,対象X の属性(property)はX を定義域とする射として与える.このように,圏論はいってみれば通常の素朴な集合論を裏返し(inside out)したものである.このことが圏論を取っつきにくいものにしているが,さらに基礎的な思考の視座を与え,実際,前掲書SFMは圏論により基礎から集合を論じている.
射は,「指差しpointing」または「眼差し」というもっとも基礎的な知的行為の抽象化であるともいえる.プログラミング技術での偉大な発明の一つであるポインタの抽象化(一般には複数ポインタのたば)でもある.あるいは「依存性」を示すものでもある.ここでいう「依存性」とは,定義域は値域があってはじめて意義を持つ,という意味での依存性である.この見方は,パースのトライアドtriadにおける第1者Firstness(値域)への第2者Secondness(定義域)の依存性になぞらえることが出来る.射は,この依存性を特定する第3者Thirdnessである.この見立てによれば,圏論はパースのトライアド概念をより洗練し,精緻化した体系であるとも言える.
前稿の圏 Set↑2↑Opの対象 X は, 認識後の段階のX1 から認識前段階のXU への射であるとした.廣松(前掲書)の用語を借用すると, X が「所知」,XU がその「所与」(最下層の純粋所与),X1 がその「所識」(最上層の所識)である.この射は,所識の要素にその「意味」を与える意味作用であるとも言える.
「認識行為」そのものを観察対象としたとき,認識者(廣松用語では「能知」)から「所知」への射であると見なせる.この場合の観察者(つまりメタの認識者)から見ると,この「能知」は「所知」のひとつにみなされ,圏 Set↑2↑Opの対象のひとつとされる.この構図は,観察者(認識者)が対象化され,他の所知と対等化されている.ここで,所知の「認識前」「認識後」段階でいう「認識」とは対象化された能知による「認識」ではなく,この構図をもって認識行為を観察するものの「認識」である.このように,認識行為そのものを所知の圏 Set↑2↑Opに組み込むことには無理がある.認識行為を明確にモデル化するためには,能知を対象とする圏( R とする)から所知を対象とする圏( K とする)への関手functorを対象とする圏 K↑R を考えなければならない.簡単に言えば,圏 K の対象である所知を能知でパラメータ化する,ということである.以降,所知は能知 r でパラメータ化され,X(r)のように表すことにする.所識から所与への射 ξ もパラメータ化され,ξ(r) で表す.このような r は一般には認識基点(point of reference)であり,「いつ,どこで,誰が,なぜ,どのように」認識しているのか,その基点を示す.
能知圏から所知圏への関手は,フッサールの用語を借りるならば「ノエシス」に相当すると考える.おなじく「ノエマ」は所知,つまり,所識から所与への射に相当すると考える.ノエマが能知 r に依存することはノエマがξ(r) と表されることで示される.
「認識行為」そのものを観察対象としたとき,認識者(廣松用語では「能知」)から「所知」への射であると見なせる.この場合の観察者(つまりメタの認識者)から見ると,この「能知」は「所知」のひとつにみなされ,圏 Set↑2↑Opの対象のひとつとされる.この構図は,観察者(認識者)が対象化され,他の所知と対等化されている.ここで,所知の「認識前」「認識後」段階でいう「認識」とは対象化された能知による「認識」ではなく,この構図をもって認識行為を観察するものの「認識」である.このように,認識行為そのものを所知の圏 Set↑2↑Opに組み込むことには無理がある.認識行為を明確にモデル化するためには,能知を対象とする圏( R とする)から所知を対象とする圏( K とする)への関手functorを対象とする圏 K↑R を考えなければならない.簡単に言えば,圏 K の対象である所知を能知でパラメータ化する,ということである.以降,所知は能知 r でパラメータ化され,
能知圏から所知圏への関手は,フッサールの用語を借りるならば「ノエシス」に相当すると考える.おなじく「ノエマ」は所知,つまり,所識から所与への射に相当すると考える.ノエマが能知 r に依存することはノエマがξ(r) と表されることで示される.
能知のおかれた外界(実世界)」は能知を取り巻く外壁に例えられる.そこへサーチライト(ノエシス)が当てられる.光が当たったスポット(所知)のなかに見られるもの(認識されたもの)が所識で,それに対応して,外壁の裏面に所与が想定される.所与は,ありのまま(もの自体)の世界の一部である.もしこれが見えるのであれば,それは認識されたものだから,定義からしてこれは見えない.能知は外壁に囲まれたなかにいて,見えるものはその外側のなにかに対応しているはずだという意識(想定)があってもそれを見ることは出来ない.プラトン流にいえば,洞窟のなかにいて外が見えず(所与),しかし,その外にあるものの影のみが見える(所識),という構図である.
この認識構図において重要な前提が組み込まれている.まず,能知に関係なく,所知の所与面として共通の唯一の外界(外壁の外側)が前提されること.次にそれが認識者の志向(ノエシス)によって部分的に切り出される,ということ.認識者が外界としてそれぞれ全く異なる宇宙を認識対象とすることを認めるならば,それぞれが全く別の独立した状況設定になり,考察対象が統一されないから,能知に関係なく外界は同一,そして唯一であるという前提が必要である.従って,所知X(r) は所識のみ r に依存し,X1(r)からXUへの射ξ(r) として表される.また,志向性によってその対象領域は限られ,外界の一部が切り出される.その切り出された外界が所与であり,認識結果が所識である.OOPのクラスについて論じるとき,この分析が不可欠であることは,nullについて論じた前稿が示唆している.また,外界で一つのもの(たとえばある個人)を示す表記はユニークでなければならない,といったプログラミングの鉄則の根拠もここから生じる.
あらためて,OOPのクラスを考える.クラスというのは単なるものの集まりでもなく,また似たもの同士を集めた素朴な類でもない.情報システムを構築する関係者(stakeholders)の合意という能知の上でなりたつ関心事(所知)についての記述を与えるものである.実際,まつもとゆきひろは,クラスは関心の対象であるとしている.関心事は所与(想定される実世界の部分)とそれへの対応付けが行われる所識の二重構造を持つ.記号化され,記録されるのは所識の部分のみであるが,その裏には唯一の外界(実世界)があって,それに対する何らかの対応によって裏打ちされる,という想定の下で,クラス記述が作られる.所知は圏対象であるから,他の圏対象への関連(つまり属性射)によってのみその特性が与えられる.これがクラスの属性(メソッド)である.
サブクラス(部分クラス)はその上位クラスの「部分」と見なせるだろうか.つまり,下位クラスから上位クラスへの部分射(単射)があるだろうか.前稿のクラスの継承で述べた下位クラスの定義によれば,下位クラスから上位クラスへの射は必ずしも部分射にならない.OOP論でしばしばサブクラスを部分集合のように述べられることがあるが,それは誤った思い込みである.この問題は実体の誕生(Create作用に対応)と消滅(Delete作用)のモデル化で表面化するが,作用actionについては後述.
属性射を p とし,定義域 D から 値域 C への射とする.射の値とは C の「要素」であり,D の要素 x の射 p による値は, px である.px が C の完全メンバーならばそれは C の「要素」と言えるが,部分メンバーならば null (不明)とされる.D から1への射を D とし,その1からC への射を c としたとき,px = cD となる c があれば,射 D は 定義域 D の要素に関係なく一定であるから,c は「一定constant」であり,これを定数値という.定数値はそれに対応する実世界の唯一の何かに対応する D の「要素」である.属性射の値としてこのような c が与えられなければ,さらにその属性を辿ることになるが,それはちょうどポインタを次々とたどるたらい回しのようなものである.それを止めるのが定数値である.既述のように,定数値の表記はリテラルとされる.それに対し,変数値は,これも既述のように,しばしば代理識別子で表記され,それがポインタの役割を演じる.
上述の認識構図から見た間主観性と情報システム開発について述べたい.認識者は個体として全く別物であるから,同じもの(つまり所知の所与面)を見てもその認識(つまり所知の所識面)は異なるはず(前述で述べたように所識は能知 r に依存する)で,にも拘わらず,認識に基づく記述を通して相互理解が出来るのはなぜか.これが間主観性の問題である.間主観性を持つためには,所知の所与面の共有(という想定)が認識行為の基盤として不可欠である.情報システムの構築と運用において,システムの関係者(stakeholder)がそのシステム(所知)の能知になるから,関係者どうしにおける相互理解の重要性がこの構図のなかでこうして指摘することが出来る.関係者間の構造については能知圏の射について論じることになるが,これは認識社会学とでも呼ぶべき分野の問題であろう.
以下,蛇足ながら哲学談義
「見える」は言うまでもなく「認識できる,される」の喩えであり,当然ながら,実際に見えるものや観察できるものだけが実世界の要素とされるものではない.
「宇宙の始まりがビッグバンならば,その前の宇宙はどうなっていたのか?」.素朴だが重要な問いである.ここで述べた立場からの答えは,「それが分かればその分かったところがビッグバンより先の宇宙である」.つまり,宇宙という所知の所識面が拡大されたと言うこと.「宇宙の外側は?」という問いも同様である.
認識(知ること)の本質について,すでに2500年もまえに,孔子は「知るを知ると為し,知らざるを知らざると為す.これ知るなり」と見抜いている.
所与となる実世界とは,カントがもの自体の世界とし,ヴィトゲンシュタインが「語れぬもの」といい,フッサールが括弧に入れるべきもの(超越)としたものである.彼らよりずっと前に,孔子が「知らざるもの」といい,プラトンが「イデア」と呼んだ見られる対象そのもの(前掲の熊野著「西洋哲学史ー古代から中世へ」 p.78以下参照)であり,それ自体は見えないとしたものである.
.
.
仏教で言う「空」もまた「所与」つまり認識以前の認識対象(ありのままの自然)のことである.認識以前のなにかであるから,それについて語ることは出来ず,従って,有とも無とも言えない.有識論では所識を分析し,5階層に分けて五蘊としている.上段は下段からの情報を受け,それを処理して下段にフィードバックする多段ループ構成を取ると考えられる.最下段の「色」は末端の感覚器により所与である「空」から情報を受け,フィードバック調整をしつつ,空を地と図に分けるもっとも基本的な作業(分節)を行う.「受」は分節された世界認識に対応する物理的なセンサー入力とその処理,「想」は図のモデル(概念)への対応付けとその学習,「行」は概念化された認識外界への働きかけとその学習,そして,最上段の「識」は全体の総合判断と制御と総合学習,ということになるだろうか.まるでロボットアーキテクチャを的確に示しているかのようだ.有識論はこのように分析したあげく,結局,空即是色,色即是空として,各段階の物象化(こだわり)を否定し,戒めている.
リアルな実世界を所与としたとき,それは,実は洋の東西を問わずずっと昔から,認識以前の純粋な理念(イデア,ないし,空)とされてきた.いわば外在(実世界)を内在化する(認識観のなかで位置づける)ことにより,世界をなんとか言語化して理解しようとしてきたのだ.
リアルな実世界を所与としたとき,それは,実は洋の東西を問わずずっと昔から,認識以前の純粋な理念(イデア,ないし,空)とされてきた.いわば外在(実世界)を内在化する(認識観のなかで位置づける)ことにより,世界をなんとか言語化して理解しようとしてきたのだ.
廣松の前掲書では「三項図式」を自論を展開するための仮想敵国として繰り返し批判している.しかし,この三項図式は認識過程を3段の階層に分けるというもので,パースのいうトライアドの三項図式とは似て非なるものである.しかも実際に非難しているのは,3段構成の各段の物象化である.また,所与ー所識の対をレア—ルーイデアールな構造成態(?)といっている(p.60)が,おそらく所与が所識より実世界(リアル)よりにあることを言いたいのであって,実際,最下層の純粋所与は「覚知されない」つまり,認識以前のものとされる.
ソシュールの<シニファン,シニフィエ>対も同様に,実は三項図式であって,両者をつなぐ第3者が明示されないのはそれ以上の考察の対象にされないからだろう.それに対しフレーゲの記号論では,第3者が明示され,しかもSinnとBedeutungの区別が提起されている.SinnとBedeutungを射とみなし,射である第3者をこのふたつの射の合成であると見なすと,それにまつわる様々な議論(たとえば,Wikipediaの記事)がかなりわかりやすくなる.その議論の一つにならい,Sinnをintension(内包),Bedeutungをdenotation(外延)と言い換えてみよう.プログラムの「意味」を論じる外延意味論(denotational semantics)では,intensionが(所識の表記としての)プログラムから標準ラムダ式への射,denotationが標準ラムダ式から連続束(という数学的空間)への射であるとし,その合成がプログラムの「意味」であるとする.そして,自然言語の意味論であるモンタギューの内包意味論(intensional semantics)は,(所識の表記としての)自然言語を標準ラムダ式に変換する射(intension)を「意味」としている.それぞれの命名者がこのような語法を意識したのかどうか分からないが,関連が全く無いわけではないだろう.
.
固有名詞問題(たとえば,Wikipediaの記事参照)も,圏論にのせて考えると理解しやすい.要するに固有名詞の名前は上述の定数射で,所知の1要素を指定する.
観察者(認識者,能知)が対象化され,他の所知と対等化される状況を示す例として,ベラスケスの名画Las Meninasがある,この絵を描くベラスケスの認識の結果の記述がこの絵であるから,王女など登場人物や背景は当然,描くベラスケスの認識結果を表すもので,絵の中のベラスケスによる認識結果ではない.では,描かれたベラスケスは一体なになのだろうか.自分自身を(外から)観察し認識することは出来ないから,この絵を描くベラスケスが想定した(つまり実際にはいま目にしていない)自分を強引に描き込んでいる.つまり,この絵全体が,実際にいま見ている状況の認識結果を描いているのではなく,ある絵を描いている自分を含む状況全体を想定してそれを描いている,ということになる.このように考えると,絵の中で裏側しか見えないキャンバスに描かれているのは,ポーズをとっている中央の王女か.絵の中の鏡に映る国王夫妻か,あるいはそのいずれでもないのか,様々な憶測が成り立つ.しかし,ベラスケスとそのキャンバス以外の登場人物や背景ではないことは確かである.なぜなら,この絵全体がこの絵を描くベラスケス自身の認識結果であり,したがって描かれているものすべてがベラスケス自身(真の能知)の所識であって,絵のなかのベラスケスの所識ではないからである.この認識構図を正確にモデル化するためには,上述のように,能知の圏から所知の圏への関手による圏を考えなければならない.
廣松(前掲書p.94)が「『能知者がそれ以上の能識者として』覚知する能知の側の二肢的二重性」というのは,自分を描くベラスケスが,描く自分をどう認識していたのか,その状況を示すものだろう.つまり,自分自身を観察の対象として所知の一つと見なし,その所識を能識と呼んだのであろう.
観察者(認識者,能知)が対象化され,他の所知と対等化される状況を示す例として,ベラスケスの名画Las Meninasがある,この絵を描くベラスケスの認識の結果の記述がこの絵であるから,王女など登場人物や背景は当然,描くベラスケスの認識結果を表すもので,絵の中のベラスケスによる認識結果ではない.では,描かれたベラスケスは一体なになのだろうか.自分自身を(外から)観察し認識することは出来ないから,この絵を描くベラスケスが想定した(つまり実際にはいま目にしていない)自分を強引に描き込んでいる.つまり,この絵全体が,実際にいま見ている状況の認識結果を描いているのではなく,ある絵を描いている自分を含む状況全体を想定してそれを描いている,ということになる.このように考えると,絵の中で裏側しか見えないキャンバスに描かれているのは,ポーズをとっている中央の王女か.絵の中の鏡に映る国王夫妻か,あるいはそのいずれでもないのか,様々な憶測が成り立つ.しかし,ベラスケスとそのキャンバス以外の登場人物や背景ではないことは確かである.なぜなら,この絵全体がこの絵を描くベラスケス自身の認識結果であり,したがって描かれているものすべてがベラスケス自身(真の能知)の所識であって,絵のなかのベラスケスの所識ではないからである.この認識構図を正確にモデル化するためには,上述のように,能知の圏から所知の圏への関手による圏を考えなければならない.
廣松(前掲書p.94)が「『能知者がそれ以上の能識者として』覚知する能知の側の二肢的二重性」というのは,自分を描くベラスケスが,描く自分をどう認識していたのか,その状況を示すものだろう.つまり,自分自身を観察の対象として所知の一つと見なし,その所識を能識と呼んだのであろう.
2012年1月7日土曜日
教師は人間であり,人間は動物である?
素朴なオントロジーでは,教師の上位クラスに人間があり,その上位クラスに動物がある.その意味するところは,「すべての教師は人間である」,そして,「すべての人間は動物である」.一見,もっともである.ある人間が死亡して人間でなくなるとどうなるのか.当然,動物ではなくなる.では,ある教師が退職して教師を辞めるとどうなるのか.人間でなくなる?.オントロジーは分類とそれによる推論のシステムであるとされるが,単純な分類ではこのような基本的な問いに明確な推論を与えない.
素朴な集合論およびそれに基づく単純な論理でも同じ問題を抱えている.分類が集合とその部分集合の階層を示すと考え,「集合 S の部分集合の要素はいずれも S の要素である」という通常の部分集合の定義に従えば,教師を辞めても人間で無くなるかどうかは何とも言えないのと同様に,人間をやめても動物でなくなるかどうか,何とも言えない.しかし,数学教育でよく利用されるVenn図では,部分集合に書かれた点が消されればもとの集合の点でもなくなってしまうため,「教師を辞めれば人間を止める」解釈がされてしまう.
このような難点は,データベースやUML,そしてオントロジーでも古くから意識されているようで,それを避けるために,「役割role」概念なるものが導入される.「教師」概念は「人間」や「動物」という(基本)概念とは異なる,というのである.しかし,役割概念という特殊な概念を考えるのはどうも恣意的でアドホックな感が否めない.
「役割」というのは属性,つまり(圏用語での)射であって,(圏用語での)「対象」ではない.その意味では,基本概念と異なる,といえる.人間(対象)には,たとえば「職業」という属性(射)があって,その一つの要素として「教師」がある,とすると,値を「教師」とする「職業」(射)の逆をとれば,それは「人間」(対象)の部分となり,したがって,「すべての教師は人間である」という命題を作る.しかし,教師を辞めたからといって,もとの人間が人間で無くなるわけではない.一方,「人間」は「動物」の下位クラス(前稿参照)だとする.「人間を止める」ということは,認識後の要素でなくなると言うことだと考え,(「人間」であることが不明になるのと同様)「動物」であるかどうか,不明(null)ということになる.ただし,ここで,「動物」というのは単純に前稿でいう上位クラスに相当せず,上位,下位クラスをあわせた拡大対象に相当すると考える.
OOPのプログラミングでは,要素(インスタンス)がなくなるというような変化が記録されないので,以上の議論は表面化しないが,データベースでは,事実グラフとしてその変化を反映するために,重要な問題となる.事実グラフ(データベースのテーブル)は,当然,認識されたものについてのグラフであるから,対象要素がnullとされた場合,その行はテーブルから排除(つまり,削除)される.
たとえば,「正社員」「派遣社員」の例でいえば,どちらかを辞めたとき必ずしも社員を辞めることにならない,つまり,正か派遣かが社員の単なる属性なのか,それともどちらかを辞めれば自動的に社員でなくなる,つまり部分クラスなのか,それを明確にしなければならない.属性(「雇用形態」?)ならば,社員テーブルの雇用形態の列の欄を更新してnull(あるいは更新された新雇用形態)にする操作をする.一方,部分クラスならば,社員テーブルからその行を削除する操作を行う.Railsでは,部分クラスのグラフ化にSTIを使用し,type というメタデータとして部分クラスを表すので,見かけ上,属性扱いになり,それだけではその違いが表せないが,どちらかを辞めた場合は,雇用形態をnullにすることで留めずに,その行を削除することにより,部分クラスであることを明確にするべきであろう.なお,STIは,拡大対象のグラフ化であることに注意.
以上は,「なくなる」ケースについて議論したが,「生じる」ケースも同様である.たとえば,「教師になる」,「人間になる(生まれる)」など.これらの出来事および関連事項は,圏論でいう作用actionをもとにして論じることが出来るが,それについては後述予定.
素朴な集合論およびそれに基づく単純な論理でも同じ問題を抱えている.分類が集合とその部分集合の階層を示すと考え,「集合 S の部分集合の要素はいずれも S の要素である」という通常の部分集合の定義に従えば,教師を辞めても人間で無くなるかどうかは何とも言えないのと同様に,人間をやめても動物でなくなるかどうか,何とも言えない.しかし,数学教育でよく利用されるVenn図では,部分集合に書かれた点が消されればもとの集合の点でもなくなってしまうため,「教師を辞めれば人間を止める」解釈がされてしまう.
このような難点は,データベースやUML,そしてオントロジーでも古くから意識されているようで,それを避けるために,「役割role」概念なるものが導入される.「教師」概念は「人間」や「動物」という(基本)概念とは異なる,というのである.しかし,役割概念という特殊な概念を考えるのはどうも恣意的でアドホックな感が否めない.
「役割」というのは属性,つまり(圏用語での)射であって,(圏用語での)「対象」ではない.その意味では,基本概念と異なる,といえる.人間(対象)には,たとえば「職業」という属性(射)があって,その一つの要素として「教師」がある,とすると,値を「教師」とする「職業」(射)の逆をとれば,それは「人間」(対象)の部分となり,したがって,「すべての教師は人間である」という命題を作る.しかし,教師を辞めたからといって,もとの人間が人間で無くなるわけではない.一方,「人間」は「動物」の下位クラス(前稿参照)だとする.「人間を止める」ということは,認識後の要素でなくなると言うことだと考え,(「人間」であることが不明になるのと同様)「動物」であるかどうか,不明(null)ということになる.ただし,ここで,「動物」というのは単純に前稿でいう上位クラスに相当せず,上位,下位クラスをあわせた拡大対象に相当すると考える.
OOPのプログラミングでは,要素(インスタンス)がなくなるというような変化が記録されないので,以上の議論は表面化しないが,データベースでは,事実グラフとしてその変化を反映するために,重要な問題となる.事実グラフ(データベースのテーブル)は,当然,認識されたものについてのグラフであるから,対象要素がnullとされた場合,その行はテーブルから排除(つまり,削除)される.
たとえば,「正社員」「派遣社員」の例でいえば,どちらかを辞めたとき必ずしも社員を辞めることにならない,つまり,正か派遣かが社員の単なる属性なのか,それともどちらかを辞めれば自動的に社員でなくなる,つまり部分クラスなのか,それを明確にしなければならない.属性(「雇用形態」?)ならば,社員テーブルの雇用形態の列の欄を更新してnull(あるいは更新された新雇用形態)にする操作をする.一方,部分クラスならば,社員テーブルからその行を削除する操作を行う.Railsでは,部分クラスのグラフ化にSTIを使用し,type というメタデータとして部分クラスを表すので,見かけ上,属性扱いになり,それだけではその違いが表せないが,どちらかを辞めた場合は,雇用形態をnullにすることで留めずに,その行を削除することにより,部分クラスであることを明確にするべきであろう.なお,STIは,拡大対象のグラフ化であることに注意.
以上は,「なくなる」ケースについて議論したが,「生じる」ケースも同様である.たとえば,「教師になる」,「人間になる(生まれる)」など.これらの出来事および関連事項は,圏論でいう作用actionをもとにして論じることが出来るが,それについては後述予定.
登録:
投稿 (Atom)