回答:
標準的なそのようなカテゴリはありません。同じ理由で、計算の標準的なカテゴリはありません。ただし、データ構造には大きくて有用な代数構造があります。
それでもなお有用である、より一般的なこのような構造の1つは、組み合わせ種の理論です。種はファンクタ。ここで、Bは有限集合とそれらの間の全単射のカテゴリです。種は、抽象的な場所のセットによってインデックス付けされた構造のファミリーであると考えることができます。これは、B上の機能性を説明します-そのようなファミリは、抽象ラベルの名前変更に関して不変でなければなりません。次に、種の計算は基本的に機能レベルで関数メソッドを生成し、カウントではなくデータ構造のセットを生成します。
この理論がプログラミング言語で実装されているのを見るには、Brent YorgeyのHaskell Symposium論文、Species and functors and types、oh my!。セージには種のパッケージもあると思いますが、もちろんプログラミングではなくコンピュータ代数を対象としています。
実際、プログラミングでより有用な同型とは異なる概念があります。これは「振る舞いの等価性」(「観測的等価性」とも呼ばれます)と呼ばれ、全単射ではなくデータ構造間の「シミュレーション関係」を与えることによって確立されます。代数論者がやって来て、コンピュータサイエンスの「代数データ型」と呼ばれる領域を確立しました。そこで、同型と初期代数をしばらくの間押しました。最終的に、コンピューター科学者は、彼らが誤解されていることに気づきました。これらの問題について語る良い論文は、SannellaとTarleckiによる 「観測的等価性と代数的仕様について」です。
論理関係とシミュレーションに関するcstheoryの別の質問への回答を書きました。これは、コンピューターサイエンスにおけるシミュレーション関係のより一般的な歴史について語っています。あなたはそれを読んで、そこで与えられた参考文献をフォローアップすることを歓迎します。Reynoldsの「Craft of Programming」の第5章は特に啓発的です。
代数オートマトン理論の教科書Holcombeによるは、次の興味深い引用があります(p。42)。
準同型と商に関係する他の多くの結果があります...それらは独立した代数的関心の対象ですが、オートマトンおよび関連分野の研究で特に有用であるとはまだ証明されていません。実際、機械の代数理論は、1つの重要な点で他の代数理論の方向とは異なります。しかし、オートマトン理論の重要性は、機械が「見える」ことではなく、「できること」です。 。2台のマシンが両方とも「同じことを行う」ことができる場合、非常に密接に関連していると見なしますが、代数的に同型ではない場合があります。
同型の概念をどのように強化/弱めることができるかを尋ねるのではなく、計算構造間の等価性の正しい概念は何ですか、この概念の基礎となる数学的な構造は何ですか?
構造の大きなファミリーの1つは、代数です。リスト、ツリー、オートマトン、有限および無限の両方の多様性などの構造は、代数として記述できます。その後、代数間の準同型または同型を調べることができます。
ただし、代数間の準同型でさえ、全体を語るわけではありません。シミュレーション、バイシミュレーション、その他の論理関係を調べると役立つ場合があります。代数的アプローチを厳密に好む場合(リレーショナルアプローチではなく)、ガロア接続は1つのオプションです。ここにいくつかの出発点があります。
免責事項:あなたの質問を理解したかどうかわかりません。2つのデータ構造間、または2つの「データ構造仕様」間の同型について説明しますか?(これらは抽象データ型と呼ばれることもあります。)
セルプローブモデルを検討すると、同型の概念が簡単に生じると思います。これは、セルプローブモデルが決定木による計算をモデル化するため、同型を定義するのが簡単だからです。セルプローブモデルは、データ構造の実装間の同型を考慮する場合と、データ構造の仕様を考慮する場合の両方に役立つと思います。
セルプローブモデルの詳細については、Miltersenの調査などを参照してください。(セルプローブの複雑さ:調査)
データ構造間で同型を定義する必要がある理由について詳しく説明する場合は、さらにヘルプを提供できる可能性があります。私にメッセージを送ってください。