1.光の速さとコンピュータのクロックは似ている。
物体は光の速さを超えて動くことはできない。
プログラムはクロック周波数を超える速さでアクセスすることはできない。
コンピュータの中に一つの世界が存在したとすると彼らはクロック周波数以上の
速さで移動することはできない。
プログラムを分岐して軽い動作のモジュールにしたとしてもクロック周波数を
超えることはできず、クロック周波数はどのモジュールで計っても同じだ。
2.粒子と波 は デジタルとアナログに似ている。
素粒子が波と粒子の挙動を持つことと、デジタル波形(デジタル信号ではない)は
クロック周波数に近い周波数で見るとアナログ波形になるのと似ている。
アナログ波形が完全に波の性質を持つのと同様デジタル波形も非常に高い周波数では
アナログ的性格になる。
周期性は別として波形はどこでデータが1から0あるいは0から1になるか判断できない。
ある閾値を設定して0か1かを決めるしかない。
3.デジタル信号(ただし周期的矩形波)がフーリエ級数で現すことができるように、
素粒子の挙動もある種のフーリエ級数のような級数で現すことができるような気がする。
4.時間は戻すことができない。
プログラムによる動作は戻すことができるだろうか?
例えばA-B-C-Dと進んで来たシーケンスをD-C-B-Aと戻すことができるとしたら、
それはどういうアルゴリズムだろう?
まずA,B,C,Dという動作はそれぞれ一つにまとまった動作でなければいけない。
ルーチンあるいはオブジェクトあるいは手続のようにまとまったもの。
それではそれをD-Cと戻すには、プログラム自体を変えることなくできるだろうか?
クロックは反転しても変わらない。
プログラムカウンターを逆転させたらプログラムは動くだろうか?
例えば原始的な
LD A,(BC)
LD(address),A
LD HL,address
LD A, data
ADD A ,(HL)
LD(address), A
のようなプログラムでも各命令をそのまま逆の順番で動作をさせるだけでは
逆転しても意味のある動作をさせることはできない。
プログラムカウンターを逆転させても各命令の意味も逆にしないといけない。
これにはプログラム自体を変えないといけない。
逆転させても動作が意味を持って反転するようにするには、プログラムはパイプライン
処理の構造かあるいはスタックの構造をしていないといけないと思う。
パイプラインにA-B-C-Dという流れが入力された時、クロックはそのままで
(あるいはクロックの位相を変えて)反転動作をする「スイッチ」を入れれば
動作は行われたと通りを逆に行うはず。
それが非常に長い時間の動作を逆に行うことができるとしたら、非常に長いパイプライン
を持った構造になるだろう。
もしもこの世の時間を戻すことができるとしたら、世の中の全ての現象はパイプライン状
に起きているはず。それは全ての現象が一意的に最初から決まっていることになる。