オブジェクトモデルと論理

前回、集合をオブジェクトと考えることで、自分自身を要素として含む集合のような怪しい集合も含めて素朴集合論の世界をオブジェクトモデルとしてモデル化することができることを述べた。

そこで、そのような素朴集合論のモデルであるオブジェクトモデルと論理との関係を考えてみた。

オブジェクトモデルのオブジェクト全体を集めたものを Uc としたが、Ucはあくまでも当面関心のあるオブジェクトを集めた有限集合である。しかし、この有限集合は必要に応じて新しいオブジェクトを取り込んで自由に拡張できる。その場合新しい Uc について考えることになるが、その場合も Uc の要素は有限個である。

オブジェクトモデルにおける集合とは、その外延というオブジェクトの属性が、Uc の部分集合を表しているオブジェクトである。Uc のオブジェクトの数が N であるとすると、Uc の冪集合の要素の数は 2 ^ N であるから、Uc のオブジェクトでは表せない Uc の部分集合が必ず存在する。そのような集合はオブジェクトモデルでは「集合」とは呼ばれず「クラス」になる。「クラス」を「集合」とよぶ事ができないのは、その「クラス」を外延に持つオブジェクトが Uc の要素であるオブジェクトのうちには見つけられないからだ。

あるオブジェクトの集まりに論理学が適用できるかどうかは、排中律がその集まりに適用できるかどうかによって決まる。Uc の任意の部分集合について、排中律が成立すれば Uc には論理が適用できる。そして、Uc の「クラス」については明らかに論理が適用できることが分かる。つまり、Uc の任意の「クラス」についてその補集合が存在することは明らかだからだ。

このように、Uc の「クラス」については論理法則が適用できるが、Uc の集合については論理が適用できない場合がある。それは Uc のオブジェクトでは「クラス」の全てに対応させることができないからだ。

この観点からラッセルのパラドックスについて考えてみよう。Uc のオブジェクトの中には明らかに自分自身を含むオブジェクトと自分自身を含まないオブジェクトがある。また、これらのオブジェクトは自分自身を含まない集合からなるクラスと自分自身を含む集合からなるクラスが存在する。この意味で集合は自分自身を要素として含むか含まないかのいずれかであるという排中律は成立する。

ところが自分自身を要素として含む集合のクラスを外延として持つオブジェクト R を Uc の中に求めようとすると、R が自分自身を含めば、R は自分自身を含まない集合となりラッセルのパラドックスが発生する。このため、R は Uc の中に見つけることはできない。

一方自分自身を要素として含む集合の集合 ¬R の場合は ¬R は自分自身を要素として含んでもよいし、含まなくても良い。¬R が自分自身を含まない場合は ¬R は自分自身を含まない集合のクラスの要素となってしまうが、それでも Uc のクラスにおける排中律は保たれる。

自分自身を要素として含む集合の集合が、自分自身を要素として含まない集合のクラスの要素であるというのは抵抗があるが、自分自身を要素として含まない集合のクラスは存在してもそのような集合は存在しないのだから論理は破綻しない。

要するに素朴集合論の集合を集めた Uc について、その部分集合であるクラスについては論理は適用できるが、Uc の要素であるオブジェクトとしての集合の数は、Uc のクラスの数に比べて少ないために、全てのクラスを集合として表すことができず、論理が集合については適用できない場合があるということだ。

この困難は、集合を「物の集まりという物」すなわちオブジェクトとして定義することによって発生する。そのため、集合に論理すなわち排中律を持ち込むためには、特別に選び出された集合からなる Uc を想定する必要がある。

素朴集合論のオブジェクトモデルでは、オブジェクト全体を表す Uc は有限集合だが、Uc のオブジェクトの中に無限集合を含むように拡張することは可能だ。Uc は有限集合だが無限集合を含むように拡張できるというのは素朴集合論の世界をコンピュータ上に構築できることを意味している。オブジェクトはコンピュータプログラムの実態として容易にプログラムできる上、コンピュータは有限のメモリ上で作動しているにもかかわらず無限集合のいくらでも拡張できる近似として動作させることができるからだ。

素朴集合論の世界をオブジェクトモデルとして、コンピュータ上に実現することができれば、ラッセルのパラドックスや集合ではないクラスの存在も包含した集合論的なプログラム言語を記述できるだろう。

[PR]
# by tnomura9 | 2017-01-30 23:03 | 考えるということ | Comments(0)

激変

大統領に就任したトランプ氏が次々に大統領令に署名している。本気でアメリカ1国主義を実現させようとしているようだ。基本は力による支配と白人至上主義という民族主義だ。古き良きアメリカの復活だ。日本にとっては多難な時代が訪れるだろう。今までのように米国だけを見ていればいい時代ではなくなるかもしれない。

しかし、過去を振り返るとナポレオンの大陸封鎖や、ガンジーによるインドの独立など、力による支配の行く先を研究することができる。変化の時代だからこそ、歴史学者を活用したりなど過去の経緯を調べて未来に起こり得る事態に備える必要があるのではないだろうか。

実際、木曽義仲の倶利伽羅峠の勝利は、古代中国の斉の国の田単の火牛の計を真似たものだった。先が見えない未来だからこそ、過去の教訓を生かせるような気がする。

トランプ大統領の大統領令の目的は、技術革新によって職を失った労働者の保護だ。

そのために化石燃料の規制緩和、自動車産業の保護、移民の制限などになる。しかし、これは少し時代錯誤の政策のような気がする。

昨今の自然エネルギー関連と新型電池の開発で、自動車は確実にガソリンエンジンから電気自動車にシフトしていっている。また、これらの業種の労働者の職がなくなったのは、ロボットの進化などの製造業の自動化が大きな要因で、海外からの輸入が原因なわけではない。時計の針を元に戻そうとしても時代の流れには勝てないだろう。

時代錯誤な政策でどのように経済活動が阻害されるかは無視できないだろうが、これらに対する日本の対応は粛々と技術革新の流れを促進することだろう。化石燃料から、電気エネルギーの時代への変革を率先して進める必要があるのではないだろうか。

[PR]
# by tnomura9 | 2017-01-27 08:49 | 話のネタ | Comments(0)

ピンポイントで攻める

分厚い参考書を読むときは、ピンポイントで攻めると有効な場合がある。目次を見て外観を掴んだり、スキミングでざっと本文を通して眺めてみたりするのもいいが、それらの方法ではどうしても「何となくこういうものだ」というぼんやりとした印象しか残らない。

そんな時は一つのテーマでピンポイントに調べるのがいい。ネット検索などを活用して、その項目だけを徹底的に調べるのだ。このブログでもフォスファチジルイノシトールIP3 受容体について記事にしたことがあるが、特定のテーマを徹底的に調べるのは物語性があって頭に残りやすい。また、IP3 受容体は細胞質の Ca イオン濃度をコントロールするので、様々な生物現象に関連がある。この部分をしっかり押さえていればそれらの現象についての理解もたやすくなる。

ピンポイントで学習したエピソード記憶は記憶に残りやすいし、物語性のある知識は理解しやすい。ただ、問題は時間がかかりすぎることだが、時間をかけないと良質の情報を得ることはできない。

結局のところ、スキミングで俯瞰的に眺めるにしろ、ピンポイントに情報を探索するにしろ、腹をくくって時間をかけることが最も効率のよい勉強法だ。

[PR]
# by tnomura9 | 2017-01-23 11:02 | 考えるということ | Comments(0)

がり勉の勧め

がり勉の漫画的なイメージは、牛乳瓶の底のような眼鏡をかけて、服装も野暮ったくて、いつも辞書や教科書を持ち歩き、あまり人との交流もなく一人でぶつぶつつぶやいているという甚だ『いけてない』姿になる。

学生の頃は、スポーツも遊びもしっかりやって試験の点数も良いかっこいい学生を尊敬して、あまり勉強もしなかった。しかし、最近、手遅れだが、がり勉の意義について考えるようになった。

頭の良い学生は学ぶ速度が速く、試験の点数は良いが、ともすれば知識を深く探索するというようなまどろっこしいことはしないように見える。英語の文章なども速読してさっと内容を把握してしまう。何をやらせても要領を得て仕事が早いのだ。

学校の試験対策ならそれでいいだろう。しかし、そうやって得た知識は単に雑談の時にそれは知っているよと言えるような、表面的な知識でしかない。どんなに簡単な技術用語でもそこに内在する深い知識のネットワークはそう簡単に探索しつくせるものではない。知識が役に立つためには、その背景の数十倍の量の知識が要求されるからだ。

たとえば英語の文章を読むような時でも、黙読でざっと内容を掴むだけでは応用力がつかない。音読し、知らない単語はしらみつぶしに調べ、その単語の用例も10数個くらいは読んでみて、最後は元の文章を暗記するくらいの意気込みがいる。泥臭いがり勉でなければそのような労苦には耐えられないだろう。

本気で知識に対峙しようとするなら、がり勉になるしかない。


[PR]
# by tnomura9 | 2017-01-21 13:20 | 考えるということ | Comments(0)

素朴集合論のオブジェクトモデル

素朴集合論の世界を集合というオブジェクトの集まりと考えると、素朴集合論をモデル化できる。これを仮に素朴集合論のオブジェクトモデルと呼ぶことにする。

オブジェクトモデルでは素朴集合論の集合や、集合ではない対象(個体)も含めて一括してオブジェクト(対象)としてとらえる。1個のオブジェクトは複数の属性 (property) をもつ。属性の一つはそのオブジェクトの外延であるオブジェクトの集まりだ。集合は、その要素の集まりという外延を持つ。集合オブジェクトは外延にオブジェクトの集まりを持つ。空集合の外延は要素を一つも含まない集合だ。個体の外延は何もない。しかし、空集合と区別するために何もないという nil という値をもつと考えてもよい。

オブジェクトモデルのオブジェクトの集まり全体を Uc (candidate for universe) と呼ぶことにする。Uc は有限のオブジェクトの集まりだ。しかし、オブジェクトはいつでも拡張可能なので、無限集合の任意の要素を扱うことができる。また、無限集合のオブジェクトも考えることができる。この場合無限集合の外延は無限集合なので、Ucに含まれないオブジェクトを含んでいる。

オブジェクトの属性には、外延以外にもいろいろなものを与えることができる。偶数であるとか犬であるとか自分自身を要素として含むとか自由に考えることができる。また、Uc の任意のオブジェクトはこの属性に従って、述語を充足するかどうかで2分できる。x は犬であるという述語に対し、その述語を充足するオブジェクトの集まりと、その述語を充足しないオブジェクトの集まりを、オブジェクトの持つ属性に従って分けることができる。この意味で Uc では排中律が成立する。

オブジェクトモデルでは集合について制限をつける。集合とは Uc の中のオブジェクトの一つでなければならないという制限だ。Uc のオブジェクトが N 個であるとすると、オブジェクトの考えられる集まりの数は 2 ^ N だから N 個のオブジェクトでは Uc の部分集合を全て表現することはできない。Uc のオブジェクトの外延として表現できない Uc の部分集合は集合ではなくクラスと考える。ただし、あるクラスを集合として取り扱いたい場合は、そのクラスを外延とするオブジェクトを Uc に追加して Uc を拡張すればよい。

この集合についての制限は、集合を物の集まりという物(対象)として考える定義からくる。集合を個体と同列に物(オブジェクト)として考えるためには、対象の集まりとは別にそれを表すオブジェクトが必要なためだ。

Uc の要素のオブジェクトについては排中律が成立する。つまり、制限されない内包的定義でオブジェクトの集まりを定義できる。しかしながら、それらの全てが Uc のオブジェクトである集合の外延になるわけではない。Uc には常に集合と定義できないオブジェクトの集まりが存在する。

このモデルの特徴は、オブジェクト指向言語のオブジェクトとして、集合と個体のオブジェクトをプログラム化できることだ。ラッセルのパラドックスをはじめとする、素朴集合論の様々な性質をこのモデルの振る舞いとして表現することができる。また、それをプログラムとして記述することも可能だ。

ラッセルのパラドックスという矛盾を含む素朴集合論はその実体的なモデルを使うことで、なぜそのような矛盾が生じるのか、また、このモデルにどのような制限をつけると数学の基礎となるような集合論を構築できるのかが分かる。

[PR]
# by tnomura9 | 2017-01-15 13:15 | 考えるということ | Comments(0)

A proverb is ...

A proverb is the wisdom of many and the wit of one.

これは、イギリスの政治家 Load John Russell の格言で、「ことわざは万人の叡智であり、個人にとっては機知である」という意味だ。短い文だが、文法的に解釈すると結構複雑なことになる。

proverb (ことわざ) は1個、2個と数える事ができるので可算名詞だ。不定冠詞 a がついているので、どのことわざというのではなく、ことわざのうちのどれでも良いが一つを取り上げるという意味だ。従ってこの主語 a proverb は単数なので be 動詞は is が使われる。

wisdom は叡智という抽象的な概念を表す言葉なので抽象名詞である、これはまた不可算名詞でもある。抽象名詞には普通冠詞をつけないが、定冠詞 the がついているのでこれは一般的な叡智ではなく叡智の中でも特定の叡智を指し示すと考えられる。どんな性質かというと of mamy (多数の人の) 叡智である。many は多数の人を指す代名詞なので冠詞はつかない。

and に続いて the wit of one (個人の機知) であるが、文法的には the wisdom of many と同じだ。対句になっているので、a proverb の the wisdom of many という属性と the wit of one という属性が対比されている。wisdom と wit が many と one の対比で使われている。

以上のように文法的に解釈すると、たった1行の文の解釈がなかなか面倒なことになる。文法というルールで英文を分析すると一つの文でも多くの内容を含んでいるとも言えるが、少々わかり辛い。ところが、これは日本語の発想と英語の発想の違いとしてとらえるともう少しわかりやすくなる。それをやってみよう。

最初の A は不定冠詞だが、日本語には冠詞という語がない。つまり、すでにこの冠詞によってものを考えるという英語の考え方と日本語による思考との違いが現れているといえる。a という不定冠詞は1個、2個と数えることのできるものの一つをなんとなく取り上げてみるという感覚がある。日本語にはこのように数えることのできるものの全般という発想がないので訳さないが、英文の発想を理解するためには、この不定冠詞の意味をまず理解しないといけない。つまり、何でもいいが1個、2個と数えることができるものを話題に取り上げていると考えるのだ。

こう考えると a の後は当然可算名詞が来る。不定冠詞なので、可算名詞の集合の一つの要素を取り上げるという意味になる。強いて日本語に訳せば、「あることわざは」というふうになるが、日本語の「ある」という言葉の意味は不定冠詞の場合より定冠詞の the の意味のように特定のものを指す意味合いが強い。この時点で逐語的に英文を日本語の文に変換することが困難になってくる。a proverb という名詞句は「ことわざのどれでも良いがその一つを取り上げると」という意味になる。従ってそれに続く be 動詞は当然 is だ。

the wisdom of many の定冠詞の the も a と同じようにその単語自体に語感という意味がある。a の場合は多くのなかの任意の一つという意味があるが、the の場合は「多くの中の特定のひとつ」という意味があるのだ。

当然 the のあとは可算名詞になるはずだが、wisdom (叡智) は1個、2個と数えられない抽象名詞なので不可算名詞だ。それが the という定冠詞のあとに来るということは wisdom の意味になんらかの制限がかかるはずだ。of many でその予想が当たっているのが分かる。many には冠詞がついていないが、それは代名詞だからだ。代名詞の働きは、何かを指し示すという抽象的な作用だが、この場合の many は多くの人を指し示している。

and という接続詞には、A と B というような A と B を単純に対等に繋ぐ意味もあるが、A と同時に Bであるというような同時性を表す意味もある。上の格言では a proverb が the wisdom of many ではあるが、しかし、それと同時に the wit of one でもあるという意味に考えることもできる。この場合、the wisdom of many であることは確かなのだが、同時に the wit of one でもあるのだという、後者を強調しているように見える。

まとめると、a proverb ということわざのひとつをとりあげて、それは the wisdom of many つまり万人の叡智だが、しかし、同時に個人の機知 the wit of one として活用することができると言っているのが分かる。

英文法を学習するときに、可算名詞や不可算名詞、不定冠詞や定冠詞など日本語にない単語の性質が現れてくると、なんでこんな面倒なものを覚えないといけないのだろうか、意味が通ればいいじゃないかと思いがちだ。しかし、この複雑な文法は英語と日本語の発想の違いを端的に表しているのだ。

したがって、英文を日本語に翻訳するときは、英文の現象の切り取り方とその意味を知りつつ、同様の現象を適切に日本語で表現するという2重の作業が要求される。

こう考えてくると、ディープラーニングによるパターン認識だけで英語と日本語の本質的な思考方法の違いを吸収することができるのだろうかと疑問に感じる。本当に有効な機械翻訳のためには、世界の現象に対する英語と日本語の切り取り方の違いを取り入れたアルゴリズムを開発する必要があるような気がする。

[PR]
# by tnomura9 | 2017-01-09 23:04 | 考えるということ | Comments(0)

I like dogs. と I like a dog.

"I like dogs." は犬一般が好きだという意味。"I like a dog." は一般にはこういう言い方をしないが、親にペットショップに連れて行かれてどの動物が欲しいか聞かれたときに "I like a dog." という言い方はできるらしい。

翻訳というのは英語の文章をそれと等価な日本語の文章に変換することだが、その意味の単位は文法と単語というよりは、文そのものと考えたほうがわかりやすいのではないだろうか。文はそれを構成する単語の相互関係を含めた全体として一つの意味を持っている。翻訳のときの単位としては単語よりも文に注目したほうがうまく訳せるような気がする。

自動翻訳の場合も文を意味の単位とするアルゴリズムを取ったほうが、良い訳文を得られるのではないだろうか。

"I like dogs." means that you like dogs in general. "I like a dog." seems not to be correct usage, but when asked which animal you want by your parents being taken to a pet shop, you can say "I like a dog."

Translation is to convert an English document into a Japanese document equivalent to that, but it may be easier by focusing that a unit of that meaning is a sentence rather than grammar and words. A sentence has more stable meaning as a whole than that of words constituting it. As a unit of translation, sentences rather than words should be considered.

Even in the case of automatic translation, good translations would be obtained by taking an algorithm that uses sentences as units of meanings.

[PR]
# by tnomura9 | 2017-01-06 07:30 | 考えるということ | Comments(0)

昔々あるところに

「昔々あるところに、おじいさんとおばあさんが住んでいました」という文を Google 翻訳に翻訳させ、訳文の英語を今度は日本語に翻訳させ、その日本語をまた英訳させるということを繰り返してみた。

昔々あるところに、おじいさんとおばあさんが住んでいました
Once upon a time there lived an old man and an old woman

Once upon a time there lived an old man and an old woman
かつて、老人と老婆が住んでいました

かつて、老人と老婆が住んでいました
Once there lived an old man and an old woman

Once there lived an old man and an old woman
かつて老人と老人が住んでいた

かつて老人と老人が住んでいた
Once the old man and the old man lived

Once the old man and the old man lived
一度老人と老人が住んでいたら

日本語と英語の対が何処かで収束して安定するのを期待していたが、次第に文の情報が抜け落ちていく結果になった。このあたりが、パターンマッチを学習させるだけのディープラーニングの限界ではないのだろうか。文の意味を理解して、それを翻訳するためには、ディープラーニングだけではない別の情報処理の方法が必要になってくるような気がする。

おそらく、文章を読んで理解するという情報処理にはパターンマッチ以外の処理方法が関与しているのではないだろうか。Google 翻訳では学習過程で内部的な中間言語を作り出したということだが、文字配列のパターンから抽出した中間言語と、文を読んで作り上げるイメージとは異なるもののような気がする。人間は日本語の文章を中間言語に翻訳するのではなく、日本語の文書が表す内容のモデルを作成しているようにみえる。

したがって、日本語のマニュアルなどを英文に翻訳しようと思ったら、日本語の文章のほうを工夫して、逐語的に英訳しても英文らしくなるようにすると、変換効率が上がる気がする。その場合、日本語の原文のほうが変な日本語になってしまうが、単語や熟語の検索を機械翻訳が担ってくれるので、翻訳の作業が随分楽になるのではないだろうか。

[PR]
# by tnomura9 | 2017-01-05 07:32 | 考えるということ | Comments(0)

CANDLE炉と溶融シリコンの光熱電変換を組み合わせる。

以前にこのブログで CANDLE 炉溶融シリコンベースの光熱電変換の記事を書いたが、この2つを組み合わせたらどうなるのだろうかと考えた。

CANDLE炉の利点は安全に核燃料を燃やし熱量を発生することだ。しかし、この熱を電気に変換するための機構がタービンを使う方法では構造が複雑になりすぎる。

溶融シリコンによる光熱電変換では熱と光を直接電気に変えることができるので構造が簡単になる。

この2つを結びつけたら構造が簡単で安全性の高い原子力発電が実現できるのではないだろうか。軽水炉の使用済み燃料棒はそのままでは放射性廃棄物だが、CANDLE炉や東芝の4Sの原理を使えばそのままエネルギーとして再利用できる。資源不足と廃棄物の処理が同時にできてしまう。

しかし、これらの新型炉は冷却用の媒体に扱いの難しい溶融ナトリウムを使う必要がある。これを安全な溶融シリコンに置き換えて、さらに熱光電変換で発電すれば、機構の簡素化と安全性の向上を一挙に達成できるのではないだろうか。

素人が思いついたことなので非現実的なのかもしれないが。この方法だと非常に小型の原子力発電機を作ることができる。4Sの欠点はあまり大型化できないことだが、それを逆手に取れば、非常にコンパクトでどこにでも持ち歩け、燃料の補給が数年は不要な原子力発電機を作ることも可能だ。

[PR]
# by tnomura9 | 2017-01-05 00:47 | 話のネタ | Comments(0)

思考の道具としてのAI

Google翻訳を使って、AIとの付き合い方を探ってみた。今の時点では機械翻訳にしても、完全に自動化できるということろまでは行っていないようだ。人間がAIに職を奪われてしまうのはかなり先のことの様だ。むしろワードプロセッサーがそうだったように、AIのアプリケーションは人間の能力を広げてくれる道具という位置づけがふさわしいようだ。

機械翻訳を利用することで、著者は自分のアイディアを違った角度から眺めることができる。この違った角度からの観点というのは思索にとっては重要な要件なので、これからもますます、個人的な思考活動にとっても、AIは重要になってくるだろう。

Using Google translation, I tried to explore how to get along with AI. At this time, even machine translation seems not to be said fully automated. Maybe it is quite a while before human beings are deprived of their jobs by AI. Rather, like word processors, AI applications looks suitable as tools that extend human capabilities.

By using machine translation, authors can view their ideas from a different angle. Since the perspective from this different angle is an important requirement for thinking, AI will become more and more important for personal thinking activities from now on.
[PR]
# by tnomura9 | 2017-01-04 18:48 | 考えるということ | Comments(0)