半加群の二重圏
A, Bが半環、Mが(A, B)-両側半加群であるとき、M:A→B と書く。M:A→B, N:B→Cに対して、Bに関するテンソル積をM※BNとすると、これは(A, C)-両側半加群になる。このテンソル積を結合として、半環上の両側半加群の圏ができる。半環Aの恒等射は、A:A→A とA自身を(A, A)上の両側半加群とみなしたものである。
半加群(A, B, M)と(C, D, N)に対して、φ:A→C, ψ:B→D、f:M→N が適切な条件を満たすとき、半加群の準同型とする。準同型f:M⇒Nは、2-セルと考える。
境界関手D0, D1:Semimod→Semiringを、D0(M)=A(左係数半環), D1(M)=B(右係数半環)として、半環から半加群への持ち上げをI(A)=(A:A→A)とすると、二重圏が定義できる。二重圏のスター結合はテンソル積。二重圏には、半環と半加群の直積でモノイド積が入る。
半環をブール代数、半加群を加法的ベキ等として、さらに次の構造を入れる。
このとき、次の対応があるだろう。
- 状態空間 : ブール代数
- 状態空間の領域 : ブール代数の元
- プログラム : 半加群
- プログラムの実行 : 半加群の元
- プレガード : 左スカラー乗法
- ポストガード : 右スカラー乗法
- 非決定性選択 : 加法
- 順次結合 : テンソル積
- 状態空間の直和 : 半加群の直積
乗法を反対にした反対半環A○を利用して、dualizer反変関手を定義できる。homsetであるSMod(A, A)をSMod[A]と書くと、indexed categoryが作れる。係数半環の制限や拡張も定義できる。このへんの事はいずれ書く。