このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

圏係数の行列計算とモノイド二重圏

圏を係数系とした行列/テンソルの計算をしたかった。だから、バレット&マッカイの2-ベクトル空間や圏群の話は、ちょうどいいタイミングだった。

バレット&マッカイでは、具体的な行列を使ってモノイド双圏を作っている。が、僕の興味としてはモノイド二重圏のほうがふさわしい。モノイド二重圏の一部にモノイド双圏は埋め込まれているし。

モノイド二重圏をうまく作るには、係数の圏Cが半環圏でなくてはならない。CからIso(C)を作ると弱い半環となっている。まずはこの弱い半環だけを使って行列計算する。K, L, M, Nなどは格子矩形だとする。格子矩形の全体に集合としての直和と直積を入れて、弱い半環にできる。特に直積に関して弱いモノイド構造を持つ。Iso(C)が作る弱い半環をRとしておく(Rは、Cと無関係に与えられる弱い半環でもよい)。

この状況で、MatR(K, L)は、矩形K×LにRの元を割り当てた行列(形式テンソル)だとする。A∈MatR(K, L)とB∈MatR(L, M)の積はRの半環構造から定義できる。ただし、Rが弱いので、圏の単位律と結合律も弱くなり、弱圏しか定義できない。骨格的部分弱圏をとれば圏にできるかもしれない。

2つの行列A:K→L、B:M→N に対して、A×B:K×M→L×N は(A×B)[(k, m), (l, n)] = A[k, l]×B[m, n] で定義できる。モノイド単位は矩形[1] = {1}である。

さらに、二重圏構造を定義するために、行列A:K→Lと行列B:M→Nを結ぶ2セルα::A⇒Bが必要になる。これは、格子K×Lと格子M×Nを両サイドとする二部グラフを考えて、二部グラフをシェープとするC係数カテグラフαを2セルとする。

2セルαの境界(dom, codに相当)と縦結合はカテグラフとしては自明に定義できる。問題は横結合。α::A⇒A':K→L,K'→L' とβ::B⇒B':L→M, L'→M' に対してα*β::A;B⇒A';B':K→M, K'→M' を合理的に定義すること。形式的な計算ならできそうな気がする。やってみるか。