絵の描き方 3: 行列の掛け算

ストリング図:

  • 行列の掛け算は反図式順なので、右から左に描いてみた。

行列の掛け算:

  • $`a\in X`$ と $`c\in Z`$ を固定して、$`h`$ の $`c`$行$`a`$列成分 $`h(c\leftarrow a) = h_a^c`$ を計算する。
  • 赤いグニョグニョ矢印に沿って、$`y\in Y`$ を同時並行に走らせる。
  • $`y`$ ごとに積 $`f[c\leftarrow y]\, g[y\leftarrow a]`$ を計算
  • 積を全部足す i.e. 積和の計算

ストランド図:

  • $`a\in X`$ から出るストランドと、$`c\in Z`$ に入るストランドが、$`Y`$ 上でうまく繋がるかを見る。
  • 赤いグニョグニョ矢印に沿って、$`y \in Y`$ を走らせる。
  • $`y`$ ごとに、ストランドが中継されているかを見る。
  • ブーリアン係数なら、$`y`$ の左右にストランドがあれば、その時点で値 1 として終わってよい。

数式:

  • 図を写し取っただけ。
  • ブーリアンなら、論理の普通の書き方で $`h(a, c) \equiv \exists y\in Y.\, f(a, y)\land g(y, c)`$
  • 関係の話なら、$`f`$-関係と$`g`$-関係を仲介する誰かがいれば、$`h`$-関係にある。「友達の友達は友達だ」論法。


  1. 絵の描き方
  2. 絵の描き方 2: 基本の描画法
  3. 絵の描き方 3: 行列の掛け算
  4. 絵の描き方 4: テンソルの縮約