「データの性質について考える」において僕は「イミュータブルのススメ」みたいなことを書いてますが、一方で、不純な計算が大好きなので状態遷移モデルもよく使います。
なんらかのデータインスタンスの集合Xがあったとき、このデータ領域Xがイミュータブルだとかミュータブルだとかは、どのように表現すればいいのでしょうか? ひとつの方法は、台集合(underlying set)をXとする余代数を考えることです。自明な余代数(余演算が恒等射)がイミュータブルなデータ領域に対応します。
余代数も悪くはないですが、どうも持って回った感じがします。ミュータビリティとか簡約可能性(reducibility)、導出可能性(drivability)のような性質はなんかホモトピカルな感じがします。データにより構成される空間の幾何学的な性質に思えるのです。
データと計算の話なので、扱う空間は離散的とします。離散を連続で“近似”して扱うこともありますが、とりあえず離散のまま扱いたい。また、計算では時間とか順番とかが問題になるので、離散空間と共に離散時間も含む枠組みが必要そうです。
ヴォエヴォドスキーやアウディのホモトピー型理論よりは、G3のホモトピー利用に近い話です。まとまった事を言えるわけもなく、とりとめもないハナシに過ぎません。
というマクラに続けて、とりとめもないハナシをダラダラ書こうかと思ったのですが、今日は外出するから、続きは後日(気分が変わらなければ)。
何を話題にしたいかと言うと; 状態遷移系とか項書換え系とかに関して、有向ホモトピーの離散版である離散基本圏(discrete fundamental category)を考えたら面白いか/つまらないか? とか、そんなことね。
以前、高次オートマトンのホモロジーを定義する話を読んだことがあるんですが、これは面白くなかったです。ホモロジー関手の値は可換群ですが、計算モデルは非可換な部分が本質だったりするので、可換化しちゃうと情報が失われて、たいして役に立たないのじゃないのかなー、と思いました。係数もZ2くらいしか使えないし。
時間や順番の概念が入った対象物は、可換化のような細工をしないで、そのまま非可換な情報を取り出さないとダメなのじゃないでしょうか。つまり、ホモロジカルな構造じゃなくてホモトピカルな構造を直接的に扱うほうが良さそう。