パスワードを忘れた? アカウント作成
8106890 journal
日記

kuremaの日記: 地球外の知的存在との対話 3

日記 by kurema

現在、地球外の知的存在と対話する方法として、「二次元ビットマップデータを送信する」という方法が一般的に良く知られている。(他にPCMデータを用いる例もある。まさかのMP3でした。)
この方法は極めて単純で、小さな通信量では現実的だ。しかし、彼我が相当共通していないと理解は困難であろうし、理解が妥当であるかの検証は事実上不可能だろう。
より大きな通信量を用いる場合、かつ理解を確実なものにする為にプログラムを送信するという方法を提案したい。

そのプログラム(CPUの命令列やソースコード)言語は以下の条件を満たさなければならない。

  • 極めて単純で有る事。
    相手に数の概念がある、という仮定でさえこの計画を失敗に導くかもしれない。
  • チューリング完全を満たす事。
  • データとプログラムを区別しない事。

有力な候補としてBrainfuckを挙げる。2bit CPUのような極めて単純なCPUでもいい。可能ならデータを簡便に扱える言語が望ましいが複雑すぎるだろう。

ただ、宇宙人がBrainfuck等を知っている事は殆ど期待できない。その為、その言語の説明も同時に送る事が望ましい。
そして、その説明を別の言語で記述しなくても済むように、言語の説明自体をその言語で書くことが望ましい。
その方法として、Quineを提案したい。これはプログラムの実行出力結果がそのプログラム自身になるようなものだ。ブートストラップコンパイラは出力先が別の言語になってしまうし、ブートストラップインタープリターは説明力に欠ける。
実際のプログラムはQuineの後に記される。

この方法だと、我々の様々な知見を相手に知らせる事が出来る。例を挙げる。

  • 数学や論理学の証明。
    定理検証プログラムと形式的な証明文を用いる。有名な「数学原理」における1+1=2の証明の様なものだ。
  • 物理物質・物理学の知見。
    物理演算プログラムで物理学の様々な知見を、さらにあらゆる物質を記述できる。
    厳密には量子コンピュータを要したりするかもしれない。その場合、対象の宇宙人はますます狭まるだろう。
  • 生物。
    上に、DNA配列からその細胞・受精卵を構成するプログラムを加えれば、極めて効率的に地球上の生物を宇宙人に教える事が出来る。人間も例外ではない。
    もちろん、安全保障上の問題は無視できない。
  • 動画・音声。
    或いは、圧縮形式動画・音声を展開し物理演算プログラムに動的に展開するプログラムを加えればあらゆる形式の二次元/三次元動画・音声・だって送る事は出来るだろう。
    その意義はともかく。
  • 宇宙の有り様。
    大きなスケールに於いては重力だけのシミュレーションで十分である。宇宙図はそのようにして送る事が出来る。
    ただしこの場合、三時限ビットマップの方が望ましいだろう。
  • 電子回路。
    電子回路のシミュレータは物理演算のそれを用いずとも十分だろう。我々の20世紀以降の多くの発明は電子回路シミュレータに回路図を添付する事で送る事が出来る。
  • データ圧縮・エラー訂正。
    言語にもよるが、大規模なプログラムやデータを送信する場合、冗長化したり圧縮し、それを展開し実行することでその利益を得る事もできる。
  • 重要なNP問題の証明。
    数学的証明の解が一例だ。しかし他に何らかの重要な問題が有れば、それも相手にとっては有用かもしれない。

それがQuineである事を発見するのは容易ではないだろう。しかし、一度気づけば、プログラムを実行しその便利を得る事は出来る。
さらに、同じテーマを研究する際にはその知見を用いる事が出来る。そして、十分賢明なら何を意味するのかを理解できるだろう。
哲学や言語学的な知見を共有する事は諦めた方がいい。それらにはおそらく何の汎用性も無いだろう。地球外の知的存在が会話を行う、それどころかそれが生物である、物理世界に興味を持っているという推測自体が楽観的すぎるだろう。

現在、例えばSETIプロジェクトなどでこのような通信を受けた場合、それに気づけるだろうか。
それは難しいと思う。Quineを付けてデータを送信してくるような親切さがあったとしても。
最初の一歩として、このような場合を考慮する事を推奨する。

さて、送信できる情報の中で最も重要なのは何か。
それは我々人間自身だろう。
ワープ航法・光速に近い移動・世代宇宙船の現実性が将来否定されたとしても、我々はこのような手段が存在する。
即ち、物理シミュレータと人間自身を送り、彼/彼女が情に訴えたり、クラックしたり、或いはそうしなければ非倫理的な事態が発生するようにしたり、偶々誰かが過ちを犯すことを期待して、シミュレータから現実世界へ出させることだ。
知的生命体が宇宙に十分多数存在するなら、これは一定の発展を得た知的存在にとって極めて有効、かつ恐らく唯一の汎宇宙的な繁殖手段だろう。
これと同じ事はそれなりの知的存在ならば必ず気付くに違いない。ならば、我々がそのような通信を発見できないなら、宇宙の、我々の通信が届く範囲に知的存在が溢れている可能性は絶望的だろう。

無論、この方法は大きなリスクがある事は言うまでもない。
一つは、人間の弱点を含む全てを宇宙の潜在敵知的存在に晒す事。
二つは、その星の既存の知的存在を破壊してしまうかもしれない事。
三つは、その星で人間が非倫理的な扱いを受けるかもしれない事。例えば奴隷にされたり、拷問を受けたり、永遠の生を強制されたりする事だ。
四つは、それを元に我々が脅される可能性がある事だ。彼らの望む研究をし報告しなければ、何千光年先で100億の人間が拷問・虐殺すると脅されれば、我々は屈するほかないだろう。
このような事は多少プログラムが書け、大きめのアンテナを有する人ならだれでもできる。
それが上記のような極めて大きな安全保障上の問題を引き起こしうる事は、極めて危険な状態だろう。

逆に我々が宇宙で拾ったプログラムを実行する事も大きなリスクだろう。
それが自分の囚われている実行環境をクラックする手段を見つけ出すかもしれないし、倫理的な問題を引き起こし我々がそれを存続させたり物理世界に実現させる事を余儀なくされるかもしれない。
或いは、我々にかわいらしい笑顔を向けてにっこりほほ笑むかもしれない。

#このネタをエイプリルフール用に投稿しようと思いましたが、きちんと解説したいと思ったので没にしました。
#SETIプロジェクトは4月1日、宇宙外からの通信と思われる信号を確認したと発表した。通信はクアインと呼ばれるプログラムで、BrainFuckに近い極めて単純な言語で記述されていた。…みたいな感じ。
#その手の世界で常識だったとかならここまでの長文の読破乙と言っておく。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy

読み込み中...