オルタナティブ・ブログ > 哲学するIT ITする哲学 >

Philosophical Speculation and Debate in IT Matters

メタとは何か? 自己言及の世界の危険と不思議そして語ることの重要性

»

 前回、『私は、XMLの"M"は、Markup (Language)の略でなく、Meta(Language)の"M" であるべきだと思っている。』と書いた。そこで、『メタ』についてもう少し、考えてみることにする。

<メタとは何か>
 メタ(meta)は、古代ギリシャ語のmetaに由来する接頭語であり、以下のような複数の意味を持ち、かつ複数の意味を結び合わせたものになっている。
(1) 後ろの、背後の(after, later, behind)
(2)~を超えた、高次の、包括的な(beyond, higher, transcending)
(3) ~ついて〔記述する〕(about, descriptive)
(4) 変化(change, transformation) 
(5) 〔化学において使われて〕メタ… ←"~の間(between)"
いくつかの接頭語メタ(meta)のつく言葉をあげて、上記の意味合いを考えてみる。
メタフィジックス〔metaphysics〕:アリストテレスの著作のうちで、哲学の基礎的な領域(第一原理〔第一の哲学〕、存在論〔オントロジー〕)に関するものは、『自然学(φυσικ? 〔physika〕、英語ではphysics)』の後に配置されていたことより、アリストテレスが命名したのではないが、ТΑ ΜΕТΑ ТΑ ФΥΣΙΚΑ  (自然学の後の巻)と呼ばれた。その後、ギリシャ語の接頭語メタが上記の(1)の意味以外に(2)の意味を持つことから、アリストテレスの哲学の基礎領域という意味を汲んで、「自然学を超えたもの」(超自然学)と理解され、日本語では形而上学と呼ばれている。
上記の(2)の意味をもとに、「ある対象について記述するもの」という(3)の意味で、メタ言語メタフィクション(〔metafiction〕:フィクション〔小説〕についてのフィクション)、メタ文法(文法を記述する文法)、メタ数学(〔metamathematics〕:ヒルベルトが提唱した形式主義の数学で、数学自体を対象としてある数学を展開する数学〔超数学〕)等において、メタが使われている。
また、(4)の意味で、metamorphosis(変形、変容、著しい変化) metabolism(新陳代謝、物質交代、同化作用) があり、化学用語として使った(5)の例として、メタ化合物([meta-compound]:メタ位〔ベンゼン環の1位と3位の間を一つ置いた位置〕に置換基をもつ化合物)がある。

<なぜ、コンピュータの世界に「メタ○○」が多いのか?>
 上で、接頭語メタのつく語を少し見てみたが、コンピュータの世界には、メタ○○があふれている。
たとえば、メタプログラミングメタ言語メタデータ/メタ情報<META>タグ(HTML)、メタサーチメタディレクトリメタクラスメタモデルメタブログ… 本当に、コンピュータは『メタ』が好きなのである。
これらを私なりに分類して見ると、以下のようになる。
【分類1】新たなものを作り出す高次なもの (記述に関する) 
 メタプログラミング:プログラムを記述し、他のプログラムまたはその部品を生成する。つまり、プログラムコードを生成するプログラムを書くこと
 メタ言語:メタ言語自身で直接に情報を記述するのではなく、情報を記述する言語を作るために使われる。BNF、XMLやSGMLやコンパイラコンパイラと呼ばれるyaccなど
【分類2】情報の意味を記述したもの (膨大な情報の中から知りたい情報を効率よく探し出すため)
 メタデータ/メタ情報:インターネット上に散在する種々の情報において、その情報がどのようなものかを明確にするデータで、それによりコンピュータによる検索が効率的、的確に行なえる。
 <META>タグ:NAME属性でキーワードを指定しておけば、検索エンジンが参照する情報を提供できる。
 メタサーチ:複数の検索エンジンを同時に使って検索を行なうもので、検索エンジンを利用した検索エンジンのこと。
 メタディレクトリ:膨大なディレクトリが存在する中で、物理的には複数のID情報をそのままに、論理的には単一のディレクトリとして、ID情報に効率的かつ整合性を維持するインタフェースを提供する。RDF(Resource Description Framework)は、メタデータの表現法に関するXMLベースの枠組みで、Web上でコンピュータが可読で、検索等の効率化を図る。
【分類3】相対的な上下関係(階層関係)を示したもの (インスタンスとクラスのような相対的な上下関係)
 メタクラス:実世界を種々の「もの(オブジェクト)」の集まりからなるとすると(注1)、「もの(オブジェクト)」には、個々の存在としての「インスタンス」とその上位分類である「クラス」がある。自分がどこの視点で見るかにより、「もの」の位置付けも変わってくる。クラス自体もクラス・オブジェクトとして扱われると、そのクラス・オブジェクト(最初のクラス自体)が分類されるクラスのことをメタクラスという。つまり、メタというものは、相対的なもので、視点をずらせば、メタメタクラス、メタメタメタクラス…と無限に続くことになる。
(注1)ウィトゲンシュタインは、『論理哲学論考』で「1.1世界は事実の全体であり、物の全体でない」と言っており、thing(物)とproperty(属性)、relation(関連)は、必ず一体物となった事実(英:fact、独:Tatsache)としてのみ現れるとしているので、彼は「物」の単純な集まりが世界と考えていない。
 メタモデル:UMLはほぼUML自身で定義されている。UMLのメタモデルは、下から、ユーザーオブジェクト層、モデル層、メタモデル層、メタメタモデル層の4階層から構成されている。下の層が一つ上の層により意味づけされ、最上位のメタメタモデル層でメタモデルを記述するための言語の定義を行ない、整合性を保証している。
【分類4】自分自身に関して考え・意見を述べること 
 メタブログ:ブログについてのブログで、ブログ自体をテーマとして、関連情報を集め、意見を述べるようなものである。つまり、メタフィクション、メタ映画のような使い方と同じである。

このような視点から見てくると、【分類4】は、コンピュータ特有の話ではないので、除いていいと思われるが、コンピュータが『メタ』が好きな理由が見えてくる。
〔理由1〕 想いだけでは通じないコンピュータに指示するためには、コンピュータが理解可能なプログラミング言語が必要である。つまり、機械語ではない人間にもわかりやすく、かつ曖昧さがない厳密な文法を持った形式言語、ウィトゲンシュタインが言うところの記号言語(sign-language)を用いなければならない。その言語を作るための言語、つまりメタ言語が必要となる。そのため、「~について記述する」という意味の『メタ』が登場するわけである。
〔理由2〕 我々は現在、ジャンク情報を多く含んだ膨大な情報の中で暮らしている。その膨大な情報の中から、自分が必要とする情報を的確に、効率よく取り出すことが必要である。そのために、「情報について記述される」という意味での『メタ』が重要になってきている。
〔理由3〕 現実の世界を「もの(オブジェクト)」の集まりからなると考えるオブジェクト指向の影響で、相対的な上下関係(階層関係)を示す『メタ』の視点が重要になっている。

<自己言及とメタ言語>
 日常生活において、自分自身について語るというのは、困難さと面白さが伴う。自己紹介の苦手な人もいる反面、非常にうまく自分をアピールできる人もいる。(欧米人、中国人は自己主張が強く、自分自身を述べるのに抵抗なく、日本人はどうも自己紹介が不得意の人が多いように以前は感じていたが、最近ではそうでもなくなっているようだし、欧米人でも自己紹介が苦手の人も見かける。) 急に「自分自身について語るということ」を持ってきたのは、自己言及(Self-reference)と「メタ」、「メタ言語」に話を持っていくためである。 まあ、自分自身について語ることは、それなりにワクワクするような感じでもあるが、なんとなく微妙な危うさ、怖さも感じるものだ。
〔自己言及のパラドックス〕
★嘘つきのパラドックス(Epimenides paradox)
 テトスへの手紙 第1章 に以下の文がある。
クレテ人(びと)のうちのある預言者が「クレテ人は、いつもうそつき、たちの悪いけもの、なまけ者の食いしんぼう」と言っているが、この非難はあたっている。
A prophet from their own people said of them, "Cretans are always liars, wicked brutes, lazy gluttons." This testimony is true. 国際ギデオン教会 『我らの主・救主イエス・キリストの新約聖書』の和英訳(注)より抜粋
この文をもう少し簡単に表わすと、クレタ人自身〔預言者(エピメニデス)〕が「クレタ人は嘘つきである。」となります。クレタ人は嘘つきであるならば、「クレタ人は嘘つき」ということも嘘となる。この文自体が嘘ならば、クレタ人は正直ということになり、嘘をついてエピメニデス(クレタ人)と矛盾する。
「全てのクレタ人は嘘つきである」を否定し、「全てのクレタ人が嘘つきというわけではない」と考え、「あるクレタ人は正直である」と考える人もいるかもしれないが、「この発言は嘘だ」とすれば、完全にパラドックスとなるだろう。
このように、自分自身を含めて言及しようとすると、パラドックスを起こすことがありうる。ただし、自己言及すると必ずパラドックスが起こるわけではない。たとえば、「この発言は正しい」という例では、パラドックスは起こらない。つまり、自己言及と文全体に対して「嘘だ(正しくない)」という否定的要素がなくてはパラドックスには起こらないということ。
★ラッセルのパラドックス
 ラッセルが集合論について考えていたとき、以下のパラドックスに気がついた。
「自分自身を要素としない集合の集合」をSとすれば、S自体もSの要素であるか、そうでないかでなければならないが、どちらにしても矛盾が生じることを発見した。これは、以下の「理髪師のパラドックス(Barber paradox)」例で説明される。
ある村に日々自分自身でひげを剃らない全ての村人のひげだけを剃り、それ以外の村人のひげは剃らない理髪師がいる。彼は自分自身のひげを剃れるか? 理髪師が自分自身のひげを剃っても、剃らなくても、「自分自身でひげを剃らない全ての村人のひげだけを剃る」という規則に矛盾を起こし、理髪師は自分自身のひげを剃ることも、剃らないこともできないということになる。
これにより、集合論においても、「嘘つきのパラドックス」に似たパラドックスが存在することを示した。
これを解決するために、ラッセルは、自己言及がパラドックスの原因とし、自己言及が起こらないように、集合をタイプ(階層)ごとに考えればよいと提案した(タイプ理論)。つまり、基本的なタイプから一つ上の階層(タイプ)からでしか、真偽を判定できないと言っていることになる。

〔無限の自己言及〕
 「パソコンが机の上にある」というような普通の言語である『対象語』であるとすれば、その対象語やその真偽に言及する文は『メタ言語』と呼べる。嘘つきのパラドックスは、対象言語とメタ言語を同等に見て、タイプ(階層)を無視して言語を循環させているために、自己矛盾が起こってしまた。しかし、対象言語とメタ言語の区別し続けるのは想像以上に難しいものだ。対象語を記述するために、メタ言語が必要になり、メタ言語自体を記述の対象にするときは更に「メタメタ言語」が必要となる。「対象言語、メタ言語、メタメタ言語、メタメタメタ言語・・・」というふうに,対象言語とメタ言語の階層はいくらでも深くなり得る。つまり、無限に自己言及することになる。そうすると、ますます厳密に区別するとなると大変難しくなる。

〔ラッセルからゲーデル、チューリングへ〕
 ラッセルは、日常の言語において、上のようなメタの無限化を問題にしていたのではなく、数学理論の基礎付けであった。つまり、できるだけ少ない公理と規則により無矛盾な系で、かつ完全な系を求めようとした。ラッセルのパラドックス等により、数学の危機のきっかけとなった。その後、ゲーデルが、「有限な無矛盾な公理の集合は作れるが、完全ではない。完全性を求めるために、公理を付け加えて続けても、それが真であるか証明できない定理が見出される」ということを証明した。これは、数学のような非常に厳密なはずの世界でも、無限のメタの世界が作られ、堂々巡りが起こり、矛盾なき完全なものは作れないということであり、曖昧なことが多い、日常世界や社会においてはいわんやであることを意味している。どうも、人間が、完璧さを求めすぎ、自分で自分を説明しきると思い込みすぎているのではないか。なんと図々しいではないか! ゲーデルの「不完全性定理」を別の形で証明したチューリング・マシーンの停止判定不可能の証明は、コンピュータにできないことがあることを示している。ゲーデル、チューリングに関してはまた、別の回で考えてみたい。

UMLの4階層は前述したが、一つ上の層のモデル要素が下の層のモデル要素を意味づけするという構造で、4階層目のメタメタモデル層で、メタモデリングのアーキテクチャのための基盤とメタモデルを規定するための言語を定義している。メタメタモデルは最上位なので、もうこれ以上の層がないので、自分自身で妥当性これ以下のメタモデル要素が整合性のあるものになっているという保証を与えるためにメタメタモデルがあり、それ自身で妥当性を納得させていることになる。自己言及の無限化を防いでいることになる。
また、UMLなどのモデリング言語やプログラミング言語などの形式言語は、なるべく一つの言語で何でも記述できるようにされるため、自分自身を自分自身で記述できるというメタの世界に入り込んでいくわけである。数学の場合のような無矛盾な完全性を求めすぎて、破綻しないようにしなければならない。コンピュータに指示するわけだから、もちろん厳密さは必要だが、日常の世界、社会はそんなに厳密ではなく、曖昧なものであるから、適当さも許されるはずだから、度を越さないように(メタの世界の罠に入らないように)、言語仕様も考えたいものだ。

〔ウィトゲンシュタインの考え方〕
ここで、ウィットゲンシュタインに登場願う。
★ラッセルのタイプ理論への批判
 ウィットゲンシュタインは、『論理哲学論考』の3.331から3.333において、ラッセルの「タイプ理論」を完全に批判している。ただし、以下のラッセルのタイプ理論に対する批判は、ウィトゲンシュタインの「1.1世界は事実の全体であり、物の全体でない」と言っているように、世界を「物」の単純な集まりと考えていないことや、ラッセルと「言語の見方」が異なるからであろう。 『論理哲学論考』の他の箇所(4.1273, 4.442,5.02,5.132, 5.4,5.452,5.525等々)でも、ラッセルやフレーゲ、ホワイトヘッドの解釈の問題が指摘されている。
3.331 この観点(論理的構文論は、記号の意味を言及せずに構築されなければならない。つまり、表現の描写のみを前提としなければならないという3.33で述べられていること)からラッセルの「タイプ理論」を振り返る。ラッセルは記号のルールを規定するとき、記号の意味を記述しなければならなかったために、ラッセルは間違ったとしか思えない。
3.332命題記号が、その命題記号自身に含まれることはできないから、いかなる命題も自分自身について述べることはできない(これが、「タイプ理論」の全てである)。
3.333関数が自分自身の引数となれない理由は、関数の記号は既に、引数のプロトタイプ(原型)を含んでおり、そのプロトタイプは、それ自身を含むことができないからである。まず、F(fx)が自分自身の引数になれると仮定する。このとき、命題'F(F(fx)'が存在することになる。しかし、この命題において、内側の関数は、φ(fx)を、外側の関数はψ(φ(fx))であるから、外側の関数Fと、内側の関数Fは異なる意味を持たなければならない。文字‘F'だけが二つの関数において共通であるが、文字自身はなにも意味しない。もし、’F(Fu)'の代わりに、'(∃φ) : F(φu) . φu = Fu'と書けば、ただちに明らかになる。このようにして、ラッセルのパラドックスは片付けられる。

★メタ言語の不可能性
黒崎宏『「語り得ぬもの」に向かって ウィトゲンシュタイン的アプローチ』 (勁草書房)p.67-70より抜粋(強調を下線に変更して記載した)
「したがって後期のウィトゲンシュタインは言語を語るというのは、言語ゲームを語ることなのである。しからば、言語ゲームは語るということは可能なのであろうか。 言語ゲームには規則がある。したがって。言語ゲームを語るということの中には、規則を語るということが含まれる。しからば。規則を語るということは可能なのではあろうか。
 規則を語るということは、たとえそれが、言語を用いるにせよ図表を用いるにせよ、とにかく規則を何らかの記号を用いて表現することである。ところが、表現された規則はそれだけでは使いものにならない。何故なら、表現された規則を使うためには、その表現された規則の使用規則が別に必要になるからである。ここで、規則を完全に表現しようとして、その規則を何らかの仕方で表現したとしよう。すると今度は、その表現された使用規則の使用規則が別に必要になる。かくして、無限後退に陥る。したがって、規則を完全に表現しようとすれば、表現された規則は、無限に連なる使用規則でサポートされなくてはならないのである。
 この教訓は何であろうか。それは、規則というものは、如何なる仕方においてであろうとも、本当は表現できないと、いうことである。規則というものは、表現されたとたんに、言わば死んでしまうのである。規則というものは、ただ内的に了解され、行為において示されるべきなのである(『探求』第201節)。そうであるとすれば、われわれは、規則を語るということは出来ないのである。
・・・・・・
 ウィトゲンシュタインの言語観は、その前期から後期にかけて、革命的に変わった。しかし、そのいずれにおいても、言語でもって言語を語ることの可能性は、否定されている。要するに、「対象語-メタ言語」という、あのよくある言語の二分法は成り立たないのである。その意味では、言語は一つなのである。もちろん、後期においては、種々様々な言語ゲームが考えられた。しかし、それらは、平面上では重なり合い、ずれ合っているのであって、対象言語とメタ言語のような上下関係にはないのである。」

どうも、ウィトゲンシュタインは、言語で言語を語ることが不可能であると考えているようだし、「対象語-メタ言語」という上下関係に関して否定的である。

<メタ言語の可能性>
 どうも、メタ言語の否定的な面をクローズアップしすぎた嫌いがあるが、メタ言語の効用(?) をあげてみよう。

1) 「○○という語は△△という意味である」というように、メタ言語は、知らない新しい単語を学習するときなど、十分利用できる。
ただし、英語を日本語で説明するときなど、日本語がメタ言語になるが、説明すればするほど、わかりにくくなる場合もあるので、注意が必要だろう。
2)メタ言語の力(?)によって、言い表せないものを言い表せる。
 検索エンジンで「言葉では言い尽くせない」を検索すると、あるわあるわ。 言葉では言い尽くせない、言い表せないはずが、いっぱい言葉を使って、言い表せないものを言い表そうとして、このような表現を使っている。このようなこともメタ言語の力なのだろう。
3)視点ずらして見ることや、一段上からの視点は、物事をいろんな角度から見て判断するために必要なことであり、メタ言語で記述することは、論理的な思考能力を向上させることにつながる。
4)ウィトゲンシュタインが『論理哲学論考』の3.325で述べている記号言語(sign-language)である形式言語である
プログラミング言語やモデリング言語を作るためにメタ言語は重要である。

<言葉で語りえぬものと語ることの重要性>
 前々回(「"The limits of my language mean the limits of my world."の意味を考える」)において、ウィトゲンシュタインが『論理哲学論考』の最後に、「我々が語りえぬことは、沈黙しなければならない(What we cannot speak about we must pass over in silence.)」と書いているが、実は「我々が語りえぬこと」のほうが大切なこともあることも事実だと思うし、ウィトゲンシュタインはそちらのほうを重要視していたのであろう。
と述べたが、最近、以下の文章に出くわした。(図書館で借りて読んだのだが、なかなか面白かった)
『語れば語るほど、本当に言いたいことから遠ざかっていくことがある。行列ができるラーメン屋の味を盛りだくさんに語るよりは、実際に食べてもらった方がいい。味のすべてをもらさず言葉に翻訳するのは不可能である。
かたや、食べてもらったその人も、ラーメンの感動を言語化することはできない。自分もできない他人にもできない。結局、ラーメンの前に二人で見つめ合うしかないのである。しょせん言葉はことばなのだろうか。
だが、こうも考えらよう。とにかく語る。語り尽くせるだけ徹底して語る。すると、あたかもエアロビクスで脂肪が燃焼するように、シェイプアップされ残されたものが輝き出す。語ることによって語れない領域をよりリアルに感じることができるようになるのだ。
その語れない部分については当然、証明することもできなければ人に伝えることもできない。法則化して客観視することもできない。でも、それは確実に「ある」のだ(ほっぺをつねってみて。それのこと)。』  
富増章成 『空想哲学講義』 洋泉社 あとがき(P.245)

ともに、言葉で語ることの重要性を述べていると思う。
そういうことから、やはり、"The limits of my language mean the limits of my world."が私の頭から離れないわけである。

(注)郡山千里さんよりコメントをいただいたように、「和英訳」とすると誤解を受けると思いますので、「の和英訳」を削除します。確かに、国際ギデオン教会の『新約聖書』の中に「この新約聖書は、ギリシア語から、それぞれに翻訳されたものを対象にしたもので、対訳ではありません」と注釈がありました。郡山さん、ご指摘ありがとうございました。(2006年1月5日)

Comment(9)